以下是我用的代码:
CoInitializeEx(0, COINIT_MULTITHREADED);
IUnknown * pUnk;
HRESULT hRes = CoCreateInstance (CLSID_AgentServer,
NULL,
CLSCTX_LOCAL_SERVER,
IID_IAgent,
(LPVOID*)&pUnk);
if((FAILED(hRes))
{
AfxMessageBox(L"Failed to CoCreateInstance");
return FALSE;
}
hRes = pUnk->QueryInterface(IID_IAgent,(LPVOID*)&pAgent);
if((FAILED(hRes))
{
AfxMessageBox(L"Failed to QueryInterface");
return FALSE;
}
pUnk->Release();
lCharID = 0;
同时也包含了相应的头文件,编译链接都通过了。
但是在调试的时候出现:"Failed to CoCreateInstance"错误。hRes返回的值是未注册的组件!!
可是以上代码确可以直接在windows桌面运行,在winCE下却运行不了!说明msagent组件在windows下已经注册,
在winCE下却未注册!
windows下msagent目录对应的路径是C:\WINDOWS\msagent,里面有很多dll文件,不知道那个是我想要的!
而且这些dll文件可以直接在winCE下注册吗?
5 个解决方案
#1
或者是msagent如何重写,这样我就可以直接在winCE下注册dll了。
#2
自己写注册表就行了
#3
hejoin(hejoin) ( ) 信誉:100 Blog 加为好友 2007-05-08 12:48:33 得分: 0
自己写注册表就行了
怎么样写注册表????
自己写注册表就行了
怎么样写注册表????
#4
DING
#5
老大,你要用的动态库都是桌面的程序,在wince下用必须用evc重新编译生成,你光一个运行程序怎么跑啊,你有动态库的源代码吗,没的话就去下载,要么自己写,不过目前来看,你要做到这步很麻烦。
#6
#1
或者是msagent如何重写,这样我就可以直接在winCE下注册dll了。
#2
自己写注册表就行了
#3
hejoin(hejoin) ( ) 信誉:100 Blog 加为好友 2007-05-08 12:48:33 得分: 0
自己写注册表就行了
怎么样写注册表????
自己写注册表就行了
怎么样写注册表????
#4
DING
#5
老大,你要用的动态库都是桌面的程序,在wince下用必须用evc重新编译生成,你光一个运行程序怎么跑啊,你有动态库的源代码吗,没的话就去下载,要么自己写,不过目前来看,你要做到这步很麻烦。