我在使用 PSEXEC 在远程计算机上运行批处理文件时遇到问题。
该文件运行,但不像通过远程桌面运行时那样运行。
该批处理运行一个 32 位应用程序文件,该文件打开多个 16 位应用程序,这些应用程序都应该在一个 ntvdm.exe 下运行(在一个内存空间中)。
通过远程桌面,批处理文件在 explorer 进程下运行,并且仅打开一个 ntvdm.exe 即可正常运行。使用 PSEXEC 批处理可以运行,但不在 explorer 进程下运行,每个进程都会打开一个单独的 ntvdm.exe。
我发现在 PSEXEC 中从资源管理器运行批处理是可行的,但会出现“文件下载 - 安全警告”,例如 psexec.exe" \compname -u username -p passowrd -s -d -i 0 explorer C:\Program.bat
我希望能够成功运行批处理而不收到警告,这是一个本地警告,而不是网络共享警告。可以在运行中输入“explorer C:\windows\system32\cmd.exe”来重新创建警告
我想知道是否有人知道如何让 PSEXEC 打开批处理文件,就像它是由 explorer 启动的一样。或者删除本地“文件下载 - 安全警告”的方法
谢谢
更新:
放弃这种方法是不会有任何结果的。
相反,我使用 PSexec 将需要运行的文件复制到启动中,然后使用 PSShutdown 强制 PC 重启。虽然不太优雅,但可以完成工作。
答案1
您是否尝试复制批处理文件,然后使用“at”命令安排批处理文件在几分钟内在远程计算机上运行?
另外,使用 WMI 而不是 psexec 来启动它:发送批处理文件到 Windows 机器并执行它
(此外,有没有办法关闭问题而不接受 ServerFault 上的任何答案,这样它们就不会被保留为“未回答”?)
答案2
我实际上认为您最好发布有关“文件下载 - 安全警告”问题的问题,这是这里的核心问题。您安装了哪些服务包和 IE 版本?我通常会在与 IE 安全相关的问题中看到此错误。
无论如何,就解决方法而言,我想知道使用带有“交互”选项的任务计划程序是否适合您?(或者使用带有 /interactive 标志的 AT 命令)
另一种可能性是看看本次讨论中的想法是否适用?:http://www.winvistatips.com/file-download-security-warning-t526234.html
另一个想法是看看 RCE(远程命令执行器)是否与 PSEXEC 的工作方式不同……? http://sourceforge.net/projects/rce/
答案3
如果将批处理文件复制到远程系统上的本地驱动器并使用 PSExec 运行本地文件,会发生什么情况?
此外,如果我没记错的话,PSExec 是作为服务运行的。这也许可以解释差异。
格雷格
答案4
如果您设置 GPO 以将可执行文件的源添加到受信任的主机列表,您就可以解决问题。