找回密码
 注册
搜索
[新手上路]批处理新手入门导读[视频教程]批处理基础视频教程[视频教程]VBS基础视频教程[批处理精品]批处理版照片整理器
[批处理精品]纯批处理备份&还原驱动[批处理精品]CMD命令50条不能说的秘密[在线下载]第三方命令行工具[在线帮助]VBScript / JScript 在线参考
查看: 23084|回复: 12

[系统相关] 批处理如何实现域管理员运行软件?

[复制链接]
发表于 2021-11-5 08:51:19 | 显示全部楼层 |阅读模式
本帖最后由 aitest 于 2021-11-8 15:58 编辑

目的:制作成bat,封装管理员密码,转成exe。发给域用户临时安装软件使用
方向:域用户一健完成安装
  1. @echo off
  2. start /wait D:\ET\64\Everything.exe
  3. RunAsAdmin()
  4. Func RunAsAdmin()
  5. Local $sUserName = "*"
  6. Local $sPassword = "*"
  7. Local $DOMAIN = "*"
  8. Local $pid = RunAs($sUserName,$DOMAIN,$sPassword,0,"Everything.exe","D:\ET\64\Everything.exe",@SW_HIDE)
  9. EndFunc
复制代码
程序可以启动安装界面,域管理员权限不生效。

试过
@echo off
runas user:* "D:\ET\64\Everything.exe"
程序启动安装,cmd提示需要输入密码 ,微软bat不支持装入密码。请问怎么解决?

最后找到一段:
set WshShell = WScript.CreateObject("WScript.Shell") WshShell.run "runas /user:test %comspec%"

,,Open command prompt

WScript.Sleep 1000

WshShell.SendKeys "111111" "send password WshShell.SendKeys"{ENTER}"

WScript.Sleep 1000

,,open ET

WsheShell.SendKeys Chr(34) + "D:\Everything\Everything.exe" + Chr(34)

WsheShell.SendKeys "{ENTER}"

WsheShell.SendKeys "exit"

,,Close command prompt

WsheShell.SendKeys "{ENTER}"

还是不行,请问哪里错了?
发表于 2021-11-5 14:20:17 | 显示全部楼层
回复 2# idwma


    有点搞不明白, 这是在用 Everything.exe 做什么操作? 这软件不是搜索的吗? 代码在安装哪个软件?
 楼主| 发表于 2021-11-5 15:04:34 | 显示全部楼层
回复 4# idwma
第一天接触bat,0基础,可否给个完整代码
 楼主| 发表于 2021-11-5 15:08:35 | 显示全部楼层
本帖最后由 aitest 于 2021-11-5 15:18 编辑

回复 2# idwma
输入没反应,程序没启动安装?
 楼主| 发表于 2021-11-5 15:23:45 | 显示全部楼层
回复 3# 5i365
重要是代码怎么写,而不是启动什么软件
 楼主| 发表于 2021-11-5 15:31:07 | 显示全部楼层
回复 4# idwma

大哥干货在哪里,T级种子交换
发表于 2021-11-5 15:44:13 | 显示全部楼层
感觉是不是要开启winrm远程才行?
发表于 2021-11-5 16:09:28 | 显示全部楼层
回复 12# idwma


    有反应, 会有一个用户登陆框出来
 楼主| 发表于 2021-11-5 16:17:46 | 显示全部楼层
本帖最后由 aitest 于 2021-11-5 16:38 编辑

回复 13# 5i365

Start-Process powershell.exe -Credential "D:\Everything\Everything.exe"
弹出登录框,也跑题了。
@echo off
runas user:* "D:\ET\64\Everything.exe"
我这样也可以启动啊,代码更少。
我要把密码写进去。
效果:用户双击脚本,只弹出程序安装软件界面,无需输入密码
 楼主| 发表于 2021-11-5 16:32:45 | 显示全部楼层
回复 15# idwma

Start-Process powershell.exe -Credential "D:\Everything\Everything.exe"
Credential (New-Object System.Management.Automation.PSCredential('test@test.com', (ConvertTo-SecureString '111' -AsPlainText -Force)))
弹出输入密码框,这个没用啊。
发表于 2021-11-5 16:49:32 | 显示全部楼层
回复 14# aitest


    我感觉, 他的问题, 应该是在同一台电脑上, 只是不同的帐户, 因为那个帐户没有权限, 又想安装软件, 所以管理员就写个批处理让那个帐户运行批处理来安装软件, 但是批处理里面添加了管理员的帐户和密码, 这样那个帐户就能直接双击执行了,
发表于 2021-11-6 11:49:24 | 显示全部楼层
回复 14# aitest


推荐阅读:
http://bbs.bathome.net/thread-1285-1-1.html#pid6549

然后放弃 runas 这条路,另觅他法。
 楼主| 发表于 2021-11-8 14:10:40 | 显示全部楼层
回复 17# 5i365
对的,没错,给点代码
您需要登录后才可以回帖 登录 | 注册

本版积分规则

Archiver|手机版|小黑屋|批处理之家 ( 渝ICP备10000708号 )

GMT+8, 2026-3-20 23:06 , Processed in 0.034212 second(s), 17 queries .

Powered by Discuz! X3.5

© 2001-2026 Discuz! Team.

快速回复 返回顶部 返回列表