次の方法で共有


CWinApp::GetProfileString

更新 : 2007 年 11 月

アプリケーションのレジストリまたは .INI ファイルの指定のセクションのエントリから文字列を取得します。

CString GetProfileString(
   LPCTSTR lpszSection,
   LPCTSTR lpszEntry,
   LPCTSTR lpszDefault = NULL 
);

パラメータ

  • lpszSection
    エントリがあるセクションを指定する NULL で終わる文字列へのポインタ。

  • lpszEntry
    文字列を取得するエントリを示す NULL で終わる文字列へのポインタ。NULL を指定することはできません。

  • lpszDefault
    初期設定ファイルにエントリが見つからなかったときの、既定の文字列値へのポインタ。

戻り値

アプリケーションの .INI ファイルから文字列を返します。エントリが見つからなかった場合は、lpszDefault の値を返します。フレームワークがサポートしている文字列の最大長は、_MAX_PATH です。lpszDefault に NULL が指定されている場合は、空の文字列を返します。

解説

62txabd8.alert_security(ja-jp,VS.90).gifセキュリティに関するメモ :

この関数が返すデータは、NULL で終わるデータとは限らないため、呼び出し元で検証を行う必要があります。詳細については、「Avoiding Buffer Overruns」を参照してください。

使用例

CWinApp* pApp = AfxGetApp();

CString strSection       = _T("My Section");
CString strStringItem    = _T("My String Item");
CString strIntItem       = _T("My Int Item");

pApp->WriteProfileString(strSection, strStringItem, _T("test"));

CString strValue;
strValue = pApp->GetProfileString(strSection, strStringItem);
ASSERT(strValue == _T("test"));

pApp->WriteProfileInt(strSection, strIntItem, 1234);

int nValue;
nValue = pApp->GetProfileInt(strSection, strIntItem, 0);
ASSERT(nValue == 1234);

ほかの例については、「CWinApp::GetProfileInt」の例を参照してください。

スマート デバイス開発者のためのメモ

CWinApp::SetRegistryKey を使用したレジストリに基づくバージョンのみが、Windows CE ベースのプロジェクトでサポートされます。

必要条件

ヘッダー : afxwin.h

参照

参照

CWinApp クラス

階層図

CWinApp::GetProfileInt

CWinApp::WriteProfileString

GetPrivateProfileString

その他の技術情報

CWinApp のメンバ