2011-09-13 10 views
0


私のプログラムに特定のExeを読み込みましたが、バージョン情報リソースを置き換えようとしています。
私はUpdateResource()を使用していますが、なんらかの理由で元のリソースを置き換えることはしていません。
バージョン情報リソースを置き換えます。

UpdateResource(hHandle,RT_VERSION,"1",MAKELANGID(LANG_ENGLISH,SUBLANG_ENGLISH_US),pRsrcMemory,rsrcSize) 

エグゼがリソースエディタで開くと、私は同じID 1と2つのバージョン情報リソースを参照してください、しかし、Windowsのエクスプローラで表示されるバージョン情報がオリジナル情報です。(おそらくそれはで最初に来るのでexeの.rsrcセクションですが、私はわかりません)

何か助けていただければ幸いです。

答えて

1

リソースIDには、文字列または数字を使用できます。ここで問題となるのは、リソースID "1"ではない、MAKEINTRESOURCE(1)です。

楽しいパズル。

+0

ありがとうございました。今すぐうまくいく:) –

0

resourcesを更新するためのMSDNのすべての手順を実行していますか?すなわち:

  1. exeへの更新ハンドルを開くには、BeginUpdateResource関数を使用します。
  2. UpdateResource関数を使用して更新します。
  3. EndUpdateResource関数を使用して更新を完了します。
+0

はい、私は新しいリソースを追加しています同じルーチンでうまくいくだけですが、バージョン情報リソースを置き換えることができません。 –

関連する問題