|
INI ファイルによる情報の保存(マルチユーザー対応) |
|
// ユーザー毎の情報保存先 TCHAR szAppUserData[MAX_PATH]; ::SHGetFolderPath(NULL, CSIDL_APPDATA, NULL, 0, szAppUserData); // 全ユーザー共通の情報保存先 TCHAR szAppAllData[MAX_PATH]; ::SHGetFolderPath(NULL, CSIDL_COMMON_APPDATA, NULL, 0, szAppAllData); |
|
#ifndef _WIN32_IE #define _WIN32_IE 0x0500 #endif |
|
#include "Imagehlp.h" #pragma comment(lib, "Imagehlp.lib") |
|
TCHAR szAppUser[MAX_PATH]; if FAILED(::SHGetFolderPath(NULL, CSIDL_APPDATA, NULL, 0, szAppUser)) return FALSE; CString strAppUser = szAppUser; strAppUser += _T("\\VALGUS\\"); ::MakeSureDirectoryPathExists(strAppUser); strAppUser += _T("MixerStrapper.ini"); |
|
if (m_pszProfileName) free((void*)m_pszProfileName); m_pszProfileName = _tcsdup(strAppUser); |
|
CWinApp* pApp = AfxGetApp(); pApp->WriteProfileInt(_T("セクション名"), _T("エントリ名"), 書き込む値); pApp->WriteProfileString(_T("セクション名"), _T("エントリ名"), 書き込む文字列); |
|
pApp->WriteProfileInt(_T("Default"), _T("VolumeValue"), 50); pApp->WriteProfileString(_T("Default"), _T("VolumeName"), _T("音量")); |
|
[Default] VolumeValue=50 VolumeName=音量 |
|
CWinApp* pApp = AfxGetApp(); if (!pApp->WriteProfileInt(_T("Default"), _T("VolumeValue"), 50)){ // 書き込み失敗 } |
|
CWinApp* pApp = AfxGetApp(); UINT uValue = pApp->GetProfileInt(_T("セクション名"), _T("エントリ名"), 規定値); CString str = pApp->GetProfileString(_T("セクション名"), _T("エントリ名")); |
|
CString strName = pApp->GetProfileString(_T("Default"), _T("VolumeName")); int nVol = pApp->GetProfileInt(_T("Default"), _T("VolumeValue"), -1); ASSERT(!strName.IsEmpty()); ASSERT(nVol != -1); |