是否可以使用 MFC 为 32 位和 64 位设置不同的应用程序名称?
Is it possible to have a different application name for 32 bit v 64 bit with MFC?
是否可以为 32 位和 64 位使用不同的应用程序名称?
我希望我的应用程序名称分别为(32 位)或(64 位)。
是的!您可以在 .rc
文件中使用条件 #ifdef ... #else ... #endif
块,因此您可能必须手动编辑它,或者将 VERSIONINFO
块放入随附的 .rc2
文件中主要 .rc
.
像这样:
VS_VERSION_INFO VERSIONINFO
FILEFLAGSMASK VS_FFI_FILEFLAGSMASK
FILEFLAGS 0
FILEOS VOS__WINDOWS32
FILETYPE VFT_APP
FILESUBTYPE 0
{
BLOCK "StringFileInfo"
{
BLOCK "080904b0"
{
//...
#ifdef _WIN64
VALUE "FileDescription", "My Application: 64-bit[=10=]"
#else
VALUE "FileDescription", "My Application: 32-bit[=10=]"
#endif
}
}
}
但请注意,资源编译器不会自动定义 _WIN64
宏,因此您需要将其添加(或类似的东西)作为 平台特定 属性:
IDE 已经 PlatformShortName=x86|x64
定义了 macro。要在资源文件中使用它:
- 在所有配置和平台的资源/常规/预处理器定义下的项目设置中定义一个宏作为
"TARGET=\"$(PlatformShortName)\""
- 将
.rc
文件编辑为文本并编辑 VS_VERSION_INFO VERSIONINFO
部分以替换
VALUE "FileDescription", "SomeLabel"
和
VALUE "FileDescription", "SomeLabel (" TARGET ")"
编译成二进制文件的文件描述现在将是SomeLabel (x86)
或SomeLabel (x64)
。
由于存在宏,IDE 资源编辑器将不再识别修改后的 .rc
文件,因此您可能希望将修改后的 VERSIONINFO
移动到 .rc2
文件。
是否可以为 32 位和 64 位使用不同的应用程序名称?
我希望我的应用程序名称分别为(32 位)或(64 位)。
是的!您可以在 .rc
文件中使用条件 #ifdef ... #else ... #endif
块,因此您可能必须手动编辑它,或者将 VERSIONINFO
块放入随附的 .rc2
文件中主要 .rc
.
像这样:
VS_VERSION_INFO VERSIONINFO
FILEFLAGSMASK VS_FFI_FILEFLAGSMASK
FILEFLAGS 0
FILEOS VOS__WINDOWS32
FILETYPE VFT_APP
FILESUBTYPE 0
{
BLOCK "StringFileInfo"
{
BLOCK "080904b0"
{
//...
#ifdef _WIN64
VALUE "FileDescription", "My Application: 64-bit[=10=]"
#else
VALUE "FileDescription", "My Application: 32-bit[=10=]"
#endif
}
}
}
但请注意,资源编译器不会自动定义 _WIN64
宏,因此您需要将其添加(或类似的东西)作为 平台特定 属性:
IDE 已经 PlatformShortName=x86|x64
定义了 macro。要在资源文件中使用它:
- 在所有配置和平台的资源/常规/预处理器定义下的项目设置中定义一个宏作为
"TARGET=\"$(PlatformShortName)\""
- 将
.rc
文件编辑为文本并编辑VS_VERSION_INFO VERSIONINFO
部分以替换
VALUE "FileDescription", "SomeLabel"
和
VALUE "FileDescription", "SomeLabel (" TARGET ")"
编译成二进制文件的文件描述现在将是SomeLabel (x86)
或SomeLabel (x64)
。
由于存在宏,IDE 资源编辑器将不再识别修改后的 .rc
文件,因此您可能希望将修改后的 VERSIONINFO
移动到 .rc2
文件。