Заменить информацию о версии ресурса - PullRequest
0 голосов
/ 13 сентября 2011


Я загружаю определенный Exe в свою программу и пытаюсь заменить его ресурс информации о версии.
Я использую UpdateResource (), но по какой-то причине он не заменяет исходный ресурс, как предполагается.

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

Когда Exe открывается в редакторе ресурсов, я вижу два ресурса информации о версии с одним и тем же идентификатором 1, но информация о версии, отображаемая в проводнике Windows, является исходной информацией (возможно, потому что она стоит первой в разделе .rsrc Отлично, но я не уверен)

Любая помощь приветствуется.

Ответы [ 2 ]

1 голос
/ 13 сентября 2011

Идентификаторы ресурса могут быть либо строками, либо числами. В чем здесь проблема, это не идентификатор ресурса "1", это MAKEINTRESOURCE (1).

Веселая головоломка.

0 голосов
/ 13 сентября 2011

Выполняете ли вы все шаги, указанные в MSDN для обновления ресурсов ? А именно:

  1. Используйте функцию BeginUpdateResource, чтобы открыть дескриптор обновления для вашего exe.
  2. Используйте функцию UpdateResource для обновления.
  3. Используйте функцию EndUpdateResource для завершения обновления.
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...