标题: [文件操作] 在含有特殊字符的文件夹执行含有空格文件名的批处理,无法以管理员权限运行 [打印本页]
作者: fly9902 时间: 2022-9-13 09:29 标题: 在含有特殊字符的文件夹执行含有空格文件名的批处理,无法以管理员权限运行
本帖最后由 fly9902 于 2022-9-13 09:36 编辑
如题:
例如 D:\@x265Encode\安装设置 - 复制.bat
文件夹含有@,批处理文件名含有空格,这两个条件同时具备的时候
这个批处理就无法获取以管理员权限运行,表现为一跳而过,后面的任何命令都无法执行,但如果去掉获取管理员权限的命令,后面的命令式可以正常执行的
@Echo OFF
%1 mshta vbscript:CreateObject("Shell.Application").ShellExecute("cmd.exe","/c ""%~dpnx0"" ::","","runas",1)(window.close)&&exit cd /d "%~dp0"
或者
@Echo OFF
setlocal EnableDelayedExpansion
Pushd %~dp0 & cd /d "%~dp0"
%1 %2
mshta vbscript:createobject("shell.application").shellexecute("%~s0","goto :runas","","runas",1)(window.close)&goto :eof
:runas
都无法运行,求教
作者: Batcher 时间: 2022-9-13 10:58
回复 1# fly9902
请参考Q-04把bat文件保存为ANSI编码:
https://mp.weixin.qq.com/s/Koje4FufWxWBs7ioDy_LJA
你用的系统是Win7还是Win10?试试这样可以吗:- @echo off
- %1 mshta vbscript:CreateObject("Shell.Application").ShellExecute("%~s0","::",,"runas",1)(close)&exit /b
- echo %cd%
- pause
复制代码
作者: fly9902 时间: 2022-9-13 11:24
回复 fly9902
请参考Q-04把bat文件保存为ANSI编码:
你用的系统是Win7还是Win10?试试这样可以 ...
Batcher 发表于 2022-9-13 10:58
批处理是ANSI编码的,操作系统是win11 22621.382,换你这个还是不行,一跳而过,都等不到pause让你暂停
作者: yakeyun 时间: 2022-9-13 15:42
本帖最后由 yakeyun 于 2022-9-13 17:18 编辑
回复 3# fly9902
同版本系统,测试正常。- @echo off & setlocal enabledelayedexpansion
-
- Pushd %~dp0 & cd /d "%~dp0"
- %1 %2
- mshta vbscript:createobject("shell.application").shellexecute("%~s0","goto :runas","","runas",1)(window.close)&goto :eof
- :runas
-
-
- title 批处理程序 by.SanLi
- color 07
- mode con: cols=80 lines=25
- chcp 936 >nul
- echo 当前系统时间:%date% %time%
-
- pause >nul
- exit
复制代码
作者: fly9902 时间: 2022-9-13 17:36
回复 fly9902
同版本系统,测试正常。
yakeyun 发表于 2022-9-13 15:42
放到带有@名称的文件夹运行就会一跳而过
作者: flashercs 时间: 2022-9-14 06:29
- @Echo OFF
- %1 %2
- mshta vbscript:createobject("shell.application").shellexecute("%~s0","goto :runas","","runas",1)(window.close)&goto :eof
- :runas
- cd /d "%~dp0"
- echo runas1:"%~f0" "%~s0"
- setlocal EnableDelayedExpansion
- echo runas2:"%~f0" "%~s0"
- endlocal
- pause
复制代码
作者: fly9902 时间: 2022-9-24 22:07
flashercs 发表于 2022-9-14 06:29
成功,谢谢
作者: hfxiang 时间: 2022-9-25 12:29
找到1个兼容性好像更好的方法,可以一试:
https://kkocdko.site/post/201804010101
作者: fly9902 时间: 2022-9-26 16:16
找到1个兼容性好像更好的方法,可以一试:
hfxiang 发表于 2022-9-25 12:29
妙,可以,感谢
欢迎光临 批处理之家 (http://bbs.bathome.net/) |
Powered by Discuz! 7.2 |