Noo*_*Tom 7 shell administration cmd dos batch-file
我需要设置程序安装程序的交付.
该程序有一个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 \\rk0012352\Public\lkh5iwwh.m4s %TOOL_INSTALL_DIR%
START %PROGRAMFILES%\program_installer.exe
Run Code Online (Sandbox Code Playgroud)
问题是,当用户执行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(有提升的完整代码批次本身也是如此).