我正在尝试编写一些C/c++代码,将导入.reg文件到注册表中。MSDN具有为特定密钥导入文件的功能,但我想导入整个HKCU hive。
没有Win32 API可以将.reg
文件导入到注册表1。您必须自己解析文件,并根据需要将指令转换为适当的注册表API函数调用-Reg(Open|Create)KeyEx()
,RegSetValueEx()
,RegDelete(Key|Value)()
等。
1:不要被RegLoadKey()
、RegReplaceKey()
和RegRestoreKey()
的存在所混淆。它们用于加载由RegSaveKey/Ex()
创建的文件,而不是基于文本的.reg
文件
否则,您可以使用ShellExecute/Ex()
或CreateProcess()
来执行regedit.exe /s <filename>
或reg.exe import <filename>
,并将.reg
文件的路径作为命令行参数,让regedit
/reg
为您处理导入。这是最简单的方法。