使用VS2010中的WebDeploy在Web服务器上执行CMD

时间:2012-01-16 11:01:42

标签: asp.net web-deployment

我想在VS2010的部署操作之前和之后,在Web服务器上执行一些批处理文件(我可以控制它的IIS)。

我在服务器的IIS上添加了一个“runCommand”提供程序,并将此代码添加到.csproj文件中:

<Target Name="AddingCMDtoManifest">
  <Message Text="Adding CMD to Manifest" />
  <ItemGroup>
    <MsDeploySourceManifest Include="runCommand">
      <path>C:\blahblah.bat</path>
    </MsDeploySourceManifest>
  </ItemGroup>
</Target>

但似乎没有任何改变,我错过了什么?

1 个答案:

答案 0 :(得分:0)

也许您需要在正确的阶段执行目标。我做了以下事情并且有效。

<PropertyGroup >
    <RunCommandPath>DeploySettings\NightlyBuild.RunCommand.cmd</RunCommandPath>
  </PropertyGroup>

  <Target Name="SetupCustomManifestProviders" BeforeTargets="AddContentPathToSourceManifest">
    <ItemGroup>
      <MsDeploySourceManifest Include="runCommand">
        <Path>$(RunCommandPath)</Path>
        <dontUseCommandExe>true</dontUseCommandExe>
        <waitInterval>10000</waitInterval>
        <AdditionalProviderSettings>dontUseCommandExe;waitInterval</AdditionalProviderSettings>
      </MsDeploySourceManifest>
    </ItemGroup>
  </Target>