[新手上路]批处理新手入门导读[视频教程]批处理基础视频教程[视频教程]VBS基础视频教程[批处理精品]批处理版照片整理器
[批处理精品]纯批处理备份&还原驱动[批处理精品]CMD命令50条不能说的秘密[在线下载]第三方命令行工具[在线帮助]VBScript / JScript 在线参考
返回列表 发帖

[系统相关] 批处理为何以管理员权限运行闪退

批处理文件名称如下:
第一次请先运行(64位).cmd
内容如下:
  1. @echo off
  2. copy *.dll                  %windir%\SysWOW64 /y
  3. copy *.ocx                  %windir%\SysWOW64 /y
  4. %windir%\SysWOW64\regsvr32 midas.dll
  5. %windir%\SysWOW64\regsvr32 Biokey.ocx
  6. %windir%\SysWOW64\regsvr32 VisualCard.ocx
复制代码
32位的是copy到system32,这个批处理改名比如改名为www.cmd,右键以管理员权限运行没有问题,不改名双击运行就闪退,打开cmd命令行,然后运行这个批处理也没有问题。
不知道是什么原因。

回复 2# 老刘1号


    兄弟这个没有用的。已经试过了。

TOP

本帖最后由 freesoft00 于 2018-9-1 15:36 编辑

改名,双击,右键管理员运行,cmd中运行都可以。
不改名,双击可以,cmd中可以,右键管理员运行不行。
Administrator用户登录,uac状态是禁用状态。

昨天的一台机器是uac启用状态,也是同样的问题,代码我是实在没有看到有哪里问题,没有错误提示,cmd中运行时正常的。一开始就先加大pushd
批处理文件编码也是ansi

两天电脑都安装了sql 2005,一台有杀毒软件,一台是vmware虚拟系统裸机。
下面是这台电脑的环境变量:
C:\Users\Administrator>path
PATH=C:\Windows\system32;C:\Windows;C:\Windows\System32\Wbem;C:\Windows\System32
\WindowsPowerShell\v1.0\;C:\Program Files (x86)\Microsoft SQL Server\80\Tools\Bi
nn\;C:\Program Files\Microsoft SQL Server\90\Tools\binn\;C:\Program Files (x86)\
Microsoft SQL Server\90\Tools\binn\;C:\Program Files (x86)\Microsoft SQL Server\
90\DTS\Binn\;C:\Program Files (x86)\Microsoft SQL Server\90\Tools\Binn\VSShell\C
ommon7\IDE\;C:\Program Files (x86)\Microsoft Visual Studio 8\Common7\IDE\Private
Assemblies\

TOP

回复 5# 老刘1号


    任意,wwee.bat 3344.cmd 好吧.cmd,什么都可以,唯独 第一次请先运行(32位).cmd  第一次请先运行(64位).cmd 不行

TOP

回复 7# /zhqsystem/zhq


    恩,确实是英文括号的问题,不知道为什么会这样呢?

TOP

回复 7# /zhqsystem/zhq


    想了想还是有点疑问。
去掉括号也属于改名了。
不改名有括号的时候为什么双击可以正常运行,在cmd中也可以正常运行。

TOP

回复 11# WHY


    一楼倒没有必须使用那个名称的问题。
只是想弄明白这个问题,不能不求甚解就过去了。
多谢详细解释了!

TOP

回复 11# WHY


    那么类似的问题,网上的那些右键获取管理员权限的右键菜单,我看注册表的命令是:
cmd.exe /c takeown /f "%1" /r /d y && icacls "%1" /grant administrators:f /t
其中的%1也可以添加两个双引号是不是?都可以这样处理。

TOP

返回列表