web-dev-qa-db-ja.com

psexecを使用してファイルをリモートでGACする際の問題

展開プロセスの一環として、一連のファイルをGACしようとしています。実際のビルドプロセスはビルドサーバーで発生します。psexecを使用して、ビルドを要求したマシン上のファイルをGACしようとしています。

私が実行しようとしている現在の行は次のとおりです。

C:\ PsTools> psexec.exe\COMPUTER -u USER -p PASS gacutil.exe -i Assembly.dll -f

私が戻ってきたエラーは次のとおりです。

アセンブリをキャッシュに追加できませんでした:システムは指定されたファイルを見つけることができません。

したがって、明らかにdll参照はリモートボックスにあり、残念ながらdllはビルドボックスにあります。どういうわけかpsexecでこれを行う方法はありますか、それとも\\ COMPUTERの一時的な場所にコピーする必要がありますか? psexecプロセスの一部として実行可能ファイルをコピーするコマンドがあることは知っていますが、サポートファイルに類似したものが見つからないようです。

1
Andrew Dunaway

最初にこのファイルをサーバーにコピーする必要があると言います。あるいは、ビルドサーバーからファイルを共有し、psexecコマンドでそれを参照することもできます。

例えば.

psexec.exe\COMPUTER -u USER -p PASS gacutil.exe -i\buildbox\share\Assembly.dll -f

覚えておくべき唯一のことは、リモートプロセス(ターゲットコンピューターで実行されている)はシステムアカウントのコンテキストで実行され、ネットワーク共有でこれに対応する必要があるということです。

それが役立つことを願っています

2
commandbreak