请问
DllMain () 里面 "不适合" 调用 COM DCOM 吗 ??我把以下写在 DllMain () 里面 , 结果发现问题很多CoInitialize(NULL);
_testPtr ptr = NULL
ptr.CreateInstance(__uuidof(test); (1) 如果是 ActiveX.EXE ( DCOM ) 放在 DllMain () 里面启动 ---> 会出现伺服器忙碌中, 然後卡在那裏 (2) 如果是 ActiveX.DLL ( DCOM ) 放在 DllMain () 里面启动 ---> 接下来只要某个
__declspec(dllexport) int WINAPI xxxx() 里面呼叫到其他 COM 之类的 --->
程式就会当掉只要不在 DllMain () 里面调用 COM
"改在" __declspec(dllexport) int WINAPI xxxx() 里面调用
则就不会有 (1)(2) 的问题
==========
我的 COM. DCOM 都是用 VB6 写的 , 用 VB6 调用完全没问题
DllMain () 里面 "不适合" 调用 COM DCOM 吗 ??我把以下写在 DllMain () 里面 , 结果发现问题很多CoInitialize(NULL);
_testPtr ptr = NULL
ptr.CreateInstance(__uuidof(test); (1) 如果是 ActiveX.EXE ( DCOM ) 放在 DllMain () 里面启动 ---> 会出现伺服器忙碌中, 然後卡在那裏 (2) 如果是 ActiveX.DLL ( DCOM ) 放在 DllMain () 里面启动 ---> 接下来只要某个
__declspec(dllexport) int WINAPI xxxx() 里面呼叫到其他 COM 之类的 --->
程式就会当掉只要不在 DllMain () 里面调用 COM
"改在" __declspec(dllexport) int WINAPI xxxx() 里面调用
则就不会有 (1)(2) 的问题
==========
我的 COM. DCOM 都是用 VB6 写的 , 用 VB6 调用完全没问题
解决方案 »
- 各位大虾,偶有一句语句看不懂 请问一下??谢谢
- 有一个VC编程的工作等着你,月薪3000-5000
- 要求显示贴图是否其主类一定为视窗(文档)类??
- 关于CHtmlView请教!
- 如何在开机时自动将某个图片设置为桌面?(过几天就是4月1号了,准备做一个这样的小程序:-))还望哪位兄台能指点..
- 谁能给个保存对话框数据的例子啊,下次程序打开时对话框有上次输入的数据?
- 如何判斷操作系統是簡體的還是繁體的,或者是其他操作系統?
- 有那位兄弟知道,这个界面是怎样实现的
- 急需:EXECL的格式读写源代码,送高分
- 如何导出基于对话框的动态链接库?
- CHtmlView::Navigate2()无法打开本地网页和在线网页(在**view显示不出来【**view基于CHtmlView】,只会刷新几次)
- 如何实现?
可以告之 MSDN 的 相关URL 吗
我只找到1个说法
===================
记得很久以前在一本叫advanced windows programming 的书上看到的,在DLLMain函数中不能启动线程,原因是:OS对DLLMain的调用是序列化的(或者叫串行化),启动线程时系统要调用 DLLMain,传给它DLL_THREAD_ATTACH 参数,而你在DLLMain中启动线程,由于串行化的关系,系统无法再次调用DLLMain,发生死锁。
===================
你看看这篇文章吧:
http://hi.baidu.com/bxwpz/blog/item/6b5a8f1e01cfcaf2e1fe0bc0.html