psexec是否允许从远程位置安装服务?

时间:2014-01-27 13:17:59

标签: service msbuild psexec

我有一个msbuild脚本,它使用psexec在我的DEV环境中安装服务。一切正常。现在我想针对UAT运行它,而不是服务exe位于应用服务器上的共享文件夹上,它位于NAS /网络文件夹中,我收到错误。

使用psexec可以实现吗?

以下作品:

psexec.exe \\my-app-server -u DOMAIN\MyServiceAccount -p MyServiceAccountPassword \\my-app-server\MyShare\MyService.exe install /instance:DEV

但这不起作用:

psexec.exe \\my-app-server -u DOMAIN\MyServiceAccount -p MyServiceAccountPassword \\my-NAS\MyShare\MyService.exe install /instance:UAT1

我收到错误

PsExec could not start \\my-NAS\MyShare\MyService.exe on my-app-server:
The system cannot find the file specified.

以下是生成上述内容的msbuild脚本:

<Exec Command="psexec \\$(TargetServer) -u $(ServiceAccountUn) -p $(ServiceAccountPw)  $(TargetServiceInstallPath) install /instance:$(Environment)"/>

我也试过从命令行直接运行psexec,所以我猜msbuild与问题没有任何关系,因为这会产生相同的结果。

2 个答案:

答案 0 :(得分:0)

在尝试安装exe / dll文件之前,必须存在这些文件。 psexec有一个-c标志来复制你正在尝试运行的应用程序。

答案 1 :(得分:-1)

我得出的结论是,这是不可能的。