【问题标题】:Distributing ASP.NET applications分发 ASP.NET 应用程序
【发布时间】:2011-07-02 20:49:31
【问题描述】:

我们最近发布了一个 ASP.NET (.NET 2.0) 应用程序。应用程序文件是预编译的,安装程序是在 Visual Studio 中生成的。它是用 Delphi Prism 编写的,而不是 C# 预编译的。

在测试时一切正常,但一旦进入野外,我们就开始看到一些问题,例如

  • 安装程序有时会拒绝安装,说应用程序已安装,即使在安装构建器中设置了“删除以前的版本”选项。
  • 安装程序似乎对 IIS 的设置非常敏感。例如如果没有为 II7 安装 II6 兼容性,安装程序将退出且不显示错误消息。
  • 在尝试连接到应用程序时,一些用户收到“无法访问 IIS 元数据库”(仍然不知道这是什么)。
  • 似乎没有办法在安装程序中创建应用程序池。因此,.NET 2.0 应用程序最终可以使用 .NET 3.5/4.0 的应用程序池。

这些只是我们遇到的一些问题。

是否有更好的方法来分发不需要预先了解最终用户系统的 ASP.NET 应用程序?我们可以做一些愚蠢的事情吗?如果这些是常见问题,是否有任何安装良好的万无一失的安装,如果出现问题,向用户提供信息丰富的错误消息。

【问题讨论】:

  • 你用什么来创建安装包的?也许这是它的设置。对于 ASP.NET 应用程序,有一些商业工具可能更易于使用且更可靠。但是您必须购买许可证。
  • 安装程序是Visual Studio自带的(wdproj文件)
  • 3.5 App Pool 完全没有问题。 .NET 3.5 也使用 2.0 Runtime 并简单地添加了一些新程序集。 IIS 元数据库是 IIS6 使用的配置数据库。在 IIS7+ 上没有元数据库,这里只有配置文件。这可能是权限问题。

标签: .net asp.net iis installation delphi-prism


【解决方案1】:

由于一年半以来一直没有答案,我想没有比我们想出的更好的答案了。

我们使用 InnoSetup 运行 ASP.NET 安装程序。但是,它首先检查是否安装了 ASP.NET,如果是,则将其卸载。这至少解决了我在问题中提到的第一个问题。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2011-12-13
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多