nick7inc
Advanced Member | Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору Запуск Код: CALL :proceed_registry_users_addpar "defuser" "\SOFTWARE\Microsoft\Windows\CurrentVersion\UserProfileEngagement" "ScoobeSystemSettingEnabled" REG_DWORD "0" | Код: Код: :proceed_registry set REGCMD="%SystemRoot%\System32\reg.exe" set MYLOGFILE="%~n0%~x0.log" echo "-[Registry]-">>%MYLOGFILE% echo "Command: 'reg %*'">>%MYLOGFILE% %REGCMD% %*>>%MYLOGFILE% 2>>&1 IF NOT "%ERRORLEVEL%"=="0" ( echo "Error processing command, ERRORLEVEL=%ERRORLEVEL%">>%MYLOGFILE% goto :eof ) goto :eof :proceed_registry_users_addpar REM 1st parameter - "defuser", "defuser_only" or "-" to add, the only or not to default user profile, 2nd - relatime registry path (key), starting from slash, e.g. "\SOFTWARE\Microsoft\Windows NT\CurrentVersion\ProfileList". REM 3rd - parameter name, 4th - parameter type, 5th - value, 6th, 7th, 8th,... - same as 3-5 (optional) IF "%~2"=="" goto :eof set MYLOGFILE="%~n0%~x0.log" PUSHD "%Public%\.." set UserProfiles="%cd%" set UserProfiles=%UserProfiles:"=% POPD for /f "tokens=2*" %%A in ( 'reg query "HKEY_CURRENT_USER\Volatile Environment" /f USERPROFILE 2^>^&1^|findstr /C:"USERPROFILE"' ) do set CURUSRPROFILELOC="%%~B\ntuser.dat" set CURUSRPROFILELOC=%CURUSRPROFILELOC:"=% IF not exist "%CURUSRPROFILELOC%" ( echo "Error detecting current user registry profile!" echo "Error detecting current user registry profile!">>%MYLOGFILE% goto :eof ) echo "Current user registry profile '%CURUSRPROFILELOC%'">>%MYLOGFILE% IF /I "%~1"=="defuser" call :proceed_registry_users_addpar.1 %* IF /I "%~1"=="defuser_only" ( call :proceed_registry_users_addpar.1 %* goto :eof ) echo "-[Registry - all users]-">>%MYLOGFILE% for /f "tokens=2*" %%A in ( 'reg query "HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows NT\CurrentVersion\ProfileList" /f ProfileImagePath /s 2^>^&1^|findstr /C:"ProfileImagePath"^|findstr /C:"%UserProfiles%"' ) do call :proceed_registry_users_addpar.2 "%%~B" %* goto :eof :proceed_registry_users_addpar.2 REM Removing 1st parameter to have same pars prder as in :proceed_registry_users_addpar set FNAME="%~1\ntuser.dat" set FNAME=%FNAME:"=% if /I "%CURUSRPROFILELOC%"=="%FNAME%" ( call :proceed_registry_users_addpar.3 %* goto :eof ) shift /1 if NOT exist "%FNAME%" ( echo "File '%FNAME%' not found!">>%MYLOGFILE% goto :eof ) Echo "Working with '%FNAME%'">>%MYLOGFILE% call :proceed_registry load HKU\TEMPUSER "%FNAME%" if "%ERRORLEVEL%"=="0" goto :proceed_registry_users_addpar.2.cycle echo "File '%FNAME%' is BUSY!">>%MYLOGFILE% goto :eof :proceed_registry_users_addpar.2.cycle if "%~3"=="" goto :proceed_registry_users_addpar.2.fin.1 call :proceed_registry add "HKU\TEMPUSER%~2" /V "%~3" /T %4 /D "%~5" /F shift /3 shift /3 shift /3 goto :proceed_registry_users_addpar.2.cycle :proceed_registry_users_addpar.2.fin.1 call :proceed_registry unload HKU\TEMPUSER goto :eof :proceed_registry_users_addpar.3 shift /1 Echo "Working with 'HKEY_CURRENT_USER'">>%MYLOGFILE% :proceed_registry_users_addpar.3.cycle if "%~3"=="" goto :proceed_registry_users_addpar.3.fin.1 call :proceed_registry add "HKEY_CURRENT_USER%~2" /V "%~3" /T %4 /D "%~5" /F shift /3 shift /3 shift /3 goto :proceed_registry_users_addpar.3.cycle :proceed_registry_users_addpar.3.fin.1 goto :eof :proceed_registry_users_addpar.1 IF "%~2"=="" goto :eof echo "-[Registry - default user]-">>%MYLOGFILE% call :proceed_registry load HKLM\defuser %USERPROFILES%\default\ntuser.dat :proceed_registry_users_addpar.1.cycle if "%~3"=="" goto :proceed_registry_users_addpar.1.fin call :proceed_registry add "HKLM\defuser%~2" /V "%~3" /T %4 /D "%~5" /F shift /3 shift /3 shift /3 goto :proceed_registry_users_addpar.1.cycle :proceed_registry_users_addpar.1.fin call :proceed_registry unload HKLM\defuser goto :eof |
| Всего записей: 1138 | Зарегистр. 04-05-2007 | Отправлено: 11:34 07-12-2021 | Исправлено: nick7inc, 11:42 07-12-2021 |
|