1

我正在尝试使用以下命令在远程服务器上安装 .msi:

psexec \\computername -u adminname -p password -s -i msiexec.exe /i C:\share\myfile.msi

当我启动它时,我在遥控器的进程资源管理器中看到 msiexec.exe 进程,但该进程似乎处于空闲状态,并且在我关闭父进程 (psexec) 之前它一直保持这种状态。我知道那个 msi 直接在远程机器的 C:\ 驱动器中创建了一些文件夹,所以可能是管理员的问题吧?我给予的 -u 和 -p 在遥控器上具有管理员权限。

psexec -u adminname -p password -s -i msiexec.exe /i C:\share\myfile.msi如果我直接在遥控器上输入它就可以了。有什么我做错了吗?

更新:如果我删除 -i,我会在启动 psexec 后得到 msiexec.exe 退出,代码为 0。

更新 2:我尝试使用 c# 和 WMI 在同一台服务器上执行相同的操作,但出现以下错误:发生安全包特定错误。(HRESULT 例外:0x80070721)可能它们都来自同一个问题/安全选项。

4

4 回答 4

2

我通过将 msi 文件复制到远程服务器解决了我的问题。

Copy-Item FileToInstall.msi -Destination \\Server\C$\DestinationFolder
psexec \\Server cmd /c "msiexec.exe /i C:\DestinationFolder\FileToInstall.msi /quiet /norestart"
于 2015-08-05T16:10:25.933 回答
0

Psexec 需要知道远程工作目录 (-w) 尝试: psexec \\computername -u adminname -p password -w c:\share -s -i msiexec.exe /i myfile.msi

于 2013-06-22T21:27:22.897 回答
0

也尝试通过 -h 来强制提升。它为我解决了同样的问题!在你的情况下:

psexec \\计算机名-h -u 管理员名 -p 密码 -wc:\share -s -i msiexec.exe /i myfile.msi

于 2014-09-05T10:22:49.167 回答
0

你应该添加/qn!抑制 ui 并添加 /l*v log.txt 以生成日志文件

于 2013-06-23T06:56:10.967 回答