zoukankan      html  css  js  c++  java
  • 解决当前线程不在单线程单元中,因此无法实例化 ActiveX 控件的办法

    当前线程不在单线程单元中,因此无法实例化 ActiveX 控件“6bf52a52-394a-11d3-b153-00c04f79faa6”。
    抛出未处理 ThreadException
     给Main函数加上[STAThread]特性

     [STAThread]
      static void Main()
      {
       //

      }
    解释[STAThread]
    STAThread:Single     Thread     Apartment Thread.(单一线程单元线程)
    []是用来表示Attributes;

    [STAThread]
    是一种线程模型,用在程序的入口方法上(在C#和VB.NET里是Main()方法),来指定当前线程的ApartmentState 是STA。用在其他方法上不产生影响。在aspx页面上可以使用AspCompat = "true" 来达到同样的效果。这个属性只在  Com  Interop  有用,如果全部是  managed  code  则无用。简单的说法:[STAThread]指示应用程序的默认线程模型是单线程单元 (STA)。启动线程模型可设置为单线程单元或多线程单元。如果未对其进行设置,则该线程不被初始化。也就是说如果你用的.NET Framework,并且没有使用COM Interop,一般不需要这个Attribute。其它的还有MTA(多线程套间)、Free  Thread(自由线程)。

    另外多线程是 (MTAThread )

    http://www.cnblogs.com/huashanlin/archive/2007/07/07/809305.html
    http://blog.csdn.net/nyzhl/archive/2008/10/16/3084910.aspx

  • 相关阅读:
    [ios]blocks
    [算法] 堆,栈 【转】
    [ios]关于内存错误调试
    [ios]get,post请求 【转】
    [ios]iOS模拟器应用程序目录结构
    [ios]iPhone地图应用开发以及自定义Annotation [转]
    [算法]插入排序
    [ios]让alertView 自动消失【转】
    [ios]延迟执行方法,取消执行方法
    [算法] 基数排序
  • 原文地址:https://www.cnblogs.com/sendling/p/1442483.html
Copyright © 2011-2022 走看看