FindResourceExA 関数 (winbase.h)

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

構文

HRSRC FindResourceExA(
  [in, optional] HMODULE hModule,
  [in]           LPCSTR  lpType,
  [in]           LPCSTR  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 または lpName場合、IS_INTRESOURCEが TRUE の場合、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
ヘッダー winbase.h (Windows.h を含む)
Library Kernel32.lib
[DLL] Kernel32.dll

関連項目

概念

Findresource

FormatMessage

IS_INTRESOURCE

LoadAccelerators

LoadBitmap

LoadCursor

LoadIcon

LoadMenu

LoadResource

LoadString

MAKELANGID

その他のリソース

リファレンス

リソース