Quando eu tento usar programas simples como battoexe.exe
converter meu .bat
para .exe
e executá-lo, ele não funciona como se eu fosse para correr diretamente do arquivo de lote ...
Meu código para o script em lote é o seguinte:
@echo off
:: BatchGotAdmin
:-------------------------------------
REM --> Check for permissions
>nul 2>&1 "%SYSTEMROOT%\system32\cacls.exe" "%SYSTEMROOT%\system32\config\system"
REM --> If error flag set, we do not have admin.
if '%errorlevel%' NEQ '0' (
goto UACPrompt
) else ( goto gotAdmin )
:UACPrompt
echo Set UAC = CreateObject^("Shell.Application"^) > "%temp%\getadmin.vbs"
set params = %*:"=""
echo UAC.ShellExecute "cmd.exe", "/c %~s0 %params%", "", "runas", 1 >> "%temp%\getadmin.vbs"
"%temp%\getadmin.vbs"
del "%temp%\getadmin.vbs"
exit /B
:gotAdmin
pushd "%CD%"
CD /D "%~dp0"
:--------------------------------------
net user administrator /active:yes
pause
Se eu executei o arquivo em lotes, ele realmente habilita a conta de administrador, no entanto, se eu o executei como um .exe
arquivo, nenhum dos meus códigos neste script funciona ...
Como faço para que funcione ou existe um bom programa que faz isso?
Eu testo um deles. Mas o conversor bat2exe é ridículo. Eles apenas extraem o arquivo bat na pasta temp e os executam como de costume. Você tem que codificar esse arquivo exe em C ++ / C # ou outro.
—
Biswapriyo