佚名通过本文主要向大家介绍了请教word高手,请教高手,请教电脑高手,请教老年人如何壮阳,请教的意思等相关知识,希望对您有所帮助,也希望大家支持linkedu.com www.linkedu.com
问题: 请教Com高手
描述:
解决方案1:
描述:
我用atl写了一个com组件,在vb中调用没有问题
可是在vc写的console程序中调用出现实时错误,
调用代码如下:
#import "E:\bt\atl1\Debug\atl1.dll" no_namespace
void main()
{
CoInitialize(NULL);
ITestPtr pTest = NULL ;
pTest.CreateInstance(__uuidof(ITest));
pTest->Get1();
CoUninitialize();
}
我发现pTest在创建实例后是NULL,不知什么原因,请高手指点!
解决方案1:
CoInitialize(NULL);
//让ITestPtr 的析构函数在CoUninitialize()之前被调用。否则CoUninitialize()被调用
//COM库的舞台都没有,再在ITestPtr 的析构函数中去调Release()就-------出错
{
ITestPtr pTest = NULL ;
pTest.CreateInstance(__uuidof(ITest));
pTest->Get1();
}
CoUninitialize();