.Net Com互操作创建实例速度慢

.Net Com互操作创建实例速度慢,.net,com,com-interop,.net,Com,Com Interop,我有一个.NET4应用程序,它使用Com Dll发送SMS消息。我使用TlbImp创建互操作程序集,这就是应用程序中引用的程序集 当我尝试创建这个类的实例时,需要很长的时间(2-5秒) 我在VS 2010中运行了性能配置文件,到目前为止花费时间最长的调用是System.Activator.CreateInstance() 我正在寻找有关如何使用Com互操作进行调试或获取信息的提示。您正在创建对象的线程是什么Com单元类型 若它是您的主应用程序线程,并且您并没有用标记标记您的主入口点,那个么您将在

我有一个.NET4应用程序,它使用Com Dll发送SMS消息。我使用TlbImp创建互操作程序集,这就是应用程序中引用的程序集

当我尝试创建这个类的实例时,需要很长的时间(2-5秒)

我在VS 2010中运行了性能配置文件,到目前为止花费时间最长的调用是System.Activator.CreateInstance()


我正在寻找有关如何使用Com互操作进行调试或获取信息的提示。

您正在创建对象的线程是什么Com单元类型

若它是您的主应用程序线程,并且您并没有用标记标记您的主入口点,那个么您将在MTA中运行。如果使用该属性,则线程将处于STA中。对于其他线程,可以在启动线程之前使用设置单元类型

如果您的COM对象注册的单元模型与您正在使用的不同,那么您将产生新线程/单元的开销,在另一个单元中创建对象,并且所有通信都是通过代理/存根进行的,而不是直接调用COM对象


这可能会导致一些性能问题。

不使用.net的情况下加载dll的时间是多少