我有以下静态函数导出从外部应用程序调用
[DllExport("Initialize", CallingConvention = CallingConvention.StdCall)]
public static void OnStartUp1( )
{
try
{
a = new Indicator();
a.Init();
}
catch (Exception e)
{
MessageBox.Show(e.ToString());
}
}
当我使用并从.NET调用此方法时,另一个应用程序运行良好但是当我从外部应用程序调用它时,我为它构建此函数会返回以下异常:
System.InvalidOperationException:DragDrop注册失败。 ---> System.Threading.ThreadStateException:在进行OLE调用之前,必须将当前线程设置为单线程单元(STA)模式。确保您的Main函数标记了STAThreadAttribute。
答案 0 :(得分:1)