在我的Visual Studio 2010 SP1Rel中,MS Web部署突然停止使用此错误:
Unrecognized argument 'Web'. All arguments must begin with "-".
论证" Web"是指参数"默认网站",即如果路径包含空格,则无法部署Web部署。这工作到今天。
如果我将我的网站重命名为DefaultWebSite(无空格),则错误消息将更改为:
Unrecognized argument 'Source=10.10.10.1\MSSQLSERVER,1432;Initial'.
All arguments must begin with "-".
关于同一错误还有其他问题,但情况不同。我正在使用内置的Web部署对话框。
相同的错误,但对于批处理脚本:MSDeploy batch file does not handle quotes anymore 同样的错误,但在powershell中:How do you call msdeploy from powershell when the parameters have spaces?
这些问题与安装VS 2010 SP1有关。我没有安装SP1。它可能已自动安装在Windows更新中。
如何在使用MS部署对话框时解决此错误(在VS中右键单击项目并单击“部署”)?
答案 0 :(得分:1)
这是UseMSDeployExe标志工作方式的错误;它为WebDeploy生成一组无效的命令行参数。尝试从wpp.targets文件中删除该行,它应该可以正常工作。此错误将在以后的版本中修复。
附注:UseMSDeployExe主要用作VS团队的测试挂钩,用于调试WebDeploy的问题。 VS有两种不同的模式:进程内使用WebDeploy(通过反思我认为),以及通过外壳到msdeploy.exe(因此使用MSDeployExe标志)的进程外进程。设置UseMSDeployExe没有什么好处,除非你正在寻找VS传递给WebDeploy的命令参数。