Closed danielchalmers closed 4 years ago
If SynchronizationContext.Current is null, VirtualDesktopProvider.Initialize will throw an InvalidOperationException: 'The current SynchronizationContext may not be used as a TaskScheduler.' at
SynchronizationContext.Current
VirtualDesktopProvider.Initialize
InvalidOperationException: 'The current SynchronizationContext may not be used as a TaskScheduler.'
https://github.com/Grabacr07/VirtualDesktop/blob/a6aba7088e6967e7ae81584bf16e9ae6e3bb4c96/source/VirtualDesktop/VirtualDesktopProvider.cs#L28-L29
This stops a blank console app from using VirtualDesktop.
Steps to reproduce:
VirtualDesktopProvider.Default.Initialize()
VirtualDesktop.GetDesktops()
Workaround: Call SynchronizationContext.SetSynchronizationContext first or use Initialize(TaskScheduler scheduler).
SynchronizationContext.SetSynchronizationContext
Initialize(TaskScheduler scheduler)
If
SynchronizationContext.Current
is null,VirtualDesktopProvider.Initialize
will throw anInvalidOperationException: 'The current SynchronizationContext may not be used as a TaskScheduler.'
athttps://github.com/Grabacr07/VirtualDesktop/blob/a6aba7088e6967e7ae81584bf16e9ae6e3bb4c96/source/VirtualDesktop/VirtualDesktopProvider.cs#L28-L29
This stops a blank console app from using VirtualDesktop.
Steps to reproduce:
VirtualDesktopProvider.Default.Initialize()
(or a method that calls it for you likeVirtualDesktop.GetDesktops()
).Workaround:
Call
SynchronizationContext.SetSynchronizationContext
first or useInitialize(TaskScheduler scheduler)
.