2016-11-08 68 views
-2

我以为使用RegSaveKeyEx会帮助我将注册表子项保存为.REG文件,但它不起作用。我有这样的代码:保存为.REG文件使用WinApi

// Saving key 
LONG saveKey = RegSaveKeyExW(keyResult, L"C:\\Demo1.reg", securityAttributes, Flags); 

securityAttributes设置为NULL,并Flags,作为REG_LATEST_FORMAT

我没有任何问题将它保存为.DAT文件,但想要一个.REG之一,就像从注册表窗口本身导出子项。

这是.reg文件的样子:

.REG file

这并不是说我不是在谈论启用或访问令牌禁用权限,但使用功能本身。

+2

不,这里没有API。 .REG格式由RegEdit处理。 –

+0

[RegSaveKeyEx需要提升?]的可能的重复(http://stackoverflow.com/questions/1088612/regsavekeyex-requires-elevation) – VuVirt

+0

不是。我不是说在访问令牌中启用/禁用特权;我正在谈论这个功能本身。 –

回答

1

没有注册表API函数会输出.reg格式的密钥。您必须自己枚举密钥的内容并手动写出自己的.reg文件。

1

你可以使用reg export

这里有一个例子:

reg export HKLM\Software\MyCo\MyApp AppBkUp.reg 

在你的代码只需要调用ShellExecuteEx用注册表编辑器和正确的命令行参数。