加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 综合聚焦 > 服务器 > 安全 > 正文

shell – 以管理员身份运行批处理文件 – Windows 7 – 从网络文

发布时间:2020-12-16 01:21:34 所属栏目:安全 来源:网络整理
导读:我需要设置程序安装程序的交付. 该程序有一个program_installer.exe和一个文件夹,我在创建安装程序时无法在安装程序中包含该文件夹. 因此,当用户需要安装程序时,我通过MAIL向他发送BATCH文件 @echo offif DEFINED PROGRAMFILES(X86) (SET TOOL_INSTALL_DIR="
我需要设置程序安装程序的交付.

该程序有一个program_installer.exe和一个文件夹,我在创建安装程序时无法在安装程序中包含该文件夹.

因此,当用户需要安装程序时,我通过MAIL向他发送BATCH文件

@echo off
if DEFINED PROGRAMFILES(X86) (
SET TOOL_INSTALL_DIR="%PROGRAMFILES(X86)%myfolder"
) else (
SET TOOL_INSTALL_DIR="%PROGRAMFILES%myfolder"
)

MKDIR %TOOL_INSTALL_DIR%
copy /y rk0012352Publiclkh5iwwh.m4s %TOOL_INSTALL_DIR%


START %PROGRAMFILES%program_installer.exe

问题是,当用户执行BATCH并运行COPY命令时,在Windows 7上该命令将失败,因为他没有ADMIN权限.

如何在XP和7上以管理员身份运行该复制命令?

您可能会说:当用户使用INSTALL.BAT获取EMAIl时,他是否可以单击RUN AS ADMINISTRATOR?

答案不幸的是,他们中的大多数人都不会这样做而只是抱怨它不起作用.此外,许多电子邮件客户端如Outlook将提示“打开”“保存”选择面板,大多数用户将直接点击打开(生成无权限错误)

“运行方式”命令需要指定机器的管理员名称,我不知道如何在每台计算机上调用管理员用户.

有什么建议吗?

这有点棘手,但可以做到.

首先,您必须知道(来自批处理文件)用户是否为管理员.如果是,那么你可以继续安装.如果不是,您可以运行另一个cmd.exe实例以管理员身份运行批处理文件(使用runas命令).

要检测用户是否是管理员,请查看以下帖子:http://www.tomshardware.co.uk/forum/169421-36-determine-batch-file-user-administrator(还有完整的代码来提升批次本身).

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读