Describe the bug
I added support for background tasks as described in the documentation: https://learn.microsoft.com/en-us/windows/apps/windows-app-sdk/applifecycle/background-tasks
It works for most users, but I am seeing a lot of crash reports (in the Partner Center) for all my apps published in the Microsoft Store that are using background tasks.
With WinAppSDK 1.7, it was mostly ACCESS_VIOLATION errors and they have been discussed in this issue (which for some reason has been moved to the microsoft/microsoft-ui-xaml repository).
Now, after upgrading to WinAppSDK 1.8, I am still seeing crashes (seemingly the same amount - way over 10.000 crashes per day!), but with error code STOWED_EXCEPTION. Since the amount of crashes exceeds the "devices affected", it looks like the crash is happening repeatedly for the same machines.
Here are some stack traces as reported by the Microsoft Partner Center:
STOWED_EXCEPTION_80004005_Microsoft.Windows.ApplicationModel.Background.UniversalBGTask.dll!_CallSettingFrame_LookupContinuationIndex
Frame Image Function
0 combase.dll RoOriginateLanguageException
1 Microsoft.Windows.ApplicationModel.Background.UniversalBGTask.dll winrt::hresult_error::originate
2 Microsoft.Windows.ApplicationModel.Background.UniversalBGTask.dll `winrt::to_hresult'::`1'::catch$23
3 Microsoft.Windows.ApplicationModel.Background.UniversalBGTask.dll _CallSettingFrame_LookupContinuationIndex
4 Microsoft.Windows.ApplicationModel.Background.UniversalBGTask.dll __FrameHandler4::CxxCallCatchBlock
5 ntdll.dll RcFrameConsolidation
6 Microsoft.Windows.ApplicationModel.Background.UniversalBGTask.dll winrt::to_hresult
7 Microsoft.Windows.ApplicationModel.Background.UniversalBGTask.dll `winrt::impl::root_implements_winrt::Microsoft::Windows::ApplicationModel::Background::UniversalBGTask::factory_implementation::Task,winrt::Windows::Foundation::IActivationFactory_::NonDelegatingGetTrustLevel'::`1'::catch$0
8 Microsoft.Windows.ApplicationModel.Background.UniversalBGTask.dll _CallSettingFrame_LookupContinuationIndex
9 Microsoft.Windows.ApplicationModel.Background.UniversalBGTask.dll __FrameHandler4::CxxCallCatchBlock
10 ntdll.dll RcFrameConsolidation
11 Microsoft.Windows.ApplicationModel.Background.UniversalBGTask.dll winrt::impl::produce_winrt::Microsoft::Windows::ApplicationModel::Background::UniversalBGTask::implementation::Task,winrt::Windows::ApplicationModel::Background::IBackgroundTask_::Run
12 biwinrt.dll Windows::ApplicationModel::Background::CBackgroundTaskInstance::RunInternal
13 biwinrt.dll Windows::ApplicationModel::Background::CBackgroundTaskInstance::Run
14 twinapi.appcore.dll Windows::ApplicationModel::Core::BackgroundTaskWrapper::ThreadProc
15 ntdll.dll TppWorkpExecuteCallback
16 ntdll.dll TppWorkerThread
17 kernel32.dll BaseThreadInitThunk
18 ntdll.dll RtlUserThreadStart
STOWED_EXCEPTION_80004002_Microsoft.Windows.ApplicationModel.Background.UniversalBGTask.dll!winrt::Microsoft::Windows::ApplicationModel::Background::UniversalBGTask::implementation::Task::Run
Frame Image Function
0 combase.dll RoOriginateLanguageException
1 Microsoft.Windows.ApplicationModel.Background.UniversalBGTask.dll winrt::hresult_error::originate
2 Microsoft.Windows.ApplicationModel.Background.UniversalBGTask.dll winrt::hresult_no_interface::hresult_no_interface
3 Microsoft.Windows.ApplicationModel.Background.UniversalBGTask.dll winrt::Microsoft::Windows::ApplicationModel::Background::UniversalBGTask::implementation::Task::Run
4 Microsoft.Windows.ApplicationModel.Background.UniversalBGTask.dll winrt::impl::produce_winrt::Microsoft::Windows::ApplicationModel::Background::UniversalBGTask::implementation::Task,winrt::Windows::ApplicationModel::Background::IBackgroundTask_::Run
5 biwinrt.dll Windows::ApplicationModel::Background::CBackgroundTaskInstance::RunInternal
6 biwinrt.dll Windows::ApplicationModel::Background::CBackgroundTaskInstance::Run
7 twinapi.appcore.dll Windows::ApplicationModel::Core::BackgroundTaskWrapper::ThreadProc
8 ntdll.dll TppWorkpExecuteCallback
9 ntdll.dll TppWorkerThread
10 kernel32.dll BaseThreadInitThunk
11 ntdll.dll RtlUserThreadStart
STOWED_EXCEPTION_80004005_Microsoft.Windows.ApplicationModel.Background.UniversalBGTask.dll!Unknown
Frame Image Function
0 combase.dll RoOriginateLanguageException
1 Microsoft.Windows.ApplicationModel.Background.UniversalBGTask.dll -
2 Microsoft.Windows.ApplicationModel.Background.UniversalBGTask.dll -
3 Microsoft.Windows.ApplicationModel.Background.UniversalBGTask.dll -
4 Microsoft.Windows.ApplicationModel.Background.UniversalBGTask.dll -
5 ntdll.dll RcFrameConsolidation
6 Microsoft.Windows.ApplicationModel.Background.UniversalBGTask.dll -
7 Microsoft.Windows.ApplicationModel.Background.UniversalBGTask.dll -
8 Microsoft.Windows.ApplicationModel.Background.UniversalBGTask.dll -
9 Microsoft.Windows.ApplicationModel.Background.UniversalBGTask.dll -
10 ntdll.dll RcFrameConsolidation
11 Microsoft.Windows.ApplicationModel.Background.UniversalBGTask.dll -
12 biwinrt.dll -
13 biwinrt.dll -
14 twinapi.appcore.dll Windows::ApplicationModel::Core::BackgroundTaskWrapper::ThreadProc
15 ntdll.dll TppWorkpExecuteCallback
16 ntdll.dll TppWorkerThread
17 kernel32.dll BaseThreadInitThunk
18 ntdll.dll RtlUserThreadStart
STOWED_EXCEPTION_800706ba_Microsoft.Windows.ApplicationModel.Background.UniversalBGTask.dll!winrt::Microsoft::Windows::ApplicationModel::Background::UniversalBGTask::implementation::Task::Run
Frame Image Function
0 combase.dll RoOriginateLanguageException
1 Microsoft.Windows.ApplicationModel.Background.UniversalBGTask.dll winrt::hresult_error::originate
2 Microsoft.Windows.ApplicationModel.Background.UniversalBGTask.dll winrt::hresult_error::hresult_error
3 Microsoft.Windows.ApplicationModel.Background.UniversalBGTask.dll winrt::throw_hresult
4 Microsoft.Windows.ApplicationModel.Background.UniversalBGTask.dll winrt::Microsoft::Windows::ApplicationModel::Background::UniversalBGTask::implementation::Task::Run
5 Microsoft.Windows.ApplicationModel.Background.UniversalBGTask.dll winrt::impl::produce_winrt::Microsoft::Windows::ApplicationModel::Background::UniversalBGTask::implementation::Task,winrt::Windows::ApplicationModel::Background::IBackgroundTask_::Run
6 biwinrt.dll Windows::ApplicationModel::Background::CBackgroundTaskInstance::RunInternal
7 biwinrt.dll Windows::ApplicationModel::Background::CBackgroundTaskInstance::Run
8 twinapi.appcore.dll Windows::ApplicationModel::Core::BackgroundTaskWrapper::Run
9 twinapi.appcore.dll Windows::ApplicationModel::Core::BackgroundTaskWrapper::ThreadProc
10 ntdll.dll TppWorkpExecuteCallback
11 ntdll.dll TppWorkerThread
12 kernel32.dll BaseThreadInitThunk
13 ntdll.dll RtlUserThreadStart
NuGet package version
Windows App SDK 1.8.1: 1.8.250916003
Packaging type
Packaged (MSIX)
Windows version
Windows 11 version 24H2 LTSC (26100, June Update)
IDE
Visual Studio 2022
Additional context
Crashes happen on various Windows versions, e.g. Windows 11 10.0.26100, Windows 11 10.0.22631, Windows 10 10.0.19045, ...
Describe the bug
I added support for background tasks as described in the documentation: https://learn.microsoft.com/en-us/windows/apps/windows-app-sdk/applifecycle/background-tasks
It works for most users, but I am seeing a lot of crash reports (in the Partner Center) for all my apps published in the Microsoft Store that are using background tasks.
With WinAppSDK 1.7, it was mostly
ACCESS_VIOLATIONerrors and they have been discussed in this issue (which for some reason has been moved to themicrosoft/microsoft-ui-xamlrepository).Now, after upgrading to WinAppSDK 1.8, I am still seeing crashes (seemingly the same amount - way over 10.000 crashes per day!), but with error code
STOWED_EXCEPTION. Since the amount of crashes exceeds the "devices affected", it looks like the crash is happening repeatedly for the same machines.Here are some stack traces as reported by the Microsoft Partner Center:
NuGet package version
Windows App SDK 1.8.1: 1.8.250916003
Packaging type
Packaged (MSIX)
Windows version
Windows 11 version 24H2 LTSC (26100, June Update)
IDE
Visual Studio 2022
Additional context
Crashes happen on various Windows versions, e.g. Windows 11 10.0.26100, Windows 11 10.0.22631, Windows 10 10.0.19045, ...