在Visual Studio C ++项目的.rc
文件中,有两个包含使用相对路径指定的源的程序集。相反,我想指定这些相对于输出目录。
以下是我的开始:
#ifndef APSTUDIO_INVOKED
/////////////////////////////////////////////////////////////////////////////
//
// Generated from the TEXTINCLUDE 3 resource.
//
LANGUAGE LANG_NEUTRAL, SUBLANG_NEUTRAL
#ifdef _DEBUG
EXCELDNA.LOADER ASSEMBLY "..\\ExcelDna.Loader\\bin\\Debug\\ExcelDna.Loader.dll"
EXCELDNA.INTEGRATION ASSEMBLY "..\\ExcelDna.Integration\\bin\\Debug\\ExcelDna.Integration.dll"
#else
EXCELDNA.LOADER ASSEMBLY "..\\ExcelDna.Loader\\bin\\Release\\ExcelDna.Loader.dll"
EXCELDNA.INTEGRATION ASSEMBLY "..\\ExcelDna.Integration\\bin\\Release\\ExcelDna.Integration.dll"
#endif
/////////////////////////////////////////////////////////////////////////////
#endif // not APSTUDIO_INVOKED
我尝试在属性→C / C ++→预处理器中定义引用$(OutDir)
的宏:
EXCELDNA_INTEGRATION_PATH "$(OutDir)ExcelDna.Integration.dll"
EXCELDNA_LOADER_PATH "$(OutDir)ExcelDna.Loader.dll"
然后用以下内容替换该部分:
#ifndef APSTUDIO_INVOKED
/////////////////////////////////////////////////////////////////////////////
//
// Generated from the TEXTINCLUDE 3 resource.
//
LANGUAGE LANG_NEUTRAL, SUBLANG_NEUTRAL
EXCELDNA.LOADER ASSEMBLY EXCELDNA_LOADER_PATH
EXCELDNA.INTEGRATION ASSEMBLY EXCELDNA_INTEGRATION_PATH
/////////////////////////////////////////////////////////////////////////////
#endif // not APSTUDIO_INVOKED
但这只会导致编译错误:
Error RC2135 file not found: EXCELDNA_INTEGRATION_PATH
Error RC2135 file not found: EXCELDNA_LOADER_PATH
这样做的正确方法是什么?它甚至可能吗?