最近,我一直在尝试根据编译平台的不同,让DLL具有不同的InternalName和OriginalFilm。|x64它应该有一个名称,如果设置为Release| x86应该有另一个。我曾经有两个不同的项目,但觉得创建一个ifdef更容易。问题是,无论我做什么,InternalName和OriginalFilm总是最终成为x86名称。
下面是我的Resource.h文件中存储ifdef的一个小片段。
下面的代码片段来自定义详细信息的dlls.rc文件。
#ifdef WIN64
// 64 bit windows
#define DLLNAME "MyDLL.dll"
#else
// 32 bit windows
#define DLLNAME "MyDLL_WIN32.dll"
#endif // _WIN64 or _WIN32
个字符
下面是我设置的预处理器定义。
的数据
的
任何帮助我做错了什么将是伟大的。
2条答案
按热度按时间0g0grzrc1#
如果您检查.RC文件的属性,您将看到它没有继承用于C++编译器的预处理器定义。
您必须为每个需要它的配置显式地将
WIN64
定义添加到.RC文件的选项中。bbmckpt72#
不用显式添加,我刚查了,这个就行
字符串