注册表是windows操作系统中的一个核心数据库,其中存放着各种参数,直接控制着windows的启动、硬件驱动程序的装载以及一些windows应用程序的运行,从而在整个系统中起着核心作用。这些作用包括了软、硬件的相关配置和状态信息,比如注册表中保存有应用程序和资源管理器外壳的初始条件、首选项和卸载数据等,联网计算机的整个系统的设置和各种许可,文件扩展名与应用程序的关联,硬件部件的描述、状态和属性,性能记录和其他底层的系统状态信息,以及其他数据等。
这里介绍一些通过node.js操作注册表的几种方法
方法一:通过childprocess调用reg命令
reg命令是Windows提供的,它可以添加、更改和显示注册表项中的注册表子项信息和值,通过命令行输入 REG /? 即可弹出命令提示
<script type="text/html" style="display:block">C:UsersAdministrator>REG /?
REG Operation [Parameter List]
Operation [ QUERY | ADD | DELETE | COPY |
SAVE | LOAD | UNLOAD | RESTORE |
COMPARE | EXPORT | IMPORT | FLAGS ]</script>返回代码: (除了 REG COMPARE)
0 - 成功
1 - 失败
要得到有关某个操作的帮助,请键入:
<script type="text/html" style="display:block"> REG Operation /?</script>
例如:
<script type="text/html" style="display:block">REG QUERY /? REG ADD /? REG DELETE /? REG COPY /? REG SAVE /? REG RESTORE /? REG LOAD /? REG UNLOAD /? REG COMPARE /? REG EXPORT /? REG IMPORT /? REG FLAGS /?</script>
通过child_process简单的封装即可调用上面的命令了:
<script type="text/html" style="display:block">var cp = require('child_process');
cp.exec("REG QUERY HKEY_CURRENT_USERXXX",function(error,stdout,stderr) {
});</script>方法二:通过node-regedit模块
node-regedit模块本质上也是通过对child_process的封装实现的,示例代码如下:
<script type="text/html" style="display:block">var regedit = require('regedit')
regedit.list('HKCUSOFTWARE', function(err, result) {
...
})
regedit.putValue({
'HKCUSOFTWAREMyApp': {
'Company': {
value: 'Moo corp',
type: 'REG_SZ'
},
'Version': { ... }
},
'HKLMSOFTWAREMyApp2': { ... }
}, function(err) {
...
})
regedit.createKey(['HKLMSOFTWAREMoo', 'HKCUSOFTWAREFoo'], function(err) {
...
})</script>以上就是方法分享:Node.JS更改Windows注册表Regedit的详细内容,更多请关注Gxl网其它相关文章!
【说明】:本文章由站长整理发布,文章内容不代表本站观点,如文中有侵权行为,请与本站客服联系(QQ:254677821)!