使用CAPICOM Store对象的IDispatch接口,调用GetIDOfNames()出错
CoInitialize( NULL );
OleResult = CLSIDFromProgID( L"CAPICOM.Store", &StoreObjectClsid );
if( FAILED( OleResult ) )
break;
OleResult = CoCreateInstance( StoreObjectClsid,
NULL,
CLSCTX_SERVER,
IID_IUnknown,
( PVOID* )&pStoreObjectIUnknown );
if( FAILED( OleResult ) )
break;
OleResult = pStoreObjectIUnknown->QueryInterface( IID_IDispatch, ( PVOID* )&pStoreObjectIDispatch );
if( FAILED( OleResult ) )
break;
pStoreObjectIUnknown->Release();
pszMethod = L"Open";
OleResult = pStoreObjectIDispatch->GetIDsOfNames( IID_NULL,
&pszMethod,
1,
LOCALE_USER_DEFAULT,
&Dispid );
if( FAILED( OleResult ) )
break;
执行到pStoreObjectIDispatch->GetIDsOfNames()总是出错, 0x80029c4a 加载类型库/DLL 时出错。
哪位大大知道是怎么回事?