Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/batch-file/6.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
编辑Windows注册表时,要使用哪个注册表编辑器版本启动注册表文件(如果需要)?_Windows_Batch File_Windows 7_Registry - Fatal编程技术网

编辑Windows注册表时,要使用哪个注册表编辑器版本启动注册表文件(如果需要)?

编辑Windows注册表时,要使用哪个注册表编辑器版本启动注册表文件(如果需要)?,windows,batch-file,windows-7,registry,Windows,Batch File,Windows 7,Registry,根据,应该启动.reg文件,并使用以下任一选项编辑Windows注册表: Windows注册表编辑器5.00版 适用于Windows 2000、Windows XP和Windows Server 2003 或 REGEDIT4 适用于Windows 95、Windows 98和Windows NT 4.0 在Windows 7上,使用Windows注册表编辑器5.00版启动是正确的,还是应该改用一个状态版本6 实际上,在运行.bat文件时需要它吗 对于当前版本,请单击菜单项“关于注册表编辑器

根据,应该启动.reg文件,并使用以下任一选项编辑Windows注册表:

  • Windows注册表编辑器5.00版

    适用于Windows 2000、Windows XP和Windows Server 2003
  • REGEDIT4

    适用于Windows 95、Windows 98和Windows NT 4.0
在Windows 7上,使用Windows注册表编辑器5.00版启动是正确的,还是应该改用一个状态版本6

实际上,在运行.bat文件时需要它吗


对于当前版本,请单击菜单项“关于注册表编辑器”的“帮助”菜单中的“注册表编辑器”菜单项“关于注册表编辑器”,“主要使用两个标准应用程序从批处理文件中处理Windows注册表:

  • reg.exe
  • regedit.exe
在Windows x64上,这两种应用程序都以32位和64位的形式存在,其中32位版本访问注册表的方式与32位应用程序类似,这意味着32位REGREGEDIT处于活动状态,64位应用程序的注册表项不可见

通常最好使用REG而不是REGEDIT来获取(读取访问)或设置(写入访问)批处理文件中的几个键或值

自Windows Vista以来,使用REGEDIT始终需要管理员权限,即使仅用于将密钥导出到注册表文件(读访问)或从注册表文件导入数据(写访问)到HKEY_CURRENT_USER(简称:HKCU)

通过使用REG许多操作,如QUERY(读访问)或ADD(写访问)到HKCU不需要管理员权限。当然,对HKEY_LOCAL_机器的写入访问权(简称:HKLM)需要管理员权限,其他不常用的操作也需要管理员权限。在命令提示窗口中运行
reg/?
显示可用的操作<在控制台窗口中执行的code>reg query/?和
reg add/?
显示在Windows注册表中获取(查询)或设置(添加)数据的语法和选项

如果*.reg文件的第一行包含以下内容,则仅在导入时将该文件解释为具有有效注册表数据的文件

  • REGEDIT4
  • Windows注册表编辑器版本5.00
这不是注册表编辑器或Windows版本。它是文件本身中注册表数据格式的版本信息。所以它是一个注册表文件格式版本。注册表文件的第一行必须有这两个字符串之一

尝试导入没有此标题行的*.reg文件会导致错误。

Windows 2000(也有regedt32.exe)和更高版本的Windows支持4和5两种格式的注册表文件

Windows 95、98、Millennium和NT4仅支持格式为4的注册表文件

所以现在(2016年)主要取决于注册表文件使用的数据格式。

主要区别在于支持文本数据。

REGEDIT4格式的注册表文件只能是文本文件,每个字符1字节,使用Windows设置中为北美和西欧国家/地区的非Unicode应用程序定义的。因此,REGEDIT4格式的注册表文件不能包含代码值大于255(十进制,0xFF十六进制)的字符

根据标准,Windows注册表编辑器5.00版格式的注册表文件支持每字符超过1字节的文本编码。因此,REGEDIT将格式为Windows注册表编辑器版本5.00的*.reg文件创建为带有(FF FE)的编码文本文件

因此,如果要导入/导出的数据是二进制或仅使用字符(代码值<十进制128)作为99.99%的注册表数据的文本,则使用哪种文件格式并不重要

对于非ASCII字符,了解Windows命令解释器使用的代码页已经很重要,因为这通常是OEM代码页,如(美国、加拿大)或(西欧),不同于GUI代码页Windows-1252。在命令提示符窗口
chcp
mode con
中运行,输出Windows命令解释器在当前计算机上用于控制台的默认代码页

如果确实需要同时支持Unicode字符串,则必须使用format Windows注册表编辑器版本5.00

让我们看一个假设的Unicode示例:

在Windows注册表项
HKCU\RegFormat
下定义了两个Unicode字符串:

  • 类型为
    REG_SZ
    的字符串,名称为
    2,不等于3,字符串值为Unicode:

    2≠ 3

  • 类型为
    REG_multi_SZ
    的多行字符串,名称为
    Formulas
    ,字符串值为Unicode:

    2µs×3=6µs

    A=π×r²

有关注册表值类型的详细信息,请参阅Microsoft文章和

从Windows 2000开始,以Windows注册表编辑器版本5.00的格式导出注册表项
HKCU\RegFormat
,将生成一个包含596字节内容的UTF-16 LE编码文本文件:

Windows Registry Editor Version 5.00

[HKEY_CURRENT_USER\RegFormat]
"Two Not Equal 3"="2 ≠ 3"
"Formulas"=hex(7):32,00,20,00,b5,00,73,00,20,00,d7,00,20,00,33,00,20,00,3d,00,\
  20,00,36,00,20,00,b5,00,73,00,00,00,41,00,20,00,3d,00,20,00,c0,03,20,00,d7,\
  00,20,00,72,00,b2,00,00,00,00,00
REGEDIT4

[HKEY_CURRENT_USER\RegFormat]
"Two Not Equal 3"="2 ? 3"
"Formulas"=hex(7):32,20,b5,73,20,d7,20,33,20,3d,20,36,20,b5,73,00,41,20,3d,20,\
  c0,20,d7,20,72,b2,00,00
Windows Registry Editor Version 5.00

[HKEY_CURRENT_USER\RegFormat]
"Two Not Equal 3"=hex(1):32,00,60,22,33,00
"Formulas"=hex(7):32,00,20,00,b5,00,73,00,20,00,d7,00,20,00,33,00,20,00,3d,00,\
  20,00,36,00,20,00,b5,00,73,00,00,00,41,00,20,00,3d,00,20,00,c0,03,20,00,d7,\
  00,20,00,72,00,b2,00,00,00,00,00
此文件的字节流在十六进制查看器/编辑器中显示为:

00000000h: FF FE 57 00 69 00 6E 00 64 00 6F 00 77 00 73 00 ; ÿþW.i.n.d.o.w.s.
00000010h: 20 00 52 00 65 00 67 00 69 00 73 00 74 00 72 00 ;  .R.e.g.i.s.t.r.
00000020h: 79 00 20 00 45 00 64 00 69 00 74 00 6F 00 72 00 ; y. .E.d.i.t.o.r.
00000030h: 20 00 56 00 65 00 72 00 73 00 69 00 6F 00 6E 00 ;  .V.e.r.s.i.o.n.
00000040h: 20 00 35 00 2E 00 30 00 30 00 0D 00 0A 00 0D 00 ;  .5...0.0.......
00000050h: 0A 00 5B 00 48 00 4B 00 45 00 59 00 5F 00 43 00 ; ..[.H.K.E.Y._.C.
00000060h: 55 00 52 00 52 00 45 00 4E 00 54 00 5F 00 55 00 ; U.R.R.E.N.T._.U.
00000070h: 53 00 45 00 52 00 5C 00 52 00 65 00 67 00 46 00 ; S.E.R.\.R.e.g.F.
00000080h: 6F 00 72 00 6D 00 61 00 74 00 5D 00 0D 00 0A 00 ; o.r.m.a.t.].....
00000090h: 22 00 54 00 77 00 6F 00 20 00 4E 00 6F 00 74 00 ; ".T.w.o. .N.o.t.
000000a0h: 20 00 45 00 71 00 75 00 61 00 6C 00 20 00 33 00 ;  .E.q.u.a.l. .3.
000000b0h: 22 00 3D 00 22 00 32 00 20 00 60 22 20 00 33 00 ; ".=.".2. .`" .3.
000000c0h: 22 00 0D 00 0A 00 22 00 46 00 6F 00 72 00 6D 00 ; ".....".F.o.r.m.
000000d0h: 75 00 6C 00 61 00 73 00 22 00 3D 00 68 00 65 00 ; u.l.a.s.".=.h.e.
000000e0h: 78 00 28 00 37 00 29 00 3A 00 33 00 32 00 2C 00 ; x.(.7.).:.3.2.,.
000000f0h: 30 00 30 00 2C 00 32 00 30 00 2C 00 30 00 30 00 ; 0.0.,.2.0.,.0.0.
00000100h: 2C 00 62 00 35 00 2C 00 30 00 30 00 2C 00 37 00 ; ,.b.5.,.0.0.,.7.
00000110h: 33 00 2C 00 30 00 30 00 2C 00 32 00 30 00 2C 00 ; 3.,.0.0.,.2.0.,.
00000120h: 30 00 30 00 2C 00 64 00 37 00 2C 00 30 00 30 00 ; 0.0.,.d.7.,.0.0.
00000130h: 2C 00 32 00 30 00 2C 00 30 00 30 00 2C 00 33 00 ; ,.2.0.,.0.0.,.3.
00000140h: 33 00 2C 00 30 00 30 00 2C 00 32 00 30 00 2C 00 ; 3.,.0.0.,.2.0.,.
00000150h: 30 00 30 00 2C 00 33 00 64 00 2C 00 30 00 30 00 ; 0.0.,.3.d.,.0.0.
00000160h: 2C 00 5C 00 0D 00 0A 00 20 00 20 00 32 00 30 00 ; ,.\..... . .2.0.
00000170h: 2C 00 30 00 30 00 2C 00 33 00 36 00 2C 00 30 00 ; ,.0.0.,.3.6.,.0.
00000180h: 30 00 2C 00 32 00 30 00 2C 00 30 00 30 00 2C 00 ; 0.,.2.0.,.0.0.,.
00000190h: 62 00 35 00 2C 00 30 00 30 00 2C 00 37 00 33 00 ; b.5.,.0.0.,.7.3.
000001a0h: 2C 00 30 00 30 00 2C 00 30 00 30 00 2C 00 30 00 ; ,.0.0.,.0.0.,.0.
000001b0h: 30 00 2C 00 34 00 31 00 2C 00 30 00 30 00 2C 00 ; 0.,.4.1.,.0.0.,.
000001c0h: 32 00 30 00 2C 00 30 00 30 00 2C 00 33 00 64 00 ; 2.0.,.0.0.,.3.d.
000001d0h: 2C 00 30 00 30 00 2C 00 32 00 30 00 2C 00 30 00 ; ,.0.0.,.2.0.,.0.
000001e0h: 30 00 2C 00 63 00 30 00 2C 00 30 00 33 00 2C 00 ; 0.,.c.0.,.0.3.,.
000001f0h: 32 00 30 00 2C 00 30 00 30 00 2C 00 64 00 37 00 ; 2.0.,.0.0.,.d.7.
00000200h: 2C 00 5C 00 0D 00 0A 00 20 00 20 00 30 00 30 00 ; ,.\..... . .0.0.
00000210h: 2C 00 32 00 30 00 2C 00 30 00 30 00 2C 00 37 00 ; ,.2.0.,.0.0.,.7.
00000220h: 32 00 2C 00 30 00 30 00 2C 00 62 00 32 00 2C 00 ; 2.,.0.0.,.b.2.,.
00000230h: 30 00 30 00 2C 00 30 00 30 00 2C 00 30 00 30 00 ; 0.0.,.0.0.,.0.0.
00000240h: 2C 00 30 00 30 00 2C 00 30 00 30 00 0D 00 0A 00 ; ,.0.0.,.0.0.....
00000250h: 0D 00 0A 00                                     ; ....
00000000h: 52 45 47 45 44 49 54 34 0D 0A 0D 0A 5B 48 4B 45 ; REGEDIT4....[HKE
00000010h: 59 5F 43 55 52 52 45 4E 54 5F 55 53 45 52 5C 52 ; Y_CURRENT_USER\R
00000020h: 65 67 46 6F 72 6D 61 74 5D 0D 0A 22 54 77 6F 20 ; egFormat].."Two 
00000030h: 4E 6F 74 20 45 71 75 61 6C 20 33 22 3D 22 32 20 ; Not Equal 3"="2 
00000040h: 3F 20 33 22 0D 0A 22 46 6F 72 6D 75 6C 61 73 22 ; ? 3".."Formulas"
00000050h: 3D 68 65 78 28 37 29 3A 33 32 2C 32 30 2C 62 35 ; =hex(7):32,20,b5
00000060h: 2C 37 33 2C 32 30 2C 64 37 2C 32 30 2C 33 33 2C ; ,73,20,d7,20,33,
00000070h: 32 30 2C 33 64 2C 32 30 2C 33 36 2C 32 30 2C 62 ; 20,3d,20,36,20,b
00000080h: 35 2C 37 33 2C 30 30 2C 34 31 2C 32 30 2C 33 64 ; 5,73,00,41,20,3d
00000090h: 2C 32 30 2C 5C 0D 0A 20 20 63 30 2C 32 30 2C 64 ; ,20,\..  c0,20,d
000000a0h: 37 2C 32 30 2C 37 32 2C 62 32 2C 30 30 2C 30 30 ; 7,20,72,b2,00,00
000000b0h: 0D 0A 0D 0A                                     ; ....
00000000h: 57 69 6E 64 6F 77 73 20 52 65 67 69 73 74 72 79 ; Windows Registry
00000010h: 20 45 64 69 74 6F 72 20 56 65 72 73 69 6F 6E 20 ;  Editor Version 
00000020h: 35 2E 30 30 0D 0A 0D 0A 5B 48 4B 45 59 5F 43 55 ; 5.00....[HKEY_CU
00000030h: 52 52 45 4E 54 5F 55 53 45 52 5C 52 65 67 46 6F ; RRENT_USER\RegFo
00000040h: 72 6D 61 74 5D 0D 0A 22 54 77 6F 20 4E 6F 74 20 ; rmat].."Two Not 
00000050h: 45 71 75 61 6C 20 33 22 3D 68 65 78 28 31 29 3A ; Equal 3"=hex(1):
00000060h: 33 32 2C 30 30 2C 36 30 2C 32 32 2C 33 33 2C 30 ; 32,00,60,22,33,0
00000070h: 30 0D 0A 22 46 6F 72 6D 75 6C 61 73 22 3D 68 65 ; 0.."Formulas"=he
00000080h: 78 28 37 29 3A 33 32 2C 30 30 2C 32 30 2C 30 30 ; x(7):32,00,20,00
00000090h: 2C 62 35 2C 30 30 2C 37 33 2C 30 30 2C 32 30 2C ; ,b5,00,73,00,20,
000000a0h: 30 30 2C 64 37 2C 30 30 2C 32 30 2C 30 30 2C 33 ; 00,d7,00,20,00,3
000000b0h: 33 2C 30 30 2C 32 30 2C 30 30 2C 33 64 2C 30 30 ; 3,00,20,00,3d,00
000000c0h: 2C 5C 0D 0A 20 20 32 30 2C 30 30 2C 33 36 2C 30 ; ,\..  20,00,36,0
000000d0h: 30 2C 32 30 2C 30 30 2C 62 35 2C 30 30 2C 37 33 ; 0,20,00,b5,00,73
000000e0h: 2C 30 30 2C 30 30 2C 30 30 2C 34 31 2C 30 30 2C ; ,00,00,00,41,00,
000000f0h: 32 30 2C 30 30 2C 33 64 2C 30 30 2C 32 30 2C 30 ; 20,00,3d,00,20,0
00000100h: 30 2C 63 30 2C 30 33 2C 32 30 2C 30 30 2C 64 37 ; 0,c0,03,20,00,d7
00000110h: 2C 5C 0D 0A 20 20 30 30 2C 32 30 2C 30 30 2C 37 ; ,\..  00,20,00,7
00000120h: 32 2C 30 30 2C 62 32 2C 30 30 2C 30 30 2C 30 30 ; 2,00,b2,00,00,00
00000130h: 2C 30 30 2C 30 30 0D 0A 0D 0A                   ; ,00,00....
代码页Windows-1252显示为
ÿþ
的前2个字节是UTF-16 LE BOM的两个字节,文本编辑器在文本编辑模式下不会显示

但通过单击导出对话框中的文件类型下拉列表并选择Win9x/NT4 r,可以导出格式为REGEDIT4的密钥
HKCU\RegFormat
2 ≠ 3
2 µs × 3 = 6 µs
A = À × r²
%SystemRoot%\System32\regedit.exe /a /e "%USERPROFILE%\Desktop\EntireWindowsRegistry.reg"