Ho il seguente codiceCome fare un file batch eseguire un file reg
@echo off
file.reg
pause
Questo funziona, ma quando il file batch è elevato ottengo un errore che dice che non è possibile trovare il file. qualcuno sa cosa sto sbagliando.
Ho il seguente codiceCome fare un file batch eseguire un file reg
@echo off
file.reg
pause
Questo funziona, ma quando il file batch è elevato ottengo un errore che dice che non è possibile trovare il file. qualcuno sa cosa sto sbagliando.
@echo off
rem set __COMPAT_LAYER=RunAsInvoker
REGEDIT.EXE /S "%~dp0\file.reg"
pause
Prova questo
Se si accede posizioni nel Registro di sistema che non richiede privilegi di amministratore è possibile utilizzare __COMPAT_LAYER
ambiente variable.Just eseguire prima di utilizzare il regedit:
set __COMPAT_LAYER=RunAsInvoker
che verrà evita il pop-up UAC se lo script non viene eseguito come amministratore.
Probabilmente, l'avvio del batch con privilegi elevati cambierà la directory iniziale in %windir%\system32
(percorso in cui si trova cmd.exe
).
Usa:
"%~dp0\file.reg"
per eseguire sempre file.reg
si trova nella stessa directory del file batch.
Considerare inoltre l'utilizzo del comando REG
, in quanto consente di eseguire operazioni di console sul registro (controllare REG /?
).
quando si tratta di caricare un file '.reg', preferisco un' REGEDIT/S' per superare il pop-up.REG' è una buona idea quando non si hanno privilegi di amministratore in quanto controlla le autorizzazioni per chiave di registro , ma sfortunatamente non è disponibile su tutti i sistemi Windows (edizioni domestiche in particolare). Ma +1 – npocmaka