我在一个大型系统(10多个EXE和50多个DLL)上工作。整个系统都是用C ++编写的,直到2005年左右,当我们开始将组件迁移到.NET框架时。
如果我可以将单个DLL项目切换到C ++ / CLI并将旧的非托管API和新的托管API同时提供到同一个DLL中,这将极大地帮助我们的迁移工作。
这种方法在我们刚开始时起作用,但随后很快就破裂了。 Visual Studio似乎不支持通过非托管API相互链接的两个C ++ / CLI项目。
除了将一个项目中的导出库作为内容添加到另一个项目的蛮力方法之外,还有什么方法可以让它工作吗?这就是项目依赖项应该已经处理的内容。
答案 0 :(得分:-1)
本机头文件中的#include <ncurses.h>
#include <locale.h>
#include <wchar.h>
int
main(void)
{
wint_t value;
setlocale(LC_ALL, "");
initscr();
get_wch(&value);
mvprintw(0, 0, "letter: %#x (%lc).", value, value);
refresh();
getch();
endwin();
return 0;
}
可能很有用。为此,您需要将每个项目配置为将其生成的导入库写入可添加到库搜索路径的公共区域,但它使您不必手动添加lib文件作为链接器输入或项目内容项。此外,它使得发布和调试库版本更容易分离,因为您可以为每个配置提供不同的搜索路径,而不必将每个单独的库添加两次到每个消费项目。