我有一个C#程序可以自动测试远程计算机上的内容。我可以从我的开发机器本地运行它,但通常它是从我们的TeamCity服务器上的构建代理运行的。 除了运行虚拟文件以确认机器已启动并运行之外,该命令不会执行任何操作:
PsExec.exe \\10.2.1.216 -u TestUser -p *** -h -accepteula -nobanner -c -f -w C:\ dummy.cmd
在我的机器上运行良好:
PsExec.exe \\10.2.1.216 -u TestUser -p *** -h -accepteula -nobanner -c -f -w C:\ dummy.cmd
Connecting to 10.2.1.216...
Starting PSEXESVC service on 10.2.1.216...
Connecting with PsExec service on 10.2.1.216...
Copying dummy.cmd to 10.2.1.216...
Starting dummy.cmd on 10.2.1.216...
dummy.cmd exited on 10.2.1.216 with error code 0.
然而,在TC服务器上,它失败了,非常模糊"句柄无效"错误:
PsExec.exe \\10.2.1.216 -u TestUser -p *** -h -accepteula -nobanner -c -f -w C:\ dummy.cmd
The handle is invalid.
Connecting to 10.2.1.216...
Couldn't access 10.2.1.216:
RunCommand process exited with 6