Wie kann ich eine neue .reg-Datei über die CLI erstellen?

Wie kann ich eine neue .reg-Datei über die CLI erstellen?

Ich möchte eine neue .regDatei erstellen und sie der Registrierung hinzufügen, wie inDieser Artikel.

REGEDIT4
[HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows NT\CurrentVersion\IniFileMapping\Autorun.inf]
@="@SYS:DoesNotExist"

Es ist ziemlich einfach. Aber ich möchte es skripten. Ich dachte, ich könnte einfach verwenden REG ADD, aber ich bin nicht sicher, wie ich den @="@SYS:DoesNotExist"Teil am Ende einbauen soll.

Antwort1

Erstellen Sie Ihre Batchdatei - zB fix.bat- mit folgendem Inhalt:

echo REGEDIT4 > fix.reg
echo [HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows NT\CurrentVersion\IniFileMapping\Autorun.inf] >> fix.reg
echo @="@SYS:DoesNotExist" >> fix.reg

Führen Sie den Batch aus und er erstellt Ihre Datei mit dem gewünschten Inhalt. Sie können die .reg-Datei manuell zusammenführen oder noch einen Schritt weiter gehen und die Batchdatei verwenden, um die fix.regmit dem Skript erstellte Datei in die Windows-Registrierung einzufügen:

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

Antwort2

Wenn Sie diesen Schlüssel einmal importieren und mit nachschlagen REG QUERY,
werden Sie sehen, dass sich der erste @auf den Standardschlüssel vom Typ REG_SZmit Inhalt bezieht @SYS:DoesNotExist.

Um den Schlüssel direkt zu erstellen, REG ADDverwenden Sie den folgenden Batch, der sich automatisch selbst erhöht, da Administratorrechte erforderlich sind (unter Einbeziehung von 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

verwandte Informationen