2009-09-02 1 views
0

c/C++で、プログラムでどのようにユーザーレジストリハイブを読み込むのかという小さな例がありますか?私はハイブをロードしていくつかの値を設定し、ハイブを閉じることを好みます。レジストリハイブの質問

ご協力いただきありがとうございます。

トニー

+0

「ユーザーレジストリハイブを読み込む」とはどういう意味ですか?ファイルから? –

答えて

-1

私は具体的な例を持っていないが、WindowsのAPIは、あなたがなり必要呼び出す:

  • RegOpenKeyEx() キー
  • RegSetValueEx()/RegGetValue() [と妹のレジストリを読み込むために 関数]レジストリ値を取得/設定する
  • RegCloseKey() レジストリを閉じます。

コードbehind this link on codersource.netがありますが、どのように完全または正しいかを保証することはできませんが、

+0

私はそれらの関数を知っていて、これまで何度も使用してきましたが、どのようにユーザーハイブを読み込むのですか?たぶん私はそれらの機能で何かを見逃しているので、私は再び見ていきます。ユーザーの特定のハイブの読み込みについては何も覚えていません。 – LilMoke

0

Documentation says RegOpenKeyEx関数の最初の引数として定義済みのキーHKEY_CURRENT_USERを渡す必要があります。 enumerate HKEY_CURRENT_USERをRegQueryInfoKeyに直接渡すこともできます。

3

RegLoadKey()とRegUnLoadKey()を使用できます。 HKLM \ SOFTWARE \ Microsoft \ Windows NT \ CurrentVersion \ ProfileListを使用して、ユーザーハイブ(NTUSER.DAT)へのパスを構築できます。しかし、これらの機能を無駄なく使用することは、一般的には良い考えではありません。プロファイルをロードしているときにユーザーがログオンしようとすると、プロファイルをロードできなくなり、一時的なデフォルトプロファイルが取得されます。