UpdateResourceW

ポータブル実行ファイル (PE) のリソースを追加・削除・置換する。(Unicode)

UpdateResourceW hUpdate, lpType, lpName, wLanguage, lpData, cb

hUpdate : [intptr] 型: HANDLE BeginUpdateResource が返したモジュールハンドル。更新対象ファイルを参照する。
lpType : [wstr] 型: LPCTSTR 更新対象のリソース型。ポインタの代わりに MAKEINTRESOURCE(ID) を指定でき、ここで ID は定義済みリソース型を表す整数値。文字列の先頭がポンド記号 (#) の場合、残りの文字はリソース型整数識別子を指定する 10 進数を表す。たとえば "#258" は識別子 258 を表す。定義済みリソース型一覧は Resource Types を参照。
lpName : [wstr] 型: LPCTSTR 更新対象リソースの名前。ポインタの代わりに MAKEINTRESOURCE(ID) を指定でき、ここで ID はリソース ID。新規リソース作成時は本パラメータに '#' で始まる文字列を使ってはならない。
wLanguage : [int] 型: WORD 更新対象リソースの言語識別子。プライマリ言語識別子・サブ言語識別子の一覧は MAKELANGID マクロを参照。
lpData : [intptr] 型: LPVOID hUpdate が示すファイルに挿入するリソースデータ。リソースが定義済み型の一つの場合、データは有効で適切に整列されている必要がある。これは LoadIcon、LoadString などのリソース固有ロード関数が提供するデータではなく、ファイルに格納する生のバイナリデータである。文字列やテキストを含むデータはすべて Unicode 形式でなければならない。lpData は ANSI データを指してはならない。
cb : [int] 型: DWORD lpData のリソースデータのバイト数。

(プラグイン / モジュール : kernel32.dll)

解説

ポータブル実行ファイル (PE) のリソースを追加・削除・置換する。(Unicode)

[戻り値]
型: BOOL 成功した場合は TRUE、それ以外は FALSE を返す。拡張エラー情報を取得するには GetLastError を呼ぶ。

[備考]
本関数を呼ぶ前にリソースファイルをロードしないことを推奨する。ただし既にロードされていてもエラーとはならない。アプリケーションは
UpdateResource
を繰り返し呼んでリソースデータを変更できる。各呼び出しは内部の追加・削除・置換リストに加わるが、実際にはデータをファイルに書き込まない。蓄積された変更をファイルに書き込むには
EndUpdateResource
を呼ぶ必要がある。本関数はコードとリソースの両方を含むモジュール内のリソースを更新できる。Windows 7 より前: lpData が
NULL で cbData が非ゼロの場合、指定リソースは削除されず例外がスローされる。Windows Vista 以降:
上記の通り、RC Config データを含む LN ファイル・.mui ファイルにおけるリソース更新には制限がある。
(以下省略)

情報

プラグイン / モジュールkernel32.dll
バージョン1.0
作成日2026/04/16
著作者IronHSP / CsWin32 bridge
URLhttps://github.com/inovia/IronHSP
備考Win32 API の kernel32.dll 関数群。CsWin32 + win32metadata から自動生成。
hsp3net 専用 (intptr / NSTRUCT / wstr を使用)。
タイプ拡張命令
グループWin32API
対応環境
  • Windows 版 HSP
hs ファイルhsphelp\win32_kernel32_gen2.hs