我已经注册了一个 COM 组件。我想调用它。
CLSID clsid;
RIID iid;
HRESULT hr = CLSIDFromProgID(OLESTR("se.mysoft"),&clsid);
LPVOID *pRet;
HRESULT hr1 = CoCreateInstance(clsid, NULL, CLSCTX_INPROC_SERVER, iid, pRet);
我可以让 clsid 成功,但我在哪里可以得到 iid ?
我用OLE VIEWER查找界面:
[
odl,
uuid(F3F54BC2-D6D1-4A85-B943-16287ECEA64C),
helpstring("Isesoft Interface"),
dual,
oleautomation
]
interface Isesoft : IDispatch {
然后我改变了我的代码:
CLSID clsid;
RIID iid;
IDispatch* pDispatch;
HRESULT hr = CLSIDFromProgID(OLESTR("se.mysoft"),&clsid);
HRESULT hr1 = CoCreateInstance(clsid, NULL, CLSCTX_INPROC_SERVER, IID_IDispatch,(void **)&pDispatch);
但是 hr1 返回失败。