EnumResourceNamesA 関数 (libloaderapi.h)

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

構文

BOOL EnumResourceNamesA(
  [in, optional] HMODULE          hModule,
  [in]           LPCSTR           lpType,
  [in]           ENUMRESNAMEPROCA 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 ファイルが見つかると、.mui ファイルの検索が停止します。 1 つの LN ファイルに対応するすべての .mui ファイルのリソースの種類は同じであるため、見つかった .mui ファイル内のリソースのみを列挙する必要があります。

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

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

要件

要件
サポートされている最小のクライアント Windows 10 ビルド 20348
サポートされている最小のサーバー Windows 10 ビルド 20348
Header libloaderapi.h
Library Kernel32.lib
[DLL] Kernel32.dll

関連項目

概念

リファレンス