有一个EXE COM服务器和一个EXE客户端,如何在首先运行了EXE COM服务器后,EXE客户端调用GetActiveObject返回成功??? 如题... 解决方案 » 免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货 后面的解决方法,是把代理类CTestServerDlgAutoProxy的下面几个函数搬到主对话框类实现。 DECLARE_DYNCREATE(CTestServerDlgAutoProxy) DECLARE_OLECREATE(CTestServerDlgAutoProxy) // Generated OLE dispatch map functions //{{AFX_DISPATCH(CTestServerDlgAutoProxy) afx_msg long TestFunction(); //}}AFX_DISPATCH DECLARE_DISPATCH_MAP() DECLARE_INTERFACE_MAP()不使用代理类,主对话框在构造函数中,进行下面的注册: EnableAutomation(); DWORD l_ulID; CLSID l_clsid; IUnknown* l_pUnk = GetControllingUnknown(); ::CLSIDFromProgID(L"TestServer.Application", &l_clsid); HRESULT hr = ::RegisterActiveObject(l_pUnk, l_clsid, ACTIVEOBJECT_WEAK, &l_ulID); 这样,当主对话框启动后,客户进程就直接GetActiveObject就可以了。 几个DLL是否可以共用.def文件? 我的串口通信线程有什么问题吗? 很郁闷的错误,请大家指教啊 请问哪位有《COM本质论》的电子书(中文版) 一个只能用自己的程序才能看到磁盘文件的问题 VC可以编写出适合VB调用的面向对象DLL吗? 请指教:如何实现OE的记录文件(*.wab)与自己的记录文件相互导入导出? 关于在VC 6.0下编译的问题! STL allocator源码问题 DLL出错,请帮忙 vc操作access问题 解决CStdioFile.ReadString读取中文产生乱码问题
//{{AFX_DISPATCH(CTestServerDlgAutoProxy)
afx_msg long TestFunction();
//}}AFX_DISPATCH
DECLARE_DISPATCH_MAP()
DECLARE_INTERFACE_MAP()不使用代理类,主对话框在构造函数中,进行下面的注册:
EnableAutomation();
DWORD l_ulID;
CLSID l_clsid;
IUnknown* l_pUnk = GetControllingUnknown();
::CLSIDFromProgID(L"TestServer.Application", &l_clsid);
HRESULT hr = ::RegisterActiveObject(l_pUnk, l_clsid, ACTIVEOBJECT_WEAK, &l_ulID); 这样,当主对话框启动后,客户进程就直接GetActiveObject就可以了。