各位大虾:
我在一个outproc COM中有两个方法:
start()
stop()
start()方法启动一个线程;stop()方法中止这个线程;
我希望在应用程序中调用这两个方法:
1.调用start()方法,然后应用程序退出,COM继续运行;
2.直到调用stop()方法,COM停止运行。
CMycom:IMycom
{
...
}
CMycom::start()
{
id = _thread(..., mythreadproc , ) ;
}
CMycom::stop()
{
_endthread( id );
}
main函数如下:
main()
{
CoInitialize() ;
//create a COM interface pointer;
IMycom *myCom = CoCreateInstance(...);myCom->start() ;CoUninitialize() ;
}当应用程序退出,COM似乎也中断了start方法中的线程,退出了;
我希望COM能够不退出,继续运行这个线程,该怎么办?有能给予帮助者,再给100分!
谢谢!
我在一个outproc COM中有两个方法:
start()
stop()
start()方法启动一个线程;stop()方法中止这个线程;
我希望在应用程序中调用这两个方法:
1.调用start()方法,然后应用程序退出,COM继续运行;
2.直到调用stop()方法,COM停止运行。
CMycom:IMycom
{
...
}
CMycom::start()
{
id = _thread(..., mythreadproc , ) ;
}
CMycom::stop()
{
_endthread( id );
}
main函数如下:
main()
{
CoInitialize() ;
//create a COM interface pointer;
IMycom *myCom = CoCreateInstance(...);myCom->start() ;CoUninitialize() ;
}当应用程序退出,COM似乎也中断了start方法中的线程,退出了;
我希望COM能够不退出,继续运行这个线程,该怎么办?有能给予帮助者,再给100分!
谢谢!
解决方案 »
- 关于vc与Google Earth 之间的数据交互?
- 可愁死我了,快进来帮帮我````````````多文档中自定义对话的问题
- 两个问题:1.如何判断本机有没有指定的文件夹?比如:判断本机有没有foxmail文件夹。2.如何不使用MFC中的CFile,而用基本的FILE等操作来
- Window Procedure Subclassing?
- 请教一个安装程序过程中重新启动系统的问题!!!
- 谁知道vodx是什么格式文件,回复就给分,
- visiual studio installer的UNINSTALL怎么加入菜单
- 请问那里可以找到sniffer呀?
- 有趣的问题------三维建模!高手请进...
- 在对话中为控件添加背景图片问题?
- 关于BSTR的使用
- ★★求List Control的操作实例!!★★
不过,可能大家没有明白我的意思:
我在一个应用程序中调用com的一个方法,然后退出,希望此方法中创建的线程继续运行;
而且我不能在应用程序中等待线程退出,只能启动线程然后马上退出;
由另一个程序来调用stop方法中止线程。
然后直到我调用另外一个方法,中止服务。希望 fanfyj(程序员小范) 及各位大虾,不吝指教。
或用ColockObjectExternal锁住对象,我用的这个
我现在在一个console程序里面调用COM接口,已经实现了以上功能,
就是把COM做成service类型的;
但是,如果把console程序作为cgi程序,通过网页调用,程序退出,COM里面的线程好像又被中止了!
不知是什么原因?请大家再指点一下。
就是使用NT Service,让COM一直在运行,就可以了。
谢谢各位热心帮助!
人人有份!