我的第一个问题,请善待。我的安装程序有问题,这是安装程序日志中的错误。
MSI (s) (4C:64) [14:56:14:086]: Invoking remote custom action. DLL: C:\Windows\Installer\MSI6E35.tmp, Entrypoint: WriteIIS7ConfigChanges
CustomAction WriteIIS7ConfigChanges returned actual error code 1603 (note this may not be 100% accurate if translation happened inside sandbox)
Action ended 14:56:15: InstallFinalize. Return value 3.
安装程序因错误退出并回滚。通过反复试验,我发现了 IIS 配置的问题,并将其缩小到自定义错误页面的设置(下面的示例)
<iis:WebSite Id="myWebService1" Description="myWebService" AutoStart="yes" StartOnInstall="yes" ConfigureIfExists="yes" Directory="WEBAPPDIR" ConnectionTimeout="360" >
<iis:WebAddress Id="myWebService_Bindings" IP="*" Port="9992" />
<iis:WebApplication Id="myWebService" Name="myWebService" WebAppPool="myWebService_Pool" ScriptTimeout="360" />
<iis:WebDirProperties Id="myWebService_Properties" AnonymousAccess="yes" WindowsAuthentication="no" DefaultDocuments="Default.ashx" Read="yes" Execute="yes" Script="yes" />
<iis:WebVirtualDir Id="myWebService_Download" Alias="download" Directory="FILEDOWNLOADDIR">
<iis:WebError ErrorCode="404" URL="/dostuff.ashx" SubCode="0"/>
</iis:WebVirtualDir>
</iis:WebSite>
我认为可能存在覆盖默认自定义错误页面的问题,因为它们是继承的,尽管在 IIS6 中似乎没有这样的问题。我希望 WiX 的默认行为只是覆盖已经存在的内容,但似乎并非如此。我还尝试通过将带有自定义错误所需的 xml 的 web.config 复制到下载文件夹来解决此问题,但是当我尝试查看“错误页面”列表时,IIS 中也出现了冲突。
我将非常感谢一些帮助。