我有一个带有2个表单的vb windows应用程序,其中form2是从form1使用调用的 form2.showdialog()
我向form2添加了一个Web浏览器控件,我在调用form2时遇到以下错误:
在进行OLE调用之前,必须将当前线程设置为单线程单元(STA)模式。确保您的Main函数标记了STAThreadAttribute。
我试过了: 1)将STAThread()添加到form_load() 2)我在我的应用程序中添加了一个模块,并创建了一个子main(),并应用了STAThread属性 3)我用STAThread()
标记了子启动()这一切都没有帮助。
有关如何解决此问题的任何提示?
谢谢, RCPG
答案 0 :(得分:1)
如果您使用表单项目模板并且未在项目设置中更改任何内容,则无法控制主函数 - 编译器将为您生成一个具有STAThread的函数。
您是否在类型具有SynchronizingObject属性且忘记为其分配同步对象的表单中创建了一些对象(如Timer)?