我调用一个com组件方法,可能是REMOTE_SERVER,也可能是LOCAL_SERVER,为同步调用,但该方法有可能死锁,我想中断它。
COM在异步调用里提供了ICancelMethodCalls接口,但在同步调用里没有,我寻找MSDN中,发现通过CoEnableCallCancellation这个API可以使线程环境能拥有ICancelMethodCalls接口。但我调用后,通过CoGetCancelObject依然得不到ICancelMethodCalls接口,请高手不吝赐教!
COM在异步调用里提供了ICancelMethodCalls接口,但在同步调用里没有,我寻找MSDN中,发现通过CoEnableCallCancellation这个API可以使线程环境能拥有ICancelMethodCalls接口。但我调用后,通过CoGetCancelObject依然得不到ICancelMethodCalls接口,请高手不吝赐教!
解决方案 »
- 如何在移动鼠标时在很多点中确定一个三角形。求算法!
- 升星星,散分分。。。[5]
- 请教如何实现一个中文输入法(比如清华紫光之类的)
- [InstallShield] 为什么卸载过程如此之长?
- 关于多线程编程
- 请问,如何用程序设置EXCEL文件一个单元格的格式,如确定小数位数,自动换行等?
- 怎么让鼠标移到一个位置(我事先指定的),给个Tip(提示),这个怎么实现?
- 怎样将BYTE型数组Array[n]转换CString变量strtemp??
- 怎么得到网卡的物理地址?netbios() 函数并不能成功!
- 请问,基于对话框的程序怎么连接sqlserver?
- 怎样改变QQ聊天窗口里richedit的输入内容
- 字符串编码的转换问题???
如果是你自己实现的接口,是不提供异步调用的。使用CoGetCancelObject只是取得CancelObject,而不能自动帮你生成。
你必须自己实现CancelObject的功能。
http://blog.csdn.net/loveghb/archive/2005/08/09/449349.aspx
希望对你有用。