我需要幫助才能導出C++中的註冊表項。如何在C++中導出註冊表項
cmd = " reg.exe export \"HKLM\\software\\Far manager\" \"C:\Users\\user\\Desktop\\test.reg\" ";
// printf("cmd = %s\n", cmd);
system(cmd);
的代碼不能正常工作,因爲一個名爲「遠東經理」包括一個空格,告訴我「錯誤:系統找不到指定的註冊表項或值」。
但是,如果我使用沒有空格的名稱,例如「Mozilla」,該程序很有用。
我想使用「遠%20%管理器」和遠%backspace%管理器,但它不起作用。
但是,如果我在cmd中編寫命令(reg.exe export "HKLM\software\Far manager" "%userprofile%\\Desktop\\test.reg"
),它的效果很好。
該代碼看起來不錯。我期望真正的問題是註冊表重定向。你的機器是64位的操作系統嗎?你的進程是32位嗎?在這種情況下,註冊表重定向是個問題。 –
您可能只想使用Windows API來執行此操作。 [這是註冊表訪問的Windows API參考](http://msdn.microsoft.com/en-us/library/windows/desktop/ms724871(v = vs.85).aspx) – chbaker0
我使用64位操作系統,但是Far經理也是64bit。 WinAPI以二進制格式導出註冊表項,但我需要.reg文件。 –