一个异常研究InvalidApartmentStateChange
微软资料:invalidApartmentStateChange MDA
文章:C# ApartmentState 枚举,指定线程单元状态
成员名称 | 说明 | |
---|---|---|
MTA |
Thread 将创建并进入一个多线程的单元。 |
|
STA |
Thread 将创建并进入一个单线程单元。 |
|
Unknown |
ApartmentState 未设置属性。 |
由于无法控制进程内服务器的加载或卸载顺序,因此不要从dllmain函数调用coInitialize、coInitializeEx或couninitialize。
Because there is no way to control the order in which in-process servers are loaded or unloaded,
do not call CoInitialize, CoInitializeEx, or CoUninitialize from the DllMain function.
CSDN介绍:在DLL中如何使用Coinitialize和CoUnitialize?
前辈总结:
1). 不要在dll中 初始化COM组件。因为你不知道 调用者 COM 模型是啥。当然多数是 apartment
2). 而且,根据你初始化代码使用的COM模型,调用 dllmain的 不一定是调用导出方法的调用者线程,CoInitialize 不一定生效。
最好让调用者初始化 com 环境,如果此dll的调用者也是个dll,见1)
一个异常研究InvalidApartmentStateChange的更多相关文章
- 吴恩达机器学习笔记54-开发与评价一个异常检测系统及其与监督学习的对比(Developing and Evaluating an Anomaly Detection System and the Comparison to Supervised Learning)
一.开发与评价一个异常检测系统 异常检测算法是一个非监督学习算法,意味着我们无法根据结果变量
- Python: 如何写一个异常
例子1 try: #test area function() except Exception, e: print e.message 例子2:用raise抛出一个异常 if bool_var is ...
- 从一个异常探索spring autowired 的原理
从一个异常探索autowired 的原理. 首先环境是这样的: public class Boss { @Autowired private Car car; } //@Component 加上这个注 ...
- Python面向对象之异常捕获(一)-----抛出一个异常
大部分的异常都继承自Exception这个类(而这个类有继承自BaseException这个类) 常见的异常 ValueError TypeError IndexError 抛出一个异常 下面这个类的 ...
- 如何开发一个异常检测系统:使用什么特征变量(features)来构建异常检测算法
如何构建与选择异常检测算法中的features 如果我的feature像图1所示的那样的正态分布图的话,我们可以很高兴地将它送入异常检测系统中去构建算法. 如果我的feature像图2那样不是正态分布 ...
- MVC默认提供了一个异常过滤器 HandleErrorAttribte特性
这一篇记录MVC默认提供了一个异常过滤器 HandleErrorAttribte,下一篇介绍自定义异常过滤特性. 参考引用:https://www.cnblogs.com/TomXu/archive/ ...
- 【记】研究Sharding-JDBC遇到的一个异常(Caused by: io.shardingsphere.core.exception.ShardingException: Cannot get uniformed table structure for `t`. The different meta data of actual tables are as follows)
一.异常信息 Caused by: io.shardingsphere.core.exception.ShardingException: Cannot get uniformed table str ...
- 配置Entity Framework连接Sql Server出现的一个异常
异常:The Entity Framework provider type 'System.Data.Entity.SqlServer.SqlProviderServices, EntityFrame ...
- hadoop异常: 到目前为止解决的最牛逼的一个异常(java.io.IOException: Incompatible clusterIDs)
(注意: 本人用的版本为hadoop2.2.0, 旧的版本和此版本的解决方法不同) 异常为: 9 (storage id DS-2102177634-172.16.102.203-50010-1384 ...
随机推荐
- iOS-UIButton分类扩展(封装)
UIButton+BackgroundColor.h #import <UIKit/UIKit.h> @interface UIButton (BackgroundColor) - (vo ...
- 金仓Kingbase数据库网页数据维护分析工具
金仓Kingbase是优秀的国产数据库产品,在能源,政务,国防等领域广泛使用, 现在TreeSoft数据库管理系统已支持Kingbase了,直接在浏览器中就可以操作查看Kingbase数据了,十分方便 ...
- 【搬运】NumPy_for_Matlab_Users
搬运自:http://scipy.github.io/old-wiki/pages/NumPy_for_Matlab_Users.html. 1.Introduction MATLAB和NumPy/S ...
- esigner中name和comment互換
1 PowerDesigner中批量根据对象的name生成comment的脚本 执行方法:Open PDM -- Tools -- Execute Commands -- Run Script Opt ...
- Python函数或者类的时间参数的默认值设为datetime.date.today()引起的问题
定义了函数def main(start_date=datetime.date.today(), end_date=datetime.date.today()): pass 函数在项目启动后, end_ ...
- Python 日志文件处理
今天想把 Python 项目中的日志 保存到文件中. 找到了方法.非常简单 https://www.cnblogs.com/nancyzhu/p/8551506.html 1. logging.bas ...
- [转帖]最佳 Linux 发行版汇总
最佳 Linux 发行版汇总 https://cloud.tencent.com/developer/article/1505186 以后说不定用的到. Linux入门 Ubuntu Ubuntu是一 ...
- [转帖]如何禁止VirtualBox虚拟机和物理机之间的时间同步
如何禁止VirtualBox虚拟机和物理机之间的时间同步 乐者为王 2014-11-02 706 阅读 http://ju.outofmemory.cn/entry/97301 验证了下 修改注册 ...
- php文件操作类
<?php /** *本类为文件操作类,实现了文件的建立,写入,删除,修改,复制,移动,创建目录,删除目录 * 列出目录里的文件等功能,路径后面别忘了加"/" */ clas ...
- rgba()和opacity的比较(转)
https://blog.csdn.net/u014150409/article/details/44906767