【发布时间】: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