【发布时间】:2012-09-18 22:18:05
【问题描述】:
如何让runCommand provider 在Manifest.xml 中工作
通过 Web 平台安装程序安装时的 MS Deploy 包?
我正在尝试构建一个可以通过以下方式安装的简单测试 MS Web Deploy 包
通过custom feed 安装Web 平台安装程序。我正在尝试使用
Manifest.xml 文件中的 runCommand 提供程序:
<?xml version="1.0" encoding="utf-8" ?>
<msDeploy.iisApp>
<iisApp path="IISWSGISampleApp" />
<runCommand path="set" />
</msDeploy.iisApp>
set 仅用于输出命令运行的环境
下,但它不适用于任何数量的不同path
价值观。当我通过带有任何 path 属性的 Web 平台安装程序安装软件包时
我得到同样的错误:
[13:54:312]Source runCommand (set) does not match destination (set) differing in attributes (isSource). Update pending.
[13:54:315]Updating runCommand (set).
Details:
operationType: Update
providerName: runCommand
path: set
EXCEPTION: System.IO.FileNotFoundException: Could not find file '\\?\C:\Users\rpatterson\Documents\My Web Sites\IISWSGISampleApp'.
File name: '\\?\C:\Users\rpatterson\Documents\My Web Sites\IISWSGISampleApp'
...
如果我从Manifest.xml 中删除<runCommand> 元素,它安装得很好。我还确认当 WebPI 显示错误时,C:\Users\rpatterson\Documents\My Web Sites\IISWSGISampleApp 确实存在。另外,我发现\\?\ 样式路径是针对safely referencing long paths in Windows 的,所以可能是长路径支持的某些部分被破坏了。
我在 Windows 7 Professional, Web Platform 下做这一切 安装程序 4.0 和 Web Matrix 2.0 RC,其 about 对话框显示:
Version 2.0 RC
WebMatrix: 7.1.1587.0
IIS Express: 8.0.8298.0
.NET Framework: 4.0.30319.17379 built by: FXBETAREL
Web Deploy: 7.1.1516.0
SQL Server Compact: 4.0.8854.1
Web Platform Installer: 7.1.1586.1
ASP.NET Web Pages: 2.0.20505.0
ASP.NET Web Pages: 1.0.20105.407
这一切背后的代码都在IISWSGI on GitHub、use this commit 中进行测试。重现 我正在使用的环境,请参阅IISWSGI documentation。
【问题讨论】:
标签: iis webmatrix msdeploy web-platform-installer