Vb.net 如果应用程序包含实现IDisposable的对象,则需要stathread属性

Vb.net 如果应用程序包含实现IDisposable的对象,则需要stathread属性,vb.net,Vb.net,我正在研究一些Windows窗体应用程序,它们没有用户界面,并且在主线程上方没有STA-Thread()属性 我还没有创建用于这些应用程序的COM组件 我已经阅读了以下线程:。Bruce说:“单元线程是一个COM概念;如果你不使用COM,并且你调用的API中没有一个使用COM“隐藏”。有没有办法找出类是否使用COM:“隐藏” 在过去,我只想看看类是否实现了IDisposable,例如SQLConnection实现了IDisposable,因此它必须包含非托管资源,例如COMcomponents

我正在研究一些Windows窗体应用程序,它们没有用户界面,并且在主线程上方没有STA-Thread()属性

我还没有创建用于这些应用程序的COM组件

我已经阅读了以下线程:。Bruce说:“单元线程是一个COM概念;如果你不使用COM,并且你调用的API中没有一个使用COM“隐藏”。有没有办法找出类是否使用COM:“隐藏”

在过去,我只想看看类是否实现了IDisposable,例如SQLConnection实现了IDisposable,因此它必须包含非托管资源,例如COMcomponents


可以安全地说,如果Windows应用程序或控制台应用程序引用了实现IDisposable的对象,那么主线程应该在其上方包含STAThread属性吗?

IDisposable
不一定是COM使用情况的指示。可能您所能做的就是运行时检查,因为COM通常很晚才运行und.@roger_rowland,谢谢。您能澄清一下运行时检查的意思吗?Reflector?不是Reflector,而是sysinternals process explorer,以查看加载了哪些模块。请查找COM DLL或OCX。