有一段时间我现在有视觉工作室制作版本,其中包含各种额外的文件.我已经检查了我所知道的所有可能来自哪里的东西,而且我没有想法.
例如,我之前使用的是MbUnit,但现在我使用了nunit.我的项目都没有引用MbUnit,但是当我构建时它仍然出现在我的bin\Debug和bin\Release文件夹中.另外我的bootstrapper项目甚至没有引用任何使用测试框架的库,那么为什么它出现在BootStrapper\bin\Relase中呢?
一些(但不是全部)我的项目和vshost文件的pdb文件仍然被转移到bin directoreies,即使我使用Release目标构建.我根本没有弄清楚配置目标的定义!
有谁知道这些可能来自哪里?我必须缺少一些知识.
默认情况下,发布版本会创建pdb文件,因此在那里看到它们并不罕见.我假设vshost文件也是如此.如果你想在没有它们的情况下构建项目设置(从解决方案资源管理器中的项目上下文菜单),请转到"构建"选项卡,在顶部确保您正在查看发布配置,然后单击"高级"底部的按钮.在弹出的新窗口中,有一个标记为"Debug Info"的下拉列表,将其设置为none以禁用pdb创建.
至于引用,这听起来不是正确的行为,但是记住它们是递归的,所以如果projectA引用projectB和projectB引用mbunit,那么mbunit dll将被复制到projectA的任何构建文件夹中.所以可能是你错过了某个地方的参考资料,而这正在整个解决方案中传播......?
还要确保您正在重建解决方案而不是构建 - 构建不会删除文件夹中已存在的任何文件.甚至最好在构建之前手动删除bin和obj文件夹,以确保您有一个干净的平板.
刚刚在Visual Studio中进行了一个快速测试,它看起来像是一个vshost文件是为调试和发布中的StartUp项目设置的,无论调试信息设置是什么.要停止此操作,您需要取消选中项目设置的"调试"选项卡下的"启用Visual Studio主机进程".