• <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>
            隨筆 - 64, 文章 - 11, 評論 - 12, 引用 - 0
            數據加載中……

            一個在腳本中枚舉注冊表鍵和值的工具

                       Windows的注冊表實質上是一個寵大的數據庫,它存儲計算機的硬件、軟件及用戶方面的信息。在實際的日常應用和程序寫作中我們經常訪問注冊表,惡意軟件更是會在改注冊表中動手腳。為了讓開發人員可以方便地訪問注冊表,眾多的編程語言都提供了注冊表操作函數。許多腳本語言也提供了一些簡單的操作函數,但是可能不會很豐富。這給在編寫腳本帶來了不便,我也曾經遇過這樣的情況。下面這個工具可以彌補一些腳本語言中的不足,該工具主要是提供了枚舉注冊中某個鍵的所有子鍵和枚舉注冊表中某個鍵的所有值,這個工具是一個COM服務器。其中的COM對象也都是自動化的對象,所以可以在腳本中使用。相應的COM對象已實現了枚舉接口,故在使用時可以采用foreach的方式。注意枚舉器的Add函數并不是往注冊表中寫入數據。[DOWNLOAD URL]   http://www.shnenglu.com/Files/Robertxiao/Regtool.rar
                  下面我摘錄其idl文件中內容
             1[
             2    object,
             3    uuid(FF2D77E4-6814-4BCC-B3C2-8500A300264F),
             4    dual,
             5    nonextensible,
             6    helpstring("ITob 接口"),
             7    pointer_default(unique)
             8]
             9interface ITob : IDispatch{
            10    [id(1), helpstring("方法RegEnum")] HRESULT RegEnum([in] BSTR bstrKeyFullPath, [out,retval] IUnknown** ppUnknown);
            11    [id(2), helpstring("method ListChildNames")] HRESULT ListChildNames([in] BSTR bstrKeyFullPath, [out,retval] IUnknown** ppUnknown);
            12}
            ;
            13[
            14    object,
            15    uuid(E8F0A927-DC24-402D-9437-58136E61CF5F),
            16    dual,
            17    nonextensible,
            18    helpstring("IChildKeys 接口"),
            19    pointer_default(unique)
            20]
            21interface IChildKeys : IDispatch{
            22    [id(1), helpstring("方法Add")] HRESULT Add([in] BSTR bstrKeyName);
            23    [propget, id(2), helpstring("屬性 Count")] HRESULT Count([out, retval] LONG* pnCount);
            24    [propget, id(DISPID_VALUE), helpstring("屬性 Item")] HRESULT Item([in] LONG nIndex, [out, retval] BSTR* pbstrKeyName);
            25    [propget, id(DISPID_NEWENUM), helpstring("屬性 _NewEnum")] HRESULT _NewEnum([out, retval] IUnknown** ppEnum);
            26}
            ;
            27[
            28    object,
            29    uuid(C10ADC20-7BF3-482B-BB62-0273B5E64688),
            30    dual,
            31    nonextensible,
            32    helpstring("IKeyValues Interface"),
            33    pointer_default(unique)
            34]
            35interface IKeyValues : IDispatch{
            36    [id(1), helpstring("method Add")] HRESULT Add([in] BSTR bstrName);
            37    [propget, id(2), helpstring("property Count")] HRESULT Count([out, retval] LONG* pVal);
            38    [propget, id(DISPID_VALUE), helpstring("property Item")] HRESULT Item(LONG nIndex, [out, retval] BSTR* pVal);
            39    [propget, id(DISPID_NEWENUM), helpstring("property _NewEnum")] HRESULT _NewEnum([out, retval] IUnknown** pVal);
            40}
            ;
            41[
            42    uuid(2990E9A8-5AFF-474A-AD45-90A705866FAF),
            43    version(1.0),
            44    helpstring("RegTool 1.0 類型庫")
            45]
            46library RegToolLib
            47{
            48    importlib("stdole2.tlb");
            49    [
            50        uuid(5E2513E7-DCF9-41DC-9F2C-6D29AA079B9D),
            51        helpstring("Tob Class")
            52    ]
            53    coclass Tob
            54    {
            55        [defaultinterface ITob;
            56    }
            ;
            57    [
            58        uuid(D6A9C4D0-A356-4282-89D9-C9263104A006),
            59        helpstring("ChildKeys Class")
            60    ]
            61    coclass ChildKeys
            62    {
            63        [defaultinterface IChildKeys;
            64    }
            ;
            65    [
            66        uuid(25BB24E4-46A9-46B1-BD85-BFC7FBE7ECF2),
            67        helpstring("KeyValues Class")
            68    ]
            69    coclass KeyValues
            70    {
            71        [defaultinterface IKeyValues;
            72    }
            ;
            73}
            ;
            74

            posted on 2009-08-03 16:08 Robertxiao 閱讀(483) 評論(0)  編輯 收藏 引用 所屬分類: RPC/COM/ATL散談

            久久精品国产亚洲7777| 久久久99精品成人片中文字幕| 欧美日韩成人精品久久久免费看| 99麻豆久久久国产精品免费| 久久99精品久久只有精品| 午夜天堂av天堂久久久| 亚洲精品乱码久久久久66| 久久久久人妻精品一区二区三区| 久久久久久人妻无码| 久久99久久99精品免视看动漫| 久久精品国产亚洲AV无码麻豆 | 久久精品国产一区| 久久99国产综合精品免费| 2021久久精品国产99国产精品| 久久久噜噜噜久久中文福利| 久久香蕉国产线看观看乱码| 国产精品久久久久jk制服| 人妻少妇久久中文字幕| 国产精品内射久久久久欢欢| 久久久久久精品免费免费自慰| 国产成人精品综合久久久| 国产精品18久久久久久vr| 国产精品亚洲美女久久久| 久久精品国产亚洲AV蜜臀色欲| 久久综合香蕉国产蜜臀AV| 国产精品无码久久四虎| 久久久一本精品99久久精品88| 久久精品国产亚洲av日韩| 国产三级精品久久| 亚洲AV无码成人网站久久精品大| 久久最新精品国产| 亚洲欧美日韩久久精品第一区| 狠狠色丁香婷婷综合久久来| 久久久久无码精品| 国产精品久久久久久久| 91麻豆国产精品91久久久| 精品999久久久久久中文字幕| 四虎国产精品成人免费久久| 国产精品99久久久久久董美香| 国内高清久久久久久| 欧美国产精品久久高清|