2013-01-06 83 views
1

我試過此代碼將註冊表項導出到文件。註冊表導出不起作用

private void BackupRegistry() 
{ 
    var dir = Path.GetDirectoryName(Application.ExecutablePath); 
    Process.Start("reg", string.Format("export HKEY_CURRENT_USER\\Software\\DownloadManager {0}\\idm.reg", dir)); 
} 

但是當我執行該方法時,在可執行目錄中沒有任何idm.reg。

+0

UAC阻止文件寫入到同一目錄作爲程序的安裝位置,您應該enquote的路徑。你需要選擇一個更好的目錄,使用Environment.GetFolderPath()或Path.GetTempFileName()。 –

+0

@HansPassant UAC在我的筆記本電腦中禁用! –

+0

@HansPassant如何在'dir'路徑中備份'目錄?我試過,但沒有奏效! –

回答

2

,如果它包含空格

private void BackupRegistry() 
{ 
    var dir = Path.GetDirectoryName(Application.ExecutablePath); 
    Process.Start("reg", string.Format("export HKEY_CURRENT_USER\\Software\\DownloadManager \"{0}\\idm.reg\"", dir)); 
}