急求进程外COM自动退出问题
用的是VC6.0的ATL COM AppWizard实现了一个进程外COM组件,里面含一个接口IServer,IServer中有一个函数StartService(),里面没有做任何事情。
然后用下面的代码调用这个组件,执行到g_pIServer.Release();设断点不执行
,若干时间后进程外COM组件的进程自动退出。
急求高手指教,在我调用这个组件的程序中并未释放此组件句柄,为何其自动退出?
#import "..\testcom\testcom.tlb " no_namespace
IServerPtr g_pIServer=NULL; //接口
void main()
{
// 初始化
HRESULT hr = CoInitialize(NULL);
if(FAILED(hr))
{
return ;
}
// 创建COM对象
hr = g_pIServer.CreateInstance(__uuidof(Server));
if(FAILED(hr))
{
CoUninitialize();
return ;
}
int nResult = g_pIServer-> StartService();
g_pIServer.Release();//这句设断点,不执行
CoUninitialize();
return ;
}
[解决办法]
Com暂时不会..嘿嘿~
[解决办法]
GZ
[解决办法]
UP ~
学习!
[解决办法]
为什么接口指针要设成全局变量?
IServerPtr g_pIServer=NULL; //接口
将其放入void main()
{
// 初始化
HRESULT hr = CoInitialize(NULL);
之后试试...