0

ビルド テンプレートに InvokeProcess アクティビティがあります。PsExec.exe をビルド マシンの %windir%\system32\ フォルダーに配置し、InvokeProcess アクティビティで FileName を "PsExec.exe" として指定し、Arguments でいくつかのパラメーターを指定しました。しかし、ビルドを実行すると、「File Not Found: PsExec」というエラーが表示されます。「%windir%\system32\PsExec.exe」や「%windir%\system32\PsExec.exe」などのファイル名も試しました。Run from build machine で「psexec」と入力しようとすると、すべてが完璧に機能します。

もう一つ。ビルド コントローラーが実行されているマシンまたはビルド エージェントが実行されているマシンに PsExec を配置する必要がありますか?

4

1 に答える 1

2

AgentScopeアクティビティ内でInvokeProcessを呼び出す場合は、ファイルをビルドエージェントマシンに配置する必要があります。それ以外の場合は、ビルドコントローラーマシン上にある必要があります。

ご想像のとおり、.NETFrameworkのProcessクラスを使用してプロセスを呼び出します。ファイル名は、ProcessStartInfoのFileNameプロパティに設定されます。このプロパティに必要な基準はすべて、InvokeProcessに必要です。

最後に、リテラルパスC:\ Windows \ System32 \ PsExec.exeを使用して、Processオブジェクトがパスを取得できない可能性のある奇妙なことを除外してみましたか?

于 2012-02-29T14:54:03.353 に答える