Warning: file_get_contents(/data/phpspider/zhask/data//catemap/6/cplusplus/150.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++ 如何更改可执行文件';谁的财产?(窗口)_C++_Windows_Properties_Exe_Executable - Fatal编程技术网

C++ 如何更改可执行文件';谁的财产?(窗口)

C++ 如何更改可执行文件';谁的财产?(窗口),c++,windows,properties,exe,executable,C++,Windows,Properties,Exe,Executable,当我创建一个.exe时,我可以右键单击它并转到属性->详细信息。然后我得到一个列表,如: 如何更改这些属性?(顺便提一下,有没有办法更改图标?如果您使用的是C/Win32,您可以将类似的内容添加到封装在*.rc(资源)文件中的项目中: 这是一个简单的文件版本信息资源。对于已经存在的文件,您可以使用任何资源编辑器编辑此信息(例如,它已过时,但仍然有效)。您也可以通过这种方式更改图标 若您创建自己的应用程序,那个么设置它取决于您使用的工具。例如,在Visual Studio中,您必须查看项目属性。

当我创建一个.exe时,我可以右键单击它并转到属性->详细信息。然后我得到一个列表,如:


如何更改这些属性?(顺便提一下,有没有办法更改图标?

如果您使用的是C/Win32,您可以将类似的内容添加到封装在*.rc(资源)文件中的项目中:


这是一个简单的文件版本信息资源。对于已经存在的文件,您可以使用任何资源编辑器编辑此信息(例如,它已过时,但仍然有效)。您也可以通过这种方式更改图标

若您创建自己的应用程序,那个么设置它取决于您使用的工具。例如,在Visual Studio中,您必须查看项目属性。

对于.NET,谷歌搜索“设置程序集属性”以获取可用属性的信息。然后使用如下属性

using System.Reflection;  // Needed to get to the attributes.

[assembly:AssemblyTitle("My File Description")]
[etc.]

如果您使用的是visual studio,则非常简单:

  • 右键单击项目中的“资源文件”文件夹
  • 单击“添加”,然后单击“资源”
  • 从弹出对话框中选择“版本”
然后,您可以双击该文件以在VisualStudio中打开它,并获得一个方便的编辑器来更改这些值


然后,您的值将自动链接到EXE。

如果您想更改已编译可执行文件(一个小型开源工具)上的文件描述或任何其他版本的资源字符串,是否非常容易:

$ rcedit MyApp.exe --set-version-string FileDescription "My Awesome App"

这是一个编译的可执行文件,还是一个可执行文件?你不能访问源代码?这是我已经从C++代码编译的一个可执行文件。@ Keand 64:如果你想手工修改它,您可以在Visual Studio中使用File->Open轻松打开exe文件并更改资源。您能详细说明一下吗?@Keand64您可以找到有关MSDN/VERSIONINFO的其他信息,但我可以尝试简要介绍一下它在C中的工作原理(不确定这是C++中的首选方法,但我现在没有考虑到你在C++中这样做)。我把一个资源文件(如Maun.RC)添加到我的项目中,从上面添加代码并相应地编辑它(见MSDN)。在重新编译我的.exe文件包含所有的信息。如果我在.NET中正确记得,你可以用同样的方法来做。[assembly:AssemblyTitle(“title”)]命令。另外,如果您碰巧正在使用MinGW(像我一样),而不是使用rc编译将链接到exe以提供此信息的资源文件,您应该使用windres:。MSDN链接和该链接应足以让您将此额外信息添加到exe。在创建类似这样的
.rc
文件后,您可以使用将其编译为
.res
文件e> gorc/fo Resources.res Resources.rc。然后可以使用
ResHacker将其添加到现有的
.exe
-添加prog.exe、prog.exe、Resources.res、、
(摘自我的答案)这不是答案。询问者希望在C WinAPI而不是.NET C#中使用解决方案。
rcedit
在可设置的属性方面非常有限。您可以使用此工具设置所有内容,请参阅
using System.Reflection;  // Needed to get to the attributes.

[assembly:AssemblyTitle("My File Description")]
[etc.]
$ rcedit MyApp.exe --set-version-string FileDescription "My Awesome App"