EnumResourceNamesW 関数 (libloaderapi.h)

バイナリ モジュール内の指定した型のリソースを列挙します。 Windows Vista 以降の場合、これは通常、 言語に依存しないポータブル実行可能ファイル (LN ファイル) であり、列挙には、ローカライズ可能な言語リソースを含む対応する言語固有のリソース ファイル (.mui ファイル) からのリソースも含まれます。 hModule で .mui ファイルを指定することもできます。この場合、そのファイルのみがリソースを検索します。

構文

BOOL EnumResourceNamesW(
  [in, optional] HMODULE          hModule,
  [in]           LPCWSTR          lpType,
  [in]           ENUMRESNAMEPROCW lpEnumFunc,
  [in]           LONG_PTR         lParam
);

パラメーター

[in, optional] hModule

種類: HMODULE

検索するモジュールへのハンドル。 Windows Vista 以降では、これが LN ファイルの場合は、適切な .mui ファイル (存在する場合) が検索に含まれます。

このパラメーターが NULL の場合、これは、現在のプロセスの作成に使用されるモジュールにハンドルを渡すことと同じです。

[in] lpType

種類: LPCTSTR

名前が列挙されるリソースの種類。 または、ポインターではなく、このパラメーターに MAKEINTRESOURCE(ID) を指定できます。ここで、ID は定義済みのリソースの種類を表す整数値です。 定義済みのリソースの種類の一覧については、「 リソースの種類」を参照してください。 詳細については、以下の 「解説 」セクションを参照してください。

[in] lpEnumFunc

型: ENUMRESNAMEPROC

列挙されたリソース名または ID ごとに呼び出されるコールバック関数へのポインター。 詳細については、「 ENUMRESNAMEPROC」を参照してください。

[in] lParam

種類: LONG_PTR

コールバック関数に渡されるアプリケーション定義の値。 このパラメーターは、エラー チェックで使用できます。

戻り値

種類: BOOL

戻り値は、関数が成功した場合は TRUE、指定された型のリソースが関数で見つからない場合は FALSE、別の理由で関数が失敗した場合は TRUE です。 詳細なエラー情報を得るには、GetLastError を呼び出します。

解説

IS_INTRESOURCE(lpszType) が TRUE の場合、lpszType は指定されたリソースの種類の整数識別子を指定します。 それ以外の場合は、null で終わる文字列へのポインターです。 文字列の最初の文字がシャープ記号 (#) の場合、残りの文字は、リソースの種類の整数識別子を指定する 10 進数を表します。 たとえば、文字列 "#258" は識別子 258 を表します。

EnumResourceNames は、見つかったリソースごとに、アプリケーション定義のコールバック関数 lpEnumFunc を呼び出し、検索する各リソースの名前または ID と、EnumResourceNames に渡されたその他のさまざまなパラメーターを渡します。

または、アプリケーションで EnumResourceNamesEx を呼び出すことができます。これにより、列挙されるリソースをより正確に制御できます。

リソースに ID がある場合、ID はコールバック関数に渡されます。それ以外の場合、リソース名はコールバック関数に渡されます。 詳細については、「 ENUMRESNAMEPROC」を参照してください。

EnumResourceNames 関数は、コールバック関数が FALSE を返すか、すべてのリソースが列挙されるまで、リソースを列挙し続けます。

Windows Vista 以降では、 hModule で LN ファイルが指定されている場合、列挙されるリソースは LN ファイル内またはそれに関連付けられている .mui ファイル内に存在できます。 .mui ファイルが見つからない場合は、LN ファイルのリソースのみが返されます。 .mui ファイルが検索される順序は、通常のリソース ローダー検索順序です。詳細については、「 ユーザー インターフェイス言語管理 」を参照してください。 適切な .mui ファイルが 1 つ見つかると、.mui ファイルの検索が停止します。 1 つの LN ファイルに対応するすべての .mui ファイルには同じリソースの種類があるため、見つかった .mui ファイル内のリソースのみを列挙する必要があります。

列挙には重複が含まれることはありません。同じ名前のリソースが LN ファイルと .mui ファイルの両方に含まれている場合、リソースは 1 回だけ列挙されます。

例については、「 リソース リストの作成」を参照してください。

要件

   
サポートされている最小のクライアント Windows 2000 Professional [デスクトップ アプリのみ]
サポートされている最小のサーバー Windows 2000 Server [デスクトップ アプリのみ]
対象プラットフォーム Windows
ヘッダー libloaderapi.h (Windows.h を含む)
Library Kernel32.lib
[DLL] Kernel32.dll

関連項目

概念

リファレンス