“当前线程不在单线程单元中,因此无法实例化 ActiveX 控件……” 的解决办法

今天使用一个OCX控件,控件在form界面上,然后新线程启动form,却提示RT错误,后来发现解决办法为在此新线程的属性修改下即可:

            thd = new Thread(new ThreadStart(ShowForm2));
            thd.SetApartmentState(ApartmentState.STA);
            thd.IsBackground = true;
            thd.Start();

thd.SetApartmentState(ApartmentState.STA);

这样就可以将此线程设置为 STA类型的。


你可能感兴趣的:(“当前线程不在单线程单元中,因此无法实例化 ActiveX 控件……” 的解决办法)