我有一个应用程序在Visual Studio
内置时工作正常。当此应用程序由Visual Studio 2012
标准InstallShield
项目构建时,它不会。
该应用使用System.Threading.Tasks
中的NuGet
。使用Visual Studio
构建应用程序时,它会输出正确的版本。使用InstallShield
安装程序构建时,会部署不同的版System.Threading.Tasks
。这会导致应用程序崩溃。
我的问题是,为什么将System.Threading.Tasks
的不同版本作为主要输出发送到安装程序项目?
我希望我已经解释得这么好了。有关详细信息,请参阅随附的屏幕截图。
参考属性
调试输出
安装程序输出
答案 0 :(得分:0)
要解决此问题,我将System.Threading.Tasks.dll
直接从NuGet
文件夹添加到安装程序输出中。这似乎覆盖了安装程序所获得的System.Threading.Tasks.dll
- 这可能是Visual Studio在创建Debug输出时在幕后所做的事情。
答案 1 :(得分:0)
不知道这是否会对任何人有所帮助..但我对Telerik.Windows.Data程序集也有同样的问题。
即使我在构建安装程序时我想要打包并引用我的项目中的版本,但由于某种原因我不断从某个地方获取旧版本
我最终修复它的方法是对我的C:\驱动器进行全面搜索,并删除除我想要的特定部分之外的所有内容(有很多随机的telerik.windows.data遍布整个地方)。它似乎适用于我猜它是从其他地方捡起来的