LoadTypeLib
[このドキュメントはプレビュー版であり、後のリリースで変更されることがあります。 空白のトピックは、プレースホルダーとして挿入されています。]
ロードし、タイプ ライブラリを登録します。
HRESULT LoadTypeLib(
const OLECHAR FAR *szFile,
ITypeLib FAR* FAR *pptlib
);
パラメータ
szFile
Contains the name of the file from whichLoadTypeLib should attempt to load a type library.pptlib
返された場合は、読み込まれたタイプ ライブラリへのポインターへのポインターを保持します。
戻り値
返された HRESULT から取得される戻り値は、次のいずれかになります。
戻り値 |
説明 |
---|---|
S_OK |
成功。 |
E_OUTOFMEMORY |
メモリが不足しています。 |
E_INVALIDARG |
1 つ以上の引数が無効です。 |
TYPE_E_IOERROR |
関数は、ファイルに書き込めませんでした。 |
TYPE_E_INVALIDSTATE |
タイプ ライブラリを開けませんでした。 |
TYPE_E_INVDATAREAD |
関数は、ファイルから読み取れませんでした。 |
TYPE_E_UNSUPFORMAT |
タイプ ライブラリは、古い形式があります。 |
TYPE_E_UNKNOWNLCID |
OLE でサポートされている DLL 内に、LCID は見つかりませんでした。 |
TYPE_E_CANTLOADLIBRARY |
タイプ ライブラリまたは DLL を読み込めませんでした。 |
その他のリターン コード |
すべての FACILITY_STORAGE エラーが返されます。 |
解説
関数 ms221027(v=vs.100).md の LoadTypeLib は、指定したファイルに格納されているタイプ ライブラリ (通常は MkTypLib で作成された) を読み込みます。 If szFilespecifies only a file name without any path, LoadTypeLib searches for the file and proceeds as follows:
ファイルが Typelib.dll によって実装されるスタンドアロンのタイプ ライブラリで、ライブラリは直接読み込まれます。
ファイルが、DLL または実行可能ファイルで読み込まれます。 既定では、タイプ ライブラリが型 ms221549(v=vs.100).md の ITypeLib の最初のリソースから抽出されます。 異なる種類のライブラリのリソースを読み込みするには、整数インデックス szFile を追加します。 たとえば、次のように公開されます。
ITypeLib *ptlib; LoadTypeLib("C:\\MONTANA\\EXE\\MFA.EXE\\3", &ptlib)
このステートメントは、ファイルの Mfa.exe ファイルから、タイプ ライブラリ リソース 3 を読み込みます。
ファイルが、上記のファイルの名前する場合は (ファイル ベースのリンク元を表すオブジェクト)、モニカーに解析で、モニカーにバインドされます。 This approach allows LoadTypeLibto be used on foreign type libraries, including in-memory type libraries. 外部タイプ ライブラリ、DLL または実行可能ファイルに存在することはできません。 モニカーの詳細については、プラットフォーム SDK で参照 COM プログラマを参照してください。
タイプ ライブラリが既に読み込まれて、LoadTypeLib ms221027(v=vs.100).md タイプ ライブラリの参照カウントをインクリメントし、タイプ ライブラリへのポインターを返します。
下位互換性のため、LoadTypeLib ms221027(v=vs.100).md をパスでは、 szFile パラメーターで指定しない場合型ライブラリが登録されます。 LoadTypeLib は、タイプ ライブラリのパスが指定される場合型ライブラリを登録できません。 RegisterTypeLib その を使用して、タイプ ライブラリを登録するをお勧めします。