Попытка добавить мой обработчик события в ComponentDispatcher.ThreadPreprocessMessage
событие, например:
using System;
using System.Windows.Interop;
namespace ConsoleApplication1
{
class Program
{
static void Main(string[] args)
{
new Cc();
}
}
public class Cc
{
public Cc()
{
ComponentDispatcher.ThreadPreprocessMessage += Method;
}
~Cc()
{
ComponentDispatcher.ThreadPreprocessMessage -= Method;
}
private void Method(ref MSG msg, ref bool handled)
{
}
}
}
И когда я его запускаю, я получаю это исключение в деструкторе:
НеобработанныйИсключение: System.InvalidOperationException: хранилище LocalDataStoreSlot освобождено.
Что вызывает это и как его исправить?