• <ins id="pjuwb"></ins>
    <blockquote id="pjuwb"><pre id="pjuwb"></pre></blockquote>
    <noscript id="pjuwb"></noscript>
          <sup id="pjuwb"><pre id="pjuwb"></pre></sup>
            <dd id="pjuwb"></dd>
            <abbr id="pjuwb"></abbr>

            隨感而發

            雜七雜八

            統計

            留言簿(13)

            閱讀排行榜

            評論排行榜

            【轉】.reg文件格式

            轉自:http://hi.baidu.com/oumeida/blog/item/119af6dde7e57ce877c638cf.html

            .reg文件格式

            原作:j.mostert
            翻譯:淡月兒

            1 概述
            注冊表編輯器使用.reg文件格式導入、導出注冊表設置,支持的操作系統包括windows3.x,windows95/98/nt及以上。盡管注冊表的作用和原

            理十分重要,但本文不打算介紹,你可以通過文末列出的網址,獲得相關的信息。同時,windows3.x的.reg文件格式與windows95以上不盡相同

            ,本文將忽略這方面的內容,畢竟windows3.x的注冊表已經不太重要。

            2 詳細說明
            .reg文件是ascii碼組成的無格式純文本,每一行以“cr/lf”結尾。

            2.1 文件頭
            .reg文件開頭是注冊表編輯器的版本,windows95/nt下版本是4,你可以使用這樣的字符串:regedit4。在執行導入前,注冊表編輯器將會檢

            查版本是否正確,并在不匹配時給與提示,這也是注冊表編輯器對.reg文件做的唯一檢查。一般情況下,注冊表編輯器會默默忽略掉錯誤的文

            件內容不予導入注冊表,更多情況下會把可能導致問題的內容導入注冊表,這是微軟注冊表編輯器的一個缺陷。

            2.2 鍵
            鍵和子鍵被原樣導出至.reg文件,沒有順序差別。
            例如:
            hkey_classes_root\clsid鍵下面有hkey_classes_root\clsid\{21ec2020-3aea-1069-a2dd-08002b30309d}這個子鍵(這個鍵的作用是在控制

            面板上添加一個類聲明),它按如下格式導出:
            [hkey_classes_root\clsid]
            [hkey_classes_root\clsid\{21ec2020-3aea-1069-a2dd-08002b30309d}]
            任何一個有效鍵值都必須包含完整的路徑,因此必定以根鍵開頭,根鍵包括:
            hkey_classes_root
            hkey_current_user
            hkey_local_machine
            hkey_users
            hkey_current_config
            hkey_dyn_data
            鍵名只可以由ascii碼中的可打印字符組成(即ascii碼32至127所代表的字符),鍵名不可以包含空格、反斜杠( \ )以及通配符( * 和 ? )。

            每一個鍵名下緊跟著它的鍵值,鍵值列表以空行結束,一個鍵的鍵值列表可以就是一個空行。
            例如:
            [key-name]

            [second-key-name]
            "value1"=something
            "value2"=something

            [third-key-name]
            假如在文件中指定了一個不存在的鍵值,那么在導入的時候這個鍵連同它的根鍵(假如不存在的話)都將被創建。
            例如:
            文件中指定了hkey_users\jeroen\test\subkey這個鍵;
            注冊表中只存在hkey_users\jeroen這個鍵;
            當導入以后,hkey_users\jeroen\test這個鍵會被創建。

            注意,你只能添加或修改鍵和鍵值,而不能刪除它們。
            (譯者注:事實上可以刪除,方法是在鍵名前面加上 - 號,該鍵連同其子鍵將被刪除;在指定鍵值為 - ,可以刪除該鍵值。)

            2.3 鍵值
            注冊表鍵值可以是三種數據類型:字符串(string)、二進制值(binary value)和雙機器字(dword,即32位整數)。鍵值的名稱以引號 " 包含

            ,值緊跟在等號 = 之后。每一個鍵都包含至少一個字符串類型的鍵值,這個鍵值在注冊表編輯器中顯示為“默認值”(default)。你可以通過

            指定名稱為 @ 的值來修改默認值。
            例如:
            @="this is the default value."

            2.3.1 字符串
            字符串可以是任意長度的,用引號 " 包含起來的由ascii碼字符組成的值。字符 " 和 \ 也可以包含在字符串中,不過需要用 \" 和 \\ 進

            行轉義。同時,注冊表編輯器可以導入導出除換行符(以及新行符,即ascii碼10所指定的字符)以外的非acsii碼字符。
            當一個字符串值中包含換行符,在導出的時候會被輸出成兩行,但是再次導入時,只能導入第一行,第二行將被忽略。因此請牢記:不要在

            字符串值中包含換行符。
            例如:
            "foo"="bar"
            "foopath"="c:\\windows\\system"
            "foomessage"="this/nmessage/nactually/nconsists/nof/one/nlong/nline."

            2.3.2 二進制值
            在字符串和雙字不適用的場合,可以使用二進制值。二進制值可以用來儲存任意類型的數據,其格式為 hex:xx,yy,zz 等,其中xx、yy、zz

            是用16進制值表示的單字節值,二進制值可以是任意長度的。
            較長的二進制值可以用c語言多行符 \ 分割成多行顯示。
            例如:
            "bar"=hex:48,00,00,00,01,00,00,00,0a,00,0a,00,0a,00,0a,00,0a,00,0a,00,0a,\
            00,0a,00,0a,00,0a,00,0a,00,0a,00,0a,00,0a,00,0a,00,0a,00,0a,00,0a,00,0a,00,\
            0a,00,0a,00,0a,00,0a,00,0a,00,0a,00,0a,00,0a,00,0a,00,00,00,00,00,c4,ac,01,\
            00
            請記住,\ 符只能夠應用在二進制值當中。另外,微軟聲明一個二進制值不可以存儲超過2k的資料,這也是值得注意的。
            二進制值的例子:
            "foo"=hex:00,de,ca,de,12,34

            2.3.2.1 特定二進制類型
            除了常規的二進制值,還有若干特定類型的二進制值。我們可以這樣指定:
            "foobar"=hex(type):xx,xx,xx,xx,...
            這些類型由 0 到 10 這些數字代表,具體如下:
            0 reg_none
            1 reg_sz
            2 reg_expand_sz
            3 reg_binary
            4 reg_dword, reg_dword_little_endian
            5 reg_dword_big_endian
            6 reg_link
            7 reg_multi_sz
            8 reg_resource_list
            9 reg_full_resource_descriptor
            10 reg_resource_requirements_list

            2.3.2.1.1 reg_none類型
            默認的二進制值類型,應用在無特殊要求的場合。

            2.3.2.1.2 reg_sz類型
            以'\0'結尾的字符串。這是用二進制值來指定的字符串值,以下兩種表達方法是一樣的:
            "barfoo"=hex(1):41,42,43,44,00
            "barfoo"="abcd"
            參見2.3.1,字符串。

            2.3.2.1.3 reg_expand_sz類型
            包含隱含串的字符串,一般是對環境變量的引用。當一個應用程序讀到這樣字符串,系統將把引用串轉換為正確的環境變量值。
            下面的例子表示字符串"%path%;something",當這個值被引用的時候,"%path%"會被轉化為當前系統的 path 值。
            "forbaa"=hex(2):25,50,41,54,48,25,3b,53,6f,6d,65,74,68,69,6e,67,00

            2.3.2.1.4 reg_dword, reg_dword_little_endian類型
            小段對齊,是通常的雙字數據類型,在這種格式下存儲,高位字節在前,低位字節在后。

            2.3.2.1.5 reg_dword_big_endian類型
            大段對齊,是蘋果機的雙字數據類型,在這種格式下存儲,低位字節在前,高位字節在后。

            2.3.2.1.6 reg_link類型
            unicode符號連接。

            2.3.2.1.7 reg_multi_sz
            多字節字符串集,以連續兩個'\0'結束,例如:
            "farboo"=hex(7):41,42,43,44,00,45,46,47,48,00,00
            表示"abcd"和"efgh"兩個字符串。

            2.3.2.1.8 reg_resource_list
            設備驅動程序資源列表。

            2.3.2.1.9 reg_full_resource_descriptor
            微軟保留數據類型,用于輔助設備驅動程序。

            2.3.2.1.10 reg_resource_requirements_list
            微軟保留數據類型,用于輔助設備驅動程序。

            2.3.3. 雙字數據類型
            雙字數據類型,即32位整數,表示為 dword:xxxxxxxx,其中 x 是一個表示4位二進制的16進制值。
            例如:
            "foo"=dword:00decade

            3 結語
            本文簡要介紹了.reg文件的格式,由于作者水平有限,錯漏之處在所難免,假如您發現了錯誤,請不吝賜教.
            我的email:j.mostert@oke.nl。

            4 參考資料
            以下是關于注冊表知識的網址,希望對大家有所幫助。


            (譯者注:由于這些鏈接都是1997年4月以前的,因此不再翻譯)
            參考資料:http://www.cn-doc.com/_soft_ect_doc/2005_08_18_23/20050818234403397.htm

            我在網上看到REG文件對注冊表的操作可以不受注冊表編輯器被禁用的限制,我就試了一下,我把注冊表禁用了,然后想把解除注冊表禁用的REG文件導 入注冊表,可是導不進去,還是提示“注冊編緝已被管理員停用”,不是說REG文件對注冊表的操作可以不受注冊表編輯器被禁用的限制嗎,怎么我卻導入不進 去!

            問題補充: 在DOS下好像是一樣的

            用記事本
            REGEDIT4
            [HKEY-CURRENT-USER\Software\Microsoft\Windows\CurrentVer-
            sion\Policies\System]
            \〃DisableRegistryTools\〃=dword:00000000
            保存為C:\reg.reg
            然后打開
            試試吧


            posted on 2009-04-08 12:27 shongbee2 閱讀(2103) 評論(0)  編輯 收藏 引用 所屬分類: windows相關

            亚洲精品乱码久久久久久中文字幕| 免费国产99久久久香蕉| 性高朝久久久久久久久久| 四虎亚洲国产成人久久精品| 中文成人久久久久影院免费观看| 久久精品国产亚洲AV影院| 久久人人爽爽爽人久久久| 青青草国产精品久久久久| 欧美伊人久久大香线蕉综合69 | 久久成人18免费网站| 欧美亚洲国产精品久久| 久久国产精品久久国产精品| 久久只这里是精品66| 国产成人综合久久综合| 一本色道久久88综合日韩精品 | 久久这里只有精品视频99| 狠狠色婷婷久久一区二区| 一本大道加勒比久久综合| 久久精品青青草原伊人| 久久乐国产精品亚洲综合| 97久久香蕉国产线看观看| 精品国产乱码久久久久软件| 欧美久久精品一级c片片| 久久精品国产免费观看三人同眠| 99久久国产综合精品五月天喷水 | 久久久这里只有精品加勒比| 久久综合狠狠色综合伊人| 亚洲中文久久精品无码| 欧美日韩中文字幕久久久不卡 | 久久精品国产色蜜蜜麻豆| 久久精品国产亚洲一区二区三区| 9久久9久久精品| 国产精品久久久久久一区二区三区| 久久久久免费精品国产| 久久国内免费视频| 久久精品中文无码资源站| 亚洲伊人久久成综合人影院| 久久免费国产精品| 久久亚洲av无码精品浪潮| 日批日出水久久亚洲精品tv| 久久久无码精品亚洲日韩软件|