掲示板システム
ホーム
アクセス解析
カテゴリ
ログアウト
INIファイルの作成について (ID:72365)
名前
ホームページ(ブログ、Twitterなど)のURL (省略可)
本文
お世話になります。 VS2005 MFCにてダイアログベースの アプリを作成しています。 フォルダ名称をINIファイルに覚えさせておきたいのですが サンプルを参考にしたのですがINIファイルの作成ができません。 何方かお教え頂けないでしょうか。 サンプルコード抜粋 InitInstance()内で以下のコードを定義しています。 //SetRegistryKey(_T("アプリケーション ウィザードで生成されたローカル アプリケーション")); // iniファイル設定(EXEがあるフォルダの、EXEファイル名の拡張子がiniなものになるように) if( m_pszProfileName ){ free((void*)m_pszProfileName); } TCHAR szModulePathName[MAX_PATH]; ::GetModuleFileName( AfxGetInstanceHandle(), szModulePathName, MAX_PATH ); // DLLでも使えるようにAfxGetInstanceHandle()を使っている。 TCHAR szIniPathName[_MAX_PATH]; TCHAR drive[_MAX_DRIVE]; TCHAR dir[_MAX_DIR]; TCHAR fname[_MAX_FNAME]; TCHAR ext[_MAX_EXT]; _tsplitpath_s( szModulePathName, drive, _MAX_DRIVE, dir, _MAX_DIR, fname, _MAX_FNAME, ext, _MAX_EXT ); ::SetCurrentDirectory(dir); // カレントディレクトリ変更 _tmakepath_s( szIniPathName, _MAX_PATH, drive, dir, fname, _T("ini") ); m_pszProfileName = _tcsdup( szIniPathName ); if( !m_pszProfileName ){ AfxMessageBox( _T("メモリ不足エラー") ); return FALSE; } OnInitDialog()で以下のコードを呼んでいます。 void CImageViewToolDlg::UpdateSettings(const BOOL bSave) { CWinApp* pApp = AfxGetApp(); ASSERT( pApp ); TCHAR szSection[256]; wsprintf( szSection, _T("Settings") ); // CString型の変数 if( bSave ){ pApp->WriteProfileString( szSection, _T("InputFolderPath"), m_strInputFolder ); } else{ m_strInputFolder = pApp->GetProfileString( szSection, _T("InputFolderPath"), m_strInputFolder ); }
←解決時は質問者本人がここをチェックしてください。
戻る
掲示板システム
Copyright 2020 Takeshi Okamoto All Rights Reserved.