2

Window Server 2008 でスクリプトを実行する必要があります。そのために Jenkins を使用します。バッチ コード (MainCode.bat) は次のとおりです。

cd "C:\temp"
cscript install.vbs

install.vbs は、アプリケーションを特定のディレクトリにインストールするだけです。コードの抜粋は次のとおりです。

Set wshshell = wscript.CreateObject("WScript.Shell") 
strCmd = "cmd /K C:\temp\InstallApp.exe -c -dir C:\ProductDir"
Wshshell.run (strCmd)
WScript.Sleep 2000
' choice of languages
WshShell.SendKeys "1"
WshShell.SendKeys "~"
    ...

このスクリプトをテストするために、Window Server 2008でMainCode.bat を直接実行したところ、見事に機能しました。
Jenkins 経由で実行している間、スクリプトは実行されません。エラー メッセージは表示されず、インストールは完了しません。

Jenkins 経由で MainCode.bat を呼び出すコードは次のとおりです。

call "C:\temp\MainCode.bat".
4

1 に答える 1

4

SendKeys を使用しているため、実行するプロセスは GUI アプリケーションであると想定しています。Windows サービスとしてヘッドレス モードで Jenkins スレーブを実行している可能性があります。この場合、GUI アプリケーションに問題が発生します。Jenkins スレーブ エージェントを jnlp として実行する必要があります。

于 2013-08-07T03:29:24.967 に答える