FindResourceW 関数 (libloaderapi.h)

指定したモジュール内の指定した型と名前を持つリソースの場所を決定します。

言語を指定するには、 FindResourceEx 関数を使用します。

構文

HRSRC FindResourceW(
  [in, optional] HMODULE hModule,
  [in]           LPCWSTR lpName,
  [in]           LPCWSTR lpType
);

パラメーター

[in, optional] hModule

種類: HMODULE

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

[in] lpName

型: LPCTSTR

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

[in] lpType

型: LPCTSTR

リソースの種類。 または、ポインターではなく、このパラメーターに MAKEINTRESOURCE(ID) を指定できます。ここで、ID は指定された の整数識別子です。

リソースの種類。 標準のリソースの種類については、「 リソースの種類」を参照してください。 詳細については、以下の「解説」セクションを参照してください。

戻り値

種類: HRSRC

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

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

解説

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

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

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

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

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

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

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

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

要件

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

関連項目

概念

FindResourceEx
FormatMessage
IS_INTRESOURCE
LoadAccelerators
LoadBitmap
LoadCursor
LoadIcon
LoadMenu
LoadResource
LoadString
LockResource

その他のリソース

リファレンス

リソース
SizeofResource