我需要运行一个批处理文件(setup.bat),它将调用另一个批处理文件(make_dir.bat),它将在“C:\ Program Files”目录中创建一个文件夹。这适用于内部安装程序。所有用户都将使用他们的用户名登录,但将具有本地管理员权限。我尝试了两种方法,但都不起作用。
方法一:
SET PRGFILES=%programfiles%\mySoftware
SET admin=N
SET domain=%USERDOMAIN%\
IF /i "%domain%" EQU "%computername%\" set domain=
SET user=%domain%%username%
FOR /f "Tokens=*" %%a IN ('net localgroup administrators^|find /i "%user%"') DO SET admin=Y
IF "%admin%"=="Y" (
MD "%PRGFILES%"
)
这说Access is denied
方法二:
runas /user:%Username% shell\make_dir.bat
make_dir.bat 在哪里
md "%programfiles%\mySoftware"
这要求提供当前的用户名和密码,但之后不知何故失败了。我检查了所有用户都具有本地管理员权限,并且可以在他们的文件夹中手动创建一个文件programfiles
夹。
谢谢您的帮助。