Загрузить реестр пользователя, экспортировать данные через командный файл? - PullRequest
0 голосов
/ 04 июня 2018

Мне нужно иметь возможность, если возможно, с помощью командного файла экспортировать подключенный диск пользователя.

Я думал о том, чтобы он загрузил их файл ntuser.dat, экспортировал hkey_current_user \ Network key исохраните его в определенном месте.

Возможно ли это?

Вот скрипт для вызова их имени пользователя, это будет сделано локально на компьютере:

:: Call the User Name :::::
:start
echo.
SET /P EndUserUN=EndUserUN:
echo.
REGEDIT.EXE /L:C:\Users\%EndUserUN%\NTUSER.DAT

1 Ответ

0 голосов
/ 05 июня 2018

Вот пример сценария на основе реестра, который должен быть Run as administrator и может выполнять задачу для всех ваших пользователей, за исключением тех, кто вошел в систему как:

@Echo Off
Set "EK=Network"

Set "RK=HKLM"
Set "SK=SOFTWARE\Microsoft\Windows NT\CurrentVersion\ProfileList"
Set "UI=S-1-5-21-"
Set "RV=ProfileImagePath"
Set "UH=NTUSER.DAT"
Set "TK=TmpHive"
Set "ER=HKU"

For /F "EOL=H Tokens=2*" %%A In (
    '"Reg Query "%RK%\%SK%" /K /F "%UI%*" /S /V "%RV%" 2>Nul|FindStr /V "\.$""'
) Do (Reg Load "%ER%\%TK%" "%%~B\%UH%" 2>Nul
    Reg Export "%ER%\%TK%\%EK%" "%~dp0%%~nxB.reg" /Y 2>Nul
    Reg UnLoad "%ER%\%TK%" 2>Nul)

Этоабсолютно непроверенный!

Примечание
Не изменяйте никакие строки, кроме строки 2 (которая в настоящее время Set соответствует пути SubKey, который вынадеемся сохранить как .reg файл).

...