2

我创建了一个使用 .NET 4 生成身份验证字符串的小型桌面应用程序。它在我的 Windows 7 计算机上运行良好,但是当我在他的 Vista 机器上将它部署到我们的 QA 人员时,它给了他一个错误,说他需要安装 .NET 4... 够了。我们安装了 .NET 4,但是下一个错误显示 GAC 中缺少“Microsoft.Web.Infrastructure.dll”。废话。所以我四处摸索了一下,发现了这个:

在此处输入图像描述

然后我将 Microsoft.Web.Infrastructure.dll 的 Publish Status 设置为 Include 并再次发布。这次它给了他一个关于“System.Web.Mvc”的错误!所以我知道我正在做某事。所以我去做了这个:

在此处输入图像描述

但是,现在当他运行它时,它只是说它无法下载运行应用程序所需的文件,并且不会指定它们是什么!

如何以确保最终用户拥有运行它所需的正确文件的方式正确发布我的 Windows 桌面应用程序?

注意:我认为包含 Razor 和 MVC 是因为此 Windows 桌面应用程序项目依赖于此解决方案中使用 MVC 的其他一些项目。(基本上这个桌面应用程序正在使用一些模型。)

编辑:这是最终结果(自述文件是我添加的,而不是 VS)

在此处输入图像描述

4

2 回答 2

1

事实证明,将所有内容设置为 Include 的第二个屏幕截图视图是正确的方法并且工作正常,而第一个屏幕截图在安装过程中导致缺少 DLL 错误。这实际上只是一个 FTP 上传用户错误,安装程序正在寻找一个不存在的文件夹,这就是为什么第二个版本第一次无法工作的原因。

于 2011-07-28T18:15:09.153 回答
0

我认为您应该从项目属性窗口的发布选项卡中查看先决条件对话框,而不是应用程序文件对话框。不确定这是否是 SP1 功能(我有 SP1)。

来自 Ryan 的图片回复(问题海报):

在此处输入图像描述

于 2011-07-27T19:32:13.250 回答