注冊表是windows操作系統中的一個核心數據庫,其中存放著各種參數,直接控制著windows的啟動、硬件驅動程序的裝載以及一些windows應用程序的運行,從而在整個系統中起著核心作用。這些作用包括了軟、硬件的相關配置和狀態信息,比如注冊表中保存有應用程序和資源管理器外殼的初始條件、首選項和卸載數據等,聯網計算機的整個系統的設置和各種許可,文件擴展名與應用程序的關聯,硬件部件的描述、狀態和屬性,性能記錄和其他底層的系統狀態信息,以及其他數據等。
這里介紹一些通過node.js操作注冊表的幾種方法
方法一:通過childprocess調用reg命令
reg命令是Windows提供的,它可以添加、更改和顯示注冊表項中的注冊表子項信息和值,通過命令行輸入 REG /? 即可彈出命令提示
C:/Users/Administrator>REG /?REG Operation [Parameter List] Operation [ QUERY | ADD | DELETE | COPY | SAVE | LOAD | UNLOAD | RESTORE | COMPARE | EXPORT | IMPORT | FLAGS ]
返回代碼: (除了 REG COMPARE)
0 - 成功
1 - 失敗
要得到有關某個操作的幫助,請鍵入:
REG Operation /?
例如:
REG QUERY /? REG ADD /? REG DELETE /? REG COPY /? REG SAVE /? REG RESTORE /? REG LOAD /? REG UNLOAD /? REG COMPARE /? REG EXPORT /? REG IMPORT /? REG FLAGS /?
通過child_process簡單的封裝即可調用上面的命令了:
var cp = require('child_process');cp.exec("REG QUERY HKEY_CURRENT_USER/XXX",function(error,stdout,stderr) {});
方法二:通過node-regedit模塊
node-regedit模塊本質上也是通過對child_process的封裝實現的,示例代碼如下:
var regedit = require('regedit')regedit.list('HKCU//SOFTWARE', function(err, result) { ...})regedit.putValue({ 'HKCU//SOFTWARE//MyApp': { 'Company': { value: 'Moo corp', type: 'REG_SZ' }, 'Version': { ... } }, 'HKLM//SOFTWARE//MyApp2': { ... }}, function(err) { ...})regedit.createKey(['HKLM//SOFTWARE//Moo', 'HKCU//SOFTWARE//Foo'], function(err) { ...})
項目地址: https://github.com/ironSource/node-regedit
總結
以上所述是小編給大家介紹的Node.JS更改Windows注冊表Regedit的方法小結,希望對大家有所幫助,如果大家有任何疑問請給我留言,小編會及時回復大家的。在此也非常感謝大家對武林網網站的支持!
新聞熱點
疑難解答