无忧启动论坛

标题: PE下如何用命令读取本地系统的注册表某项值 [打印本页]

作者: 村牛    时间: 2015-8-29 16:28
标题: PE下如何用命令读取本地系统的注册表某项值
本帖最后由 村牛 于 2015-9-25 15:16 编辑


如题 PE下如何用命令读取本地系统的注册表某项值

用批处理如何实现

想查看run启动项的注册表信息

有大神可以指点下么?

//////////////////////////////////////////////////////////////// 问题在5楼得到解决,谢谢各位回复的坛友!
作者: guyue2011    时间: 2015-8-29 19:20
注册表编辑器   regworkshop  等 都可以    加载本地单元



作者: junyee    时间: 2015-8-31 19:02
麻烦先看完.

reg /?

加载后读即可.
作者: nttwqz    时间: 2015-9-1 08:54
看来楼主不熟悉reg命令,楼上说了reg /?
作者: 村牛    时间: 2015-9-20 04:13
junyee 发表于 2015-8-31 19:02
麻烦先看完.

reg /?

我看过了reg的参数,基本都是对当前系统的注册表操作  还有就是对远程电脑系统注册表进行操作

反复测试  好像就是不能在PE环境下 读取本地硬盘系统的注册表信息

应该是我没搞清楚那些参数之间的关系

如果可以  麻烦举个例子   如何用  reg 加载并读取本地硬盘系统的注册表中的某一项值
作者: 村牛    时间: 2015-9-20 04:13
nttwqz 发表于 2015-9-1 08:54
看来楼主不熟悉reg命令,楼上说了reg /?

我看过了reg的参数,基本都是对当前系统的注册表操作  还有就是对远程电脑系统注册表进行操作

反复测试  好像就是不能在PE环境下 读取本地硬盘系统的注册表信息

应该是我没搞清楚那些参数之间的关系

如果可以  麻烦举个例子   如何用  reg 加载并读取本地硬盘系统的注册表中的某一项值
作者: wang_966    时间: 2015-9-20 07:23
本帖最后由 wang_966 于 2015-9-20 07:27 编辑

REM 这是本人设计用来取得 "系统语系" 的批次档 get_Locale.bat , 自动侦测: 简/繁/英 , 内容如下:

@echo off
REM ***********************************************************************
REM *  author :     Mike Wang   2015/02/10  http://blog.xuite.net/tools241
REM *

if exist LocaleName.txt goto setok

reg.exe "QUERY HKEY_CURRENT_USER\Control Panel\International\LocaleName" >LocaleName.txt 2>nul
if not "%errorlevel%"=="1" goto setone

REM for XP / XPE
reg.exe  QUERY "HKEY_CURRENT_USER\Control Panel\International"  /v iCountry > tmp.txt 2>nul
for  /f "tokens=*" %%i in (tmp.txt) do set jj=%%i
del /Q tmp.txt  2>nul
for  %%i in (%jj%) do set kk=%%i
set Locale=en-US
if "%kk%"=="86" set Locale=zh-CN
if "%kk%"=="886" set Locale=zh-TW
echo %Locale% > LocaleName.txt 2>nul
goto setok

:setone
for  /f "tokens=*" %%i in (LocaleName.txt) do set jj=%%i
for  %%i in (%jj%) do set Locale=%%i
REM      Find langpack / 檢查是否有安裝語言包 / 潰脤岆瘁衄假蚾逄晟婦
if "%1"=="" if not "%Locale%"=="zh-TW"   if not exist DATA\profile\extensions\langpack-%Locale%@firefox.mozilla.org.xpi   set Locale=en-US
echo %Locale% > LocaleName.txt 2>nul

:setok
REM ***********************************************************************

REM usage1:
REM call  get_Locale.bat
REM for  /f "tokens=*" %%i in (LocaleName.txt) do set jj=%%i
REM for  %%i in (%jj%) do set Locale=%%i

REM usage2:
REM call  get_Locale.bat 0
REM for  /f "tokens=*" %%i in (LocaleName.txt) do set jj=%%i
REM for  %%i in (%jj%) do set Locale=%%i

REM  本批次檔使用在 :
REM  狂奔的火狐! Firefox 41 免安装 异空版 Flash Player+26元件(自动侦测: 简/繁/英, PE/Win一版通用) ==>
REM  http://bbs.wuyou.net/forum.php?mod=viewthread&tid=362183

作者: ernesthan    时间: 2015-9-20 10:41
在PE状态下获取本机的注册表使用reg load加载配置单元。
作者: nttwqz    时间: 2015-9-20 11:43
村牛 发表于 2015-9-20 04:13
我看过了reg的参数,基本都是对当前系统的注册表操作  还有就是对远程电脑系统注册表进行操作

反复测 ...
  1. @echo off
  2. setlocal enabledelayedexpansion
  3. for /d %%a in (C,D,E,F,G,H,I,J,K,L,M,N,O,P,R,Q,S,T,U,V,W,Y,Z) do (
  4.         if exist %%a:\Windows\System32\Config\SAM (
  5.                 set drive=%%a
  6.                 echo 原系统盘的盘符是 !drive!: 正确请按回车,错误请手动输入(不带冒号)
  7.                 set /p drive=
  8.         )
  9. )
  10. echo.
  11. if not exist %drive%:\Windows\System32\Config\SAM echo 原系统盘盘符错误,请重试!&&pause>nul&&exit
  12. pushd %drive%:\Windows\System32\Config\
  13. reg load HKLM\TEMP-SOFTWARE software >nul 2>nul
  14. reg load HKLM\TEMP-default default >nul 2>nul
  15. reg query HKLM\TEMP-SOFTWARE\Microsoft\Windows\CurrentVersion\Run
  16. reg query HKLM\TEMP-default\SOFTWARE\Microsoft\Windows\CurrentVersion\Run
  17. reg unload HKLM\TEMP-SOFTWARE >nul 2>nul
  18. reg unload HKLM\TEMP-default >nul 2>nul
  19. pause>nul
复制代码

作者: 村牛    时间: 2015-9-25 15:12
wang_966 发表于 2015-9-20 07:23
REM 这是本人设计用来取得 "系统语系" 的批次档 get_Locale.bat , 自动侦测: 简/繁/英 , 内容 ...

  很强大  终于学习了  谢谢回复
作者: 村牛    时间: 2015-9-25 15:13
ernesthan 发表于 2015-9-20 10:41
在PE状态下获取本机的注册表使用reg load加载配置单元。

恩恩  谢谢
作者: 村牛    时间: 2015-9-25 15:14
nttwqz 发表于 2015-9-20 11:43

谢谢 nttwqz 军士长,参考你的写法,问题终于解决了,谢谢你帮忙解决了我这个问题.非常感谢!只可惜不能以身相许了




欢迎光临 无忧启动论坛 (http://bbs.c3.wuyou.net/) Powered by Discuz! X3.3