Мне нужно написать приложение, которое вызывает функцию обратного вызова из неуправляемой библиотеки DLL.В приложении Windows Form функция обратного вызова работает, когда [STAThread]
заменяется на [MTATread]
следующим образом.
[MTAThread]
static void Main()
{
Application.EnableVisualStyles();
Application.SetCompatibleTextRenderingDefault(false);
Application.Run(new MainWindow());
}
Ниже приведены сегменты кода:
//callback function from unmanaged dll
[UnmanagedFunctionPointer(CallingConvention.Winapi)]
public delegate void funNoteInfoCallback(parameters ...);
//calling from MainWindow:
//Initialize and assignement:
funNoteInfoCallback noteInfoCallBakCallback;
noteInfoCallBakCallback = MyOnCallBackNotesInfo;
private static void MyOnCallBackNotesInfo(parameters ...)
{
//do some stuff
}
//Calling function:
SetNoteInfoCallback(handle, noteInfoCallBakCallback, Handle);
Мое приложение написаноиспользуя WPF и есть ли способ сделать функцию обратного вызова вызванной.