本帖最后由 荣耀 于 2019-9-6 22:30 编辑
- @echo off
- >nul 2>&1 "%SYSTEMROOT%\system32\cacls.exe" "%SYSTEMROOT%\system32\config\system"
- if '%errorlevel%' NEQ '0' (
- goto UACPrompt
- ) else ( goto gotAdmin )
- :UACPrompt
- echo Set UAC = CreateObject^("Shell.Application"^) > "%temp%\getadmin.vbs"
- echo UAC.ShellExecute "%~s0", "", "", "runas", 1 >> "%temp%\getadmin.vbs"
- "%temp%\getadmin.vbs"
- exit /B
- :gotAdmin
- if exist "%temp%\getadmin.vbs" ( del "%temp%\getadmin.vbs" )
- title www.nat.ee
- color 2F
- :menu
- cls
- echo.
- echo. 创建一个新系统登陆账户,并设置为管理员权限
- echo.
- set /p u1="请输入新建帐户名称:"
- for /f " tokens=*" %%i in ('net user %u1%^|find /i "命令成功完成"') do (set user=%%i)
- if "%user%"=="%命令成功完成。" (
- echo 用户名已存在
- pause > nul
- goto menu
- )else (goto user1)
- :user1
- if %u1%=="" (
- echo.
- echo. 账户名不得为空,按任意键返回请重新输入,退出可直接点击关闭本程序窗口 (
- echo.
- pause > nul
- goto menu
- )
- :user2
- echo.
- set /p u2="再次输入新帐户名称:"
- if %u2%=="" (
- echo.
- echo. 账户名不得为空,按任意键返回请重新输入,退出可直接点击关闭本程序窗口
- echo.
- pause > nul
- goto menu
- )
- if %u1%==%u2% goto xjzh else (
- echo.
- echo. 两次输入不一致,按任意键返回请重新输入,退出可直接点击关闭本程序窗口
- echo.
- pause > nul
- goto menu
- )
- :xjzh
- net user %u1% /add /logonpasswordchg:yes
- net localgroup Administrators %u1% /add
- echo.
- echo. 用户【 %u1%】已创建,请重启计算机并选择新账户登陆,或在 管理计算机用户 中对账户进行设置
- echo.
- pause > nul
- exit
- pause
复制代码
你试试,这样应该没问题的了,解决了判断的问题。 |