掲示板システム
ホーム
アクセス解析
カテゴリ
ログアウト
RegSaveKeyによるレジストリのエクスポート方法について (ID:68717)
名前
ホームページ(ブログ、Twitterなど)のURL (省略可)
本文
こんにちは。 RegSaveKeyと、RegReplaceKeyを使って、 HKCU\Software\Microsoft\Windows\CurrentVersion\Internet Settings 以下のキーや値をエクスポート、インポートするようなものを作っています。 で、エクスポートする方で早速躓いてしまいました。 エクスポート用の関数として、以下のようなサンプル関数を作ってみました。 //インターネットの設定をエクスポートする関数 BOOL ExportInternetSettings(char *RegFileName) { HKEY l_hKey; DWORD dwDisposition; LPVOID lpMessageBuffer; //レジストリを開く if(RegCreateKeyEx(HKEY_CURRENT_USER, INTERNET_CONNECTION_KEY, 0, NULL, REG_OPTION_NON_VOLATILE, KEY_ALL_ACCESS, NULL, &l_hKey, &dwDisposition) != ERROR_SUCCESS) // if(RegOpenKeyEx(HKEY_CURRENT_USER, INTERNET_CONNECTION_KEY, 0, KEY_ALL_ACCESS, &l_hKey) != ERROR_SUCCESS) { FormatMessage(FORMAT_MESSAGE_ALLOCATE_BUFFER | FORMAT_MESSAGE_FROM_SYSTEM, NULL, GetLastError(), MAKELANGID(LANG_NEUTRAL, SUBLANG_DEFAULT), (LPTSTR) &lpMessageBuffer, 0, NULL); MessageBox(NULL, (LPCSTR)lpMessageBuffer, "エラー", MB_OK); LocalFree( lpMessageBuffer ); return FALSE; } //レジストリをエクスポート if(RegSaveKey(l_hKey, RegFileName, NULL) != ERROR_SUCCESS) { FormatMessage(FORMAT_MESSAGE_ALLOCATE_BUFFER | FORMAT_MESSAGE_FROM_SYSTEM, NULL, GetLastError(), MAKELANGID(LANG_NEUTRAL, SUBLANG_DEFAULT), (LPTSTR) &lpMessageBuffer, 0, NULL); MessageBox(NULL, (LPCSTR)lpMessageBuffer, "エラー", MB_OK); LocalFree( lpMessageBuffer ); RegCloseKey(l_hKey); return FALSE; } RegCloseKey(l_hKey); return TRUE; } 実行してみたところ、RegSaveKeyで失敗をしているのですが・・・ FormatMessageでGetLastErrorの情報を取得しても「正常に終了」と・・・ MSDNなどを見てもわからず・・・ どなたかご存じの方、何がいけないかご教授いただけませんでしょうか? ちなみに、開発環境はWindows XP SP2 + VS.NET 2005 Team + 最新Windows SDK です。 よろしくお願いいたします。
←解決時は質問者本人がここをチェックしてください。
更新する
戻る
掲示板システム
Copyright 2021 Takeshi Okamoto All Rights Reserved.