답변:
예를 들어 fix.bat
다음 내용으로 배치 파일을 만듭니다 .
echo REGEDIT4 > fix.reg
echo [HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows NT\CurrentVersion\IniFileMapping\Autorun.inf] >> fix.reg
echo @="@SYS:DoesNotExist" >> fix.reg
배치를 실행하면 원하는 내용으로 파일이 생성됩니다. .reg 파일을 수동으로 병합하거나 한 단계 더 나아가 배치 파일을 fix.reg
사용하여 스크립트로 작성된 파일을 Windows 레지스트리 에 병합 할 수 있습니다.
echo REGEDIT4 > fix.reg
echo [HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows NT\CurrentVersion\IniFileMapping\Autorun.inf] >> fix.reg
echo @="@SYS:DoesNotExist" >> fix.reg
regedit.exe /S fix.reg
.reg
파일을 작성하고 해당 파일을 가져옵니다.
한 번 그 키를 가져와 함께 그것을 보면 REG QUERY
,
첫 번째는 것을 볼 수 있습니다 @
유형의 기본 키를 참조 REG_SZ
내용 @SYS:DoesNotExist
.
따라서 키를 직접 생성하려면 REG ADD
관리자 권한이 필요하므로 자동으로 권한을 올리는 다음 배치를 사용하십시오 (UAC 삭제).
:: Q:\Test\2018\11\29\SU_1379397.cmd
@echo off & setlocal EnableExtensions DisableDelayedExpansion
:: if not already running as admin, elevate and run batch again
net file 1>nul 2>&1 || (
powershell -ExecutionPolicy unrestricted -Command ^
"Start-Process -Verb RunAs -FilePath '%comspec%' -ArgumentList '/c %~f0 %*'"
goto :eof
)
:: Put code here that needs elevation
@Echo off
Set "Key=HKLM\SOFTWARE\Microsoft\Windows NT\CurrentVersion\IniFileMapping\Autorun.inf"
Set "Dat=@SYS:DoesNotExist"
REG ADD "%Key%" /ve /t REG_SZ /d "%Dat%" /f
TIMEOUT /T 10
REG ADD
그럴 수 는 없나요?