【问题标题】:Psexec Error Code -2146232576Psexec 错误代码 -2146232576
【发布时间】:2014-11-03 18:35:55
【问题描述】:

我正在尝试使用批处理文件和 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)

【问题讨论】:

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


    【解决方案1】:

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

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

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

    尝试的事情

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

    【讨论】:

    • 感谢您的快速回复。 Utility.exe 从构建目录复制最新版本的程序,安装它,然后执行它。远程计算机未运行 Windows Enterprise,因此我不确定建议的修复是否适用?
    • @Benjulious 链接的知识库文章中列出的错误包括 SQL 连接错误。
    【解决方案2】:

    远程运行 EXE 安装文件时遇到同样的错误(不是在本地复制它)。据我所知,这是与权限不足有关的错误。对我来说,简单添加 -S 开关(以 SYSTEM 身份运行)解决了我的问题。

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

    希望这对某人有所帮助。

    【讨论】:

      【解决方案3】:

      我最近遇到了同样的错误,并找出了我得到这个的原因。 在通过 PsExec 启动它之前,您必须在远程计算机上制作“utility.exe”的本地副本。

          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
      

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 2018-02-17
        • 2014-09-14
        • 2022-12-11
        • 1970-01-01
        • 2016-08-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        相关资源
        最近更新 更多