HRESULTGetProperty (DISPIDdwDispIDバリアント ※var);
静的HRESULTGetProperty (IDispatch ※pDisp、 DISPIDdwDispIDバリアント ※var);
戻り値
標準のHRESULT値の 1 つ。
パラメーター
dwDispID
[入力]取得するプロパティの DISPID。DISPID を取得することができます idispatch::getidsofnames。
var
[out]プロパティの値が格納されるへのポインター。
pDisp
[入力]ポインター、 IDispatchインターフェイス。
解説
DwDispIDによって識別されるプロパティの値を取得します。PDispを指定した場合、そのIDispatchポインターが使用されます。しない場合は、データ メンバー pの含まれるIDispatchポインターが使用されます。
GetPropertyの静的バージョンへの呼び出しを次に示します。このコードはIPersistStreamInitImpl::Saveを実装するために使用されます。
CComPtrlt; IDispatch > pDispatch;const IID ※ piidOld = NULL;(int I = 0; pMap [i] .pclsidproppage! = NULL; i + +)//pMap の配列へのポインターです・ ・ ATL_PROPMAP_ENTRY 構造{場合 (pMap [i] .szdesc = = NULL)続行;CComVariant ヴァール;場合 (pMap [i] .piiddispatch ! piidOld =){場合 (失敗 (ControlQueryInterface (※ pMap [i] .piiddispatch (void 年) & pDispatch))){ATLTRACE (_T ("ディスパッチ ポインター プロパティ #%i\n を取得できませんでした」)、私は);hr = E_FAIL;休憩;}piidOld = pMap [i] .piiddispatch;}場合 (失敗 (CComDispatchDriver::GetProperty pDispatch、.dispid、pMap [i] (var))){ATLTRACE (_T (「呼び出す DISPID %x\n に失敗しました」)、pMap[i].dispid);hr = E_FAIL;休憩;}HRESULT 時間も var =WriteToStream(pStm);場合 (FAILED(hr))休憩;}
CComDispatchDriver 概要|nbsp;クラス メンバー(&N)
参照特価;CComDispatchDriver::PutProperty(&N)