64,683
社区成员
发帖
与我相关
我的任务
分享
STDMETHODIMP CFirst_ATL::AddNumbers(long Num1, long Num2, long *ReturnVal)
{
// TODO: Add your implementation code here
*ReturnVal=Num1+Num2;
return S_OK;
}
#include <iostream>
#include "Simple_ATL.h"
//#include "Simple_ATL_i.c"
using namespace std;
//下面是Simple_ATL_i.c中的值
const IID IID_IFirst_ATL = {0x90E29DD6,0xE5D1,0x4984,{0x90,0x15,0x42,0x3A,0xC9,0x0F,0x45,0x53}};
const CLSID CLSID_First_ATL = {0xC4E7C71F,0xFDFA,0x4879,{0x96,0xB5,0xD6,0x06,0x48,0xC8,0x57,0xB9}};
int main()
{
HRESULT hr;
IFirst_ATL *IFirstATL=NULL;
//初始化COM
hr=CoInitialize(0);
if (SUCCEEDED(hr))
{
hr=CoCreateInstance(CLSID_First_ATL,NULL,CLSCTX_INPROC_SERVER,IID_IFirst_ATL,(void **)&IFirstATL);
if (SUCCEEDED(hr))
{
long ReturnValue;
IFirstATL->AddNumbers(5,7,&ReturnValue);
cout<<ReturnValue<<endl;
IFirstATL->Release();
}
else
{
cout << "CoCreateInstance Failed." << endl; //为什么总是报错
}
}
else
{
cout << "CoInitialize Failed." << endl;
}
//释放COM
CoUninitialize();
return 0;
}