OleRegGetUserType 関数 (ole2.h)
レジストリから指定したクラスのユーザー型を取得します。
カスタム DLL オブジェクト アプリケーションの開発者は、この関数を使用して、OLE の既定のハンドラーの動作をエミュレートします。
構文
HRESULT OleRegGetUserType(
[in] REFCLSID clsid,
[in] DWORD dwFormOfType,
[out] LPOLESTR *pszUserType
);
パラメーター
[in] clsid
ユーザー型が要求されるクラスの CLSID。
[in] dwFormOfType
ユーザーが提示できる文字列の形式。 指定できる値は、列挙 USERCLASSTYPE から取得されます。
[out] pszUserType
ユーザー型を受け取る文字列へのポインター。
戻り値
この関数は、標準の戻り値E_OUTOFMEMORYと、次の値を返すことができます。
リターン コード | 説明 |
---|---|
|
ユーザーの種類が正常に返されました。 |
|
クラス オブジェクトに CLSID が登録されていません。 |
|
レジストリからの読み取り中にエラーが発生しました。 |
|
ProgID = MainUserTypeName キーと CLSID = MainUserTypeName キーがレジストリに存在しません。 |
注釈
オブジェクト アプリケーションは、2 つの方法のいずれかで、指定したクラスのユーザー型名を取得するように OLE に依頼できます。 1 つの方法は、 OleRegGetUserType を呼び出す方法です。 もう 1 つは、 IOleObject::GetUserType に対する既定のオブジェクト ハンドラーによる呼び出しに応答してOLE_S_USEREGを返す方法です。 OLE_S_USEREGは、 OleRegGetUserType を呼び出すように既定のハンドラーに指示します。 DLL オブジェクト アプリケーションはOLE_S_USEREGを返すことができないため、ジョブをオブジェクト ハンドラーに委任するのではなく、 OleRegGetUserType を呼び出す必要があります。
OleRegGetUserType 関数とその兄弟関数 OleRegGetMiscStatus、OleRegEnumFormatEtc、および OleRegEnumVerbs は、カスタム DLL オブジェクト アプリケーションの開発者が、レジストリからオブジェクトに関する情報を取得する際に OLE の既定のオブジェクト ハンドラーの動作をエミュレートする方法を提供します。 これらの関数を使用すると、独自の関数を記述する作業や、レジストリで直接作業する際の落とし穴を回避できます。 さらに、これらの関数を自分でコーディングしなくても、これらの関数の将来の機能強化と最適化が行われます。
要件
要件 | 値 |
---|---|
サポートされている最小のクライアント | Windows 2000 Professional [デスクトップ アプリのみ] |
サポートされている最小のサーバー | Windows 2000 Server [デスクトップ アプリのみ] |
対象プラットフォーム | Windows |
ヘッダー | ole2.h |
Library | Ole32.lib |
[DLL] | Ole32.dll |
API セット | ext-ms-win-com-ole32-l1-1-3 (Windows 10 バージョン 10.0.10240 で導入) |