描述:
请各位给一个简单而完整的例子来说明如何调用一个com组件的方法,要求不用mfc和atl。
解决方案1:
楼主,你的要求还是挺高的。
连ATL都不能使用。
#include "stdafx.h"
#include <atlbase.h>
#import "...\xx.dll" no_namespace
struct OleCom {
OleCom () { ::CoInitialize(NULL); }
~OleCom() { ::CoUninitialize(); }
} olecom;
int _tmain(int argc, _TCHAR* argv[])
{
CComPtr<IUnknown> spUnknown;
spUnknown.CoCreateInstance(__uuidof(Wage));
CComPtr<IWage> pI;
spUnknown.QueryInterface(&pI);
// pI->methods。。。
return 0;
}
我个人觉得使用atl还是很方便的。给你个参考。
如果是在vb中调用,那是更加方便的,就当普通对象来使用好了:)
CoIniliaze(NULL)
解决方案3: 调用COM组件和MFC、ATL关系很大嘛?
搜索一下前些天置顶的帖子,调用COM组件的N钟方法。在SDK中应该也是有效的。
这是一个很复杂的事情,最基本的函数是 CoCreateInstance(),如果是有界面的
COM 组件,建议你还是使用 ATL/MFC 吧。