FindResourceExW 関数 (libloaderapi.h)

指定したモジュールの型、名前、言語を指定して、リソースの場所を決定します。

構文

HRSRC FindResourceExW(
  [in, optional] HMODULE hModule,
  [in]           LPCWSTR lpType,
  [in]           LPCWSTR lpName,
  [in]           WORD    wLanguage
);

パラメーター

[in, optional] hModule

種類: HMODULE

移植可能な実行可能ファイルまたは付属の MUI ファイルにリソースが含まれているモジュールへのハンドル。 このパラメーターが NULL の場合、関数は現在のプロセスの作成に使用されるモジュールを検索します。

[in] lpType

型: LPCTSTR

リソースの種類。 または、ポインターではなく、このパラメーターに MAKEINTRESOURCE(ID) を指定できます。ここで、ID は指定されたリソースの種類の整数識別子です。 標準のリソースの種類については、「 リソースの種類」を参照してください。 詳細については、以下の「解説」セクションを参照してください。

[in] lpName

型: LPCTSTR

リソースの名前。 または、ポインターではなく、このパラメーターに MAKEINTRESOURCE(ID) を指定できます。ここで、ID はリソースの整数識別子です。 詳細については、以下の「解説」セクションを参照してください。

[in] wLanguage

種類: WORD

リソースの言語。 このパラメーターが の場合は MAKELANGID(LANG_NEUTRAL, SUBLANG_NEUTRAL)、呼び出し元スレッドに関連付けられている現在の言語が使用されます。

現在の言語以外の言語を指定するには、 MAKELANGID マクロを使用してこのパラメーターを作成します。 詳細については、「 MAKELANGID」を参照してください。

戻り値

種類: HRSRC

関数が成功した場合、戻り値は指定されたリソースの情報ブロックへのハンドルです。 リソースへのハンドルを取得するには、このハンドルを LoadResource 関数に渡します。

関数が失敗した場合は、返される値は NULL です。 詳細なエラー情報を得るには、GetLastError を呼び出します。

解説

x = lpType または lpNameIS_INTRESOURCETRUE の場合、x は指定されたリソースの型または名前の整数識別子を指定します。 それ以外の場合、これらのパラメーターは null で終わる文字列への長いポインターです。 文字列の最初の文字がシャープ記号 (#)の場合、残りの文字は、リソースの名前または型の整数識別子を指定する 10 進数を表します。 たとえば、文字列 "#258" は整数識別子 258 を表します。

リソースに必要なメモリの量を減らすために、アプリケーションは名前ではなく整数識別子で参照する必要があります。

アプリケーションは FindResourceEx を使用して任意の種類のリソースを検索できますが、この関数は、アプリケーションが LoadResource を後続の呼び出しで LockResource に呼び出すことによってバイナリ リソース データにアクセスする必要がある場合にのみ使用する必要があります。

リソースをすぐに使用するには、アプリケーションで次のいずれかのリソース固有の関数を使用してリソースを検索し、データをより使いやすい形式に変換する必要があります。

機能 アクション
FormatMessage メッセージ テーブル エントリを読み込んで書式設定します。
LoadAccelerators アクセラレータ テーブルを読み込みます。
LoadBitmap ビットマップ リソースを読み込みます。
LoadCursor カーソル リソースを読み込みます。
LoadIcon アイコン リソースを読み込みます。
LoadMenu メニュー リソースを読み込みます。
LoadString 文字列テーブル エントリを読み込みます。

たとえば、アプリケーションでは LoadIcon 関数を使用して、画面に表示するアイコンを読み込むことができます。 ただし、アイコンを読み込んでデータを別のアプリケーションにコピーする場合は、アプリケーションで FindResourceExLoadResource を使用する必要があります。

文字列リソースは、セクションごとに最大 16 個の文字列のセクションに格納されます。 各セクションの文字列は、カウントされた (必ずしも null で終わるとは限らない) Unicode 文字列のシーケンスとして格納されます。 LoadString 関数は、対応するセクションから文字列リソースを抽出します。

要件

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

関連項目

Findresource
FormatMessage
IS_INTRESOURCE
LoadAccelerators
LoadBitmap
LoadCursor
LoadIcon
LoadMenu
LoadResource
LoadString
MAKELANGID

その他のリソース

リファレンス
リソース