请问在VC中如何调用本地的ActiveX Exe(就象VB中的CreateObject后调用一样)?已知条件:
VB生成的ActiveX Exe: ProgID="VBText.Text"
方法:function GetData(byref strIn as string) as string
采用方法:
?STDAPI CoCreateInstance(REFCLSID rclsid, LPUNKNOWN pUnkOuter, DWORD dwClsContext,
REFIID riid, LPVOID *ppv);
?HRESULT CoCreateInstanceEx(REFCLSID rclsid,IUnknown *punkOuter,DWORD dwClsCtx, COSERVERINFO *pServerInfo,
ULONG cmq,MULTI_QI *pResults);问题:
1、如何创建ActiveX Exe对象?如果采用CoCreateInstance,riid通过何种方法获得(就象rclsid通过CLSIDFromProgID函数获得一样)?
2、如何调用对象中的GetData方法?最好有代码实例!
VB生成的ActiveX Exe: ProgID="VBText.Text"
方法:function GetData(byref strIn as string) as string
采用方法:
?STDAPI CoCreateInstance(REFCLSID rclsid, LPUNKNOWN pUnkOuter, DWORD dwClsContext,
REFIID riid, LPVOID *ppv);
?HRESULT CoCreateInstanceEx(REFCLSID rclsid,IUnknown *punkOuter,DWORD dwClsCtx, COSERVERINFO *pServerInfo,
ULONG cmq,MULTI_QI *pResults);问题:
1、如何创建ActiveX Exe对象?如果采用CoCreateInstance,riid通过何种方法获得(就象rclsid通过CLSIDFromProgID函数获得一样)?
2、如何调用对象中的GetData方法?最好有代码实例!
解决方案 »
- 关于实现网上搜索这样的功能
- 求一个在VC绘制一个不规则按钮的方法
- 中国不是输在裁判,而是自己的前锋!!!!!!!
- DeviceIoControl函数怎么用?
- 使用vbscript调用atl控件底参数传递问题
- 我做了一个网络编程的小程序(并非木马程序),却被网标认为是非法程序,请问如何才能逃避被类似网标的程序监测应用程序的存在?(在线等待
- 关于SetWindowText的问题。
- 如何把当前鼠标的坐标发送到串口?
- MFC对话框中多个静态文本的ID都相同,怎么动态修改显示的文本
- 关于VC++中的按钮单击的处理
- 求助操作注冊表的源代碼(解決即給分)
- 在turbo c中,如何把文本显示方式设置成图形显示方式
LPCOLESTR lpszProgID, //Pointer to the ProgID
LPCLSID pclsid //Pointer to the CLSID
)
2、CLSIDFromProgID 是获得rclsid,riid也是通过CLSIDFromProgID获得吗?
2. 可以用oleview或直接用regedit工具查查看。如果你知道interface的名字,也可以用IIDFromString函数得到
2. 可以用oleview或直接用regedit工具查查看。如果你知道interface的名字,也可以用IIDFromString函数得到
情况如下:
编辑时能出现_TestPtr 和 _Test,但用它们中的任一个定义变量进行编译时,出现“undeclared identifier”的情况。
大家帮帮我!
当然,你也可以在import后面加上no_namespace参数,这样编译器就不会生成namespace了,你可以直接引用_TestPtr和_Test了。
cannot instantiate abstract class due to following members:
您是不是作地图的?我也是作地图的,[email protected]本来想尽了各种办法也没试成功,最后打算用DelPhi作,安装完后重启机器时,发现硬盘有点问题,检测重启后,同样的程序,居然在VC下通过了(各种错误再也没有发生),莫名其妙!