Psexec错误代码-2146232576

时间:2014-11-03 18:35:56

标签: batch-file command-line remote-access psexec error-code

我正在尝试使用批处理文件和psexec.exe通过我的主桌面打开远程计算机上的.exe程序。

我已经能够使用pskill远程杀死程序,但是当我运行打开程序所需的命令行时,窗口会打开几分之一秒,然后由于错误而关闭。它给出的错误代码是:-2146232576。

我已经尝试使用谷歌搜索这个错误实际上是什么,但我找不到多少。有谁知道这个错误与此有什么关系?

这是我制作的批处理文件不起作用:

cd c:\Users\[local user]\Downloads\PSTools\
psexec.exe \\computername -u [user] -p [password] "C:\Users\[user]\Desktop\SQAUtilities\utlity.exe"

注意:我在StackOverflow上发现了一个类似但有错误代码的问题:

psexec error code -1073740771

还有:

Error code 1073741502 when running psexec through TeamCity

这个答案说错误是“低级.NET初始化错误,CLR无法加载”:

visual studio 2010: error code -2146232576 (0x80131700)

3 个答案:

答案 0 :(得分:1)

这可能是PSExec传回给你的utility.exe的退出代码,而不是PSExec生成的错误。

以下是一个可能的来源: FIX: 0x80131700 error code when starting or configuring the Enterprise Single Sign-On Service

我不知道utility.exe的作用,但如果它尝试执行Windows身份验证,PSExec可能会阻止它。根据我的经验,PSExec故意阻止某些行为(在某些情况下)。例如,如果您不使用用户名/密码,则所有访问远程共享的尝试都会立即失败。 由于您提供了一些信用,这可能不是确切的问题,但如果utility.exe需要访问您的Kerberos票证或其他内容,则可能无法在PSExec会话中访问它们。

要尝试的事情

  • 您是否知道此命令(utility.exe)在交互式运行时(GUI登录)作为用户在远程计算机上运行?当然你已经尝试过,但只是为了确保......
  • 是远程计算机上的构建目录还是第三台计算机上的共享?访问这些文件的方法可能需要在PSExec中执行更多步骤(例如映射驱动器等)。
  • 如果程序绝对需要GUI,则可能必须允许它使用PSExec的-i参数与特定的GUI会话进行交互。您可以尝试登录远程计算机,使用-i 2运行命令(或任何会话qwinsta告诉您正在使用-2对于远程桌面连接是常见的)并查看它是否打开任何错误对话框这些信息更丰富。
  • 您可以尝试在运行PSExec命令的同时在远程计算机上运行ProcMon,并查看是否存在任何ACCESS_DENIED或其他故障。

答案 1 :(得分:1)

远程运行EXE安装文件时遇到同样的错误(不要将其复制到本地)。尽管我可以告诉这是一个与权限不足有关的错误。对我来说,简单添加-S开关(以SYSTEM身份运行)解决了我的问题。

为什么这样做我不确定 - 我一直认为SYSTEM严格限于本地资源,但我正在运行的EXE位于网络共享上。

希望这有助于某人。

答案 2 :(得分:0)

我最近遇到了同样的错误,并找出了为什么得到这个错误。 您必须先在远程计算机上制作“ utility.exe”的本地副本,然后才能通过PsExec启动它。

    for /f "usebackq delims=" %%i in ("d:\utility\remote_computers.txt") do (
    xcopy "D:\utility\utility.exe" "\\%%i\d$\" && psexec \\%%i -u %%i\administrator -p password cmd /c "/i \\%%i\d$\utility.exe"
)
Pause