我想在远程计算机上执行bat文件,我尝试了WMI和PSEXEC。我得到“没有进程在管道的另一端。”我尝试运行下面的psexec命令时出错。
C:\Users>psexec \\111.111.111.111 -u "sss\user1" -p "ss-12" "\\111.111.111.111\d$\r.bat"
以下是整个输出:
PsExec v2.11 - Execute processes remotely
Copyright (C) 2001-2014 Mark Russinovich
Sysinternals - www.sysinternals.com
Connecting to 111.111.111.111...
Starting PSEXESVC service on 111.111.111.111...
Connecting with PsExec service on 111.111.111.111...
Error reading public key length from PsExec services:
No process is on the other end of the pipe.
但是,以下WMI命令工作正常。请帮忙。
wmic /USER:"sss\user1" /PASSWORD:"ss-12" /NODE:111.111.111.111 process call create "D:\r.bat"
答案 0 :(得分:1)
尝试停止PSEXESVC服务。
pskill \\HOSTNAME PSEXESVC
在您的情况下,您将运行:
pskill \\111.111.111.111 -u "sss\user1" -p "ss-12" PSEXESVC
答案 1 :(得分:0)
遇到了同样的问题。
我发现了两种解决方法,如果您要在生产环境中运行远程机器/服务器,那么这两种方法都是不可接受的。
第一个解决方法:重新启动计算机。它有80%的时间解决了问题。
第二种解决方法,在powershell中运行:
sc.exe stop PSEXESVC
Remove-Item –path 'C:\Windows\PSEXESVC.exe'
Remove-Item -Path hklm:\SYSTEM\CurrentControlSet\Services\PSEXESVC -Confirm:$false
然后重新启动。
运行更多PSEXEC命令后,问题再次出现。如果找到解决方案,将进行更新。