我有项目X,完全可以运作,编译成X.exe
我有项目Y,它有对项目X的引用,并编译为:Y.exe; Y.dll
我构建项目X的解决方案,发布文件夹有:X.exe
我构建了项目Y的解决方案,发布文件夹包含:X.exe, Y.exe, Y.dll
如何删除项目Y中的额外X.exe
?
答案 0 :(得分:4)
即使技术上可行,引用exe也不常见...你通常会引用DLL 我要做的是将公共部分提取到类库项目中,并在两个可执行文件中引用生成的DLL
答案 1 :(得分:1)
您在项目Y的输出目录中有“额外”exe(我假设您的意思是项目X的编译输出),因为您在项目中添加了对它的引用。如果您不需要对它的引用,请删除该引用,它不会出现在输出目录中。如果你确实需要引用它,你将需要exe存在,否则你的Y.exe将无法正常运行。
答案 2 :(得分:0)
打开引用exe的属性,并将copy-local设置为false。
答案 3 :(得分:0)
简单回答: 你不能,因为你在Y中使用X.exe程序集。
使用ILMerge可能会有所帮助(将X.exe合并到Y.exe中)
正确答案: 您必须重构以将X功能拆分为可重用的类项目和使用它的可执行文件。
你做不到。你正在引用