レジストリの読み出し方

[戻る]
しげ 2002/11/14(木) 22:52:14
いつもおせわになっております。

環境 W-NT(Ver4.0)、VC++(Ver6.0)、 MFC

レジストリを読む方法として
RegOpenKeyEx()
RegQueryValueEx()
RegCloseKey()
で読む場合と
GetProfileInt()で読む場合があるようですが
使い分けはどのように考えたらよいのでしょうか?
GetProfileInt()ではHKEY_LOCAL_MACHINE、HKEY_CURRENT_USERなどのkeyは
どのように見つけるのでしょうか?

YuO [E-Mail] 2002/11/15(金) 00:35:04
GetProfileIntはレジストリでなくWIN.INIから読み出します。

いぷ 2002/11/15(金) 01:37:37
MFCということはCWinApp::GetProfileIntでしょうか。

CWinAppのGetProfile〜やWriteProfile〜は
m_pszRegistryKeyやm_pszProfileNameの状態によって
INIファイルやレジストリにアクセスします。
通常はアプリケーションの設定等を読み書きするときに使います。

任意のキーにアクセスしたい場合はReg〜APIを使うことになります。

しげ 2002/11/19(火) 23:52:08
[[解決]]
YuOさん いぶさん ご意見ありがとうございました。
>MFCということはCWinApp::GetProfileIntでしょうか。
そのとうりです。

>CWinAppのGetProfile〜やWriteProfile〜はm_pszRegistryKeyやm_pszProfileName
  の状態 によってINIファイルやレジストリにアクセスします。通常はアプリケーションの
  設定等を読み書きするときに使います。
Win-NTではレジストリHKEY_Current_USER\SoftWareが対象になりSetRegistryKey()により
セクション設定し読み書きすることがわかりました。
ただ Reg...を使うか、CWinApp;;GetProfile..()tどちらにするべきかの決定的理由はわかり
ませんでした。
他人の作成したシステムを改造するにあたり、経験のない機能にぶつかったのでこのラウンジで
皆様のご意見を伺いました。ありがとうございました。

RAPT 2002/11/20(水) 00:57:58
こんばんは、RAPTです。

> Reg...を使うか、CWinApp;;GetProfile..()tどちらにするべきかの決定的理由は
> わかりませんでした。
Reg...の方は、システムの固有データ(システムフォルダのパスとか)を
読み書きするのに使用し、GetProfile...の方は、個々のアプリケーションの
設定情報を読み出すのに使う、といった使い方が一般的なのではないでしょうか。

Windows98/VC++6.0std/SDK-may2002/ATL3.0/WTL7.0

しげ 2002/11/20(水) 22:31:12
RAPTさん ご意見ありがとうございます。
もう一度よく調べてみます。

古いスレッドには追加発言できません。