いつもおせわになっております。
環境 W-NT(Ver4.0)、VC++(Ver6.0)、 MFC
レジストリを読む方法として
RegOpenKeyEx()
RegQueryValueEx()
RegCloseKey()
で読む場合と
GetProfileInt()で読む場合があるようですが
使い分けはどのように考えたらよいのでしょうか?
GetProfileInt()ではHKEY_LOCAL_MACHINE、HKEY_CURRENT_USERなどのkeyは
どのように見つけるのでしょうか?
GetProfileIntはレジストリでなくWIN.INIから読み出します。
MFCということはCWinApp::GetProfileIntでしょうか。
CWinAppのGetProfile~やWriteProfile~は
m_pszRegistryKeyやm_pszProfileNameの状態によって
INIファイルやレジストリにアクセスします。
通常はアプリケーションの設定等を読み書きするときに使います。
任意のキーにアクセスしたい場合はReg~APIを使うことになります。
YuOさん いぶさん ご意見ありがとうございました。
>MFCということはCWinApp::GetProfileIntでしょうか。
そのとうりです。
>CWinAppのGetProfile~やWriteProfile~はm_pszRegistryKeyやm_pszProfileName
の状態 によってINIファイルやレジストリにアクセスします。通常はアプリケーションの
設定等を読み書きするときに使います。
Win-NTではレジストリHKEY_Current_USER\SoftWareが対象になりSetRegistryKey()により
セクション設定し読み書きすることがわかりました。
ただ Reg...を使うか、CWinApp;;GetProfile..()tどちらにするべきかの決定的理由はわかり
ませんでした。
他人の作成したシステムを改造するにあたり、経験のない機能にぶつかったのでこのラウンジで
皆様のご意見を伺いました。ありがとうございました。
こんばんは、RAPTです。
> Reg...を使うか、CWinApp;;GetProfile..()tどちらにするべきかの決定的理由は
> わかりませんでした。
Reg...の方は、システムの固有データ(システムフォルダのパスとか)を
読み書きするのに使用し、GetProfile...の方は、個々のアプリケーションの
設定情報を読み出すのに使う、といった使い方が一般的なのではないでしょうか。
Windows98/VC++6.0std/SDK-may2002/ATL3.0/WTL7.0
RAPTさん ご意見ありがとうございます。
もう一度よく調べてみます。