Node.JS更改Windows注册表Regedit的方法小结
程序员文章站
2022-04-29 08:05:14
注册表是windows操作系统中的一个核心数据库,其中存放着各种参数,直接控制着windows的启动、硬件驱动程序的装载以及一些windows应用程序的运行,从而在整个系统...
注册表是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的方法小结,希望对大家有所帮助