2010-04-22 40 views
5

嘗試使用MSDeploy「runCommand」提供程序在遠程計算機上執行.cmd文件時遇到錯誤。預期的運行時間應該是大約10秒,但MSDeploy只運行它大約2-3秒,然後返回錯誤詳細信息。MSDeploy:使用runCommand提供程序調用遠程.cmd文件時出錯(超時)

下面是完整的MSDeploy 「runCommand」 命令行的文本,我使用:

    msdeploy.exe -verb:同步 - 源:runCommand = 「d:\ Web部署測試儀\ test_cmd.cmd」,dontUseCommandExe =假,waitAttempts = 5,waitInterval = 1000 -dest:汽車,計算機名= HTTP://測試機:89/MsDeployAgentService /,用戶名= AAA,密碼= BBB

下面是錯誤的詳細信息返回:

    錯誤'錯誤:(4/21/2010 12:19:25 PM)當req發生錯誤在遠程計算機上處​​理了uest。

    錯誤:進程'C:\ WINDOWS \ system32 \ cmd.exe'(命令行'/ c「D:\ web deploy tester \ test_cmd.cmd'')被終止,因爲它超出了等待時間。

    錯誤計數:1.

    「發生在調用RunCommand

任何想法,爲什麼發生這種情況,如何解決?

+0

我有同樣的問題,不管我指定的waitInterval如何,msdeploy立即返回這個錯誤,當它清楚地沒有在錯誤之前等待指定的時間。 – 2010-09-13 10:57:15

+0

我注意到,當我在一個批處理文件中使用它時,我正在使用'"',我犯了一個錯誤,在命令路徑的引用中包含'waitInterval',而不是在其外面:'.. ",waitInterval ... – 2014-04-23 18:37:31

回答

6

您應該指定較高的waitInterval值。該值以毫秒爲單位。你可能想嘗試20000(20秒)。默認值是1000.

+2

感謝您的迴應,Sayed。我已經嘗試過您的建議,甚至已經完成了幾分鐘的過程,但這不能解決問題。 另外,根據runCommand文檔,看起來您提到的設置是重試之間的時間間隔的長度,而不是遠程命令在超時之前完成其執行的時間。 可以從本地計算機上的命令提示符運行.cmd,而不會有任何問題,並且運行該操作的帳戶具有管理級別權限。任何其他理論爲什麼這是發生? – dabuild 2010-05-04 15:39:22

+1

討厭說出來,但是「我也是」。我在我的SourceManifest.xml中有一個「runCommand」,並且waitInterval/waitAttempts似乎被忽略 – 2011-05-14 10:20:31

+2

我設法讓MsDeploy.exe通過設置waitAttempts = 1和waitInterval = 20000來執行其他默認操作,但這不是我預期並已放棄runCommand提供程序 – 2011-05-14 13:21:04

相關問題