• <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://m.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散談

            狠狠88综合久久久久综合网| 国产亚州精品女人久久久久久 | 亚洲国产精品久久久久婷婷老年| 久久久久中文字幕| 国产视频久久| 日韩人妻无码精品久久免费一| 国产精品女同一区二区久久| 久久精品国产久精国产一老狼| 国产一区二区精品久久| 亚洲精品高清一二区久久| 精品国产91久久久久久久| 一本色道久久综合亚洲精品| 久久精品?ⅴ无码中文字幕| 精品熟女少妇a∨免费久久| 久久久国产99久久国产一| 99久久亚洲综合精品网站| 久久99热这里只有精品国产| 欧美粉嫩小泬久久久久久久| 精品久久久久久国产91| 国产成人精品三上悠亚久久| 久久精品国产精品亚洲| 久久久久综合网久久| 久久精品国产第一区二区三区| 久久九九久精品国产免费直播| 久久国产三级无码一区二区| 国产精品欧美亚洲韩国日本久久| 99999久久久久久亚洲| 久久夜色精品国产欧美乱| 一本一本久久a久久综合精品蜜桃| 亚洲人成电影网站久久| 日本国产精品久久| 欧洲性大片xxxxx久久久| 久久九九久精品国产| 久久久久久亚洲精品不卡| 久久www免费人成精品香蕉| 国产高清国内精品福利99久久| 久久久久国产一级毛片高清版| 亚洲国产天堂久久综合网站| 久久本道久久综合伊人| 国产精品久久久久蜜芽| 欧美国产成人久久精品|