• <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散談

            噜噜噜色噜噜噜久久| 亚洲av成人无码久久精品| 久久996热精品xxxx| 国产精品亚洲综合久久| 亚洲av伊人久久综合密臀性色 | 色青青草原桃花久久综合| 久久偷看各类wc女厕嘘嘘| 超级碰久久免费公开视频| 99久久精品免费看国产一区二区三区 | 狠狠综合久久综合中文88| 欧美黑人激情性久久| 国产成人无码精品久久久免费| 国产A三级久久精品| 久久久久久国产精品美女| 久久99国产精品尤物| 欧美亚洲国产精品久久| 久久久久国产精品嫩草影院| 久久久久免费看成人影片| 久久久久波多野结衣高潮| 久久播电影网| 国产真实乱对白精彩久久| 99国产欧美精品久久久蜜芽| 午夜精品久久久久久久久| 狠狠色丁香久久婷婷综合蜜芽五月 | 日韩欧美亚洲国产精品字幕久久久| 人妻久久久一区二区三区| 伊人久久大香线蕉AV一区二区| 久久精品国产欧美日韩| 精品国产青草久久久久福利| 99久久精品免费| 久久久久国色AV免费观看| 久久99精品国产麻豆婷婷| 久久久久这里只有精品 | 久久精品久久久久观看99水蜜桃 | 久久精品日日躁夜夜躁欧美| 99久久综合国产精品免费| 2021国产精品午夜久久| 亚洲午夜久久久久妓女影院 | 久久久久99精品成人片牛牛影视| 色综合久久综精品| 少妇久久久久久被弄到高潮|