Warning: file_get_contents(/data/phpspider/zhask/data//catemap/6/cplusplus/151.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C++ 修改已编译exe的说明_C++_Winapi_Versioninfo_Fileversioninfo - Fatal编程技术网

C++ 修改已编译exe的说明

C++ 修改已编译exe的说明,c++,winapi,versioninfo,fileversioninfo,C++,Winapi,Versioninfo,Fileversioninfo,我想修改已编译exe的版本信息以更改描述 我自己看了一下,发现我需要使用updateResource函数,我做到了这一点 LPBYTE lpBuffer = new BYTE[200]; UpdateResource(filehandle, RT_VERSION, MAKEINTRESOURCE(1), MAKELANGID(LANG_NEUTRAL, SUBLANG_DEFAULT), (LPVOID) lpBuffer, sizeof(lpB

我想修改已编译exe的版本信息以更改描述

我自己看了一下,发现我需要使用updateResource函数,我做到了这一点

LPBYTE lpBuffer = new BYTE[200];
UpdateResource(filehandle, 
    RT_VERSION, 
    MAKEINTRESOURCE(1), 
    MAKELANGID(LANG_NEUTRAL, SUBLANG_DEFAULT), 
    (LPVOID) lpBuffer, 
    sizeof(lpBuffer)
我不太清楚的部分是lpBuffer。我只想更改ressource中包含文件描述的部分


我的猜测是,我必须从exe加载旧版本并对其进行一些修改,但我不太确定它是如何构造的。

看到这个线程了吗?有一个叫做ChangedVersion的工具。您是否需要按程序执行此操作?为什么不使用众多资源编辑器中的一个呢?我确实需要以编程方式执行此操作。如果您正在考虑对任何经过Authenticode签名但无法访问原始签名证书的对象执行此操作,请三思。