dcdd144598 2011-02-23 kinaba: #ifndef _KILIB_REGISTRY_H_ dcdd144598 2011-02-23 kinaba: #define _KILIB_REGISTRY_H_ dcdd144598 2011-02-23 kinaba: #include "types.h" dcdd144598 2011-02-23 kinaba: #include "memory.h" dcdd144598 2011-02-23 kinaba: #include "path.h" dcdd144598 2011-02-23 kinaba: #ifndef __ccdoc__ dcdd144598 2011-02-23 kinaba: namespace ki { dcdd144598 2011-02-23 kinaba: #endif dcdd144598 2011-02-23 kinaba: dcdd144598 2011-02-23 kinaba: dcdd144598 2011-02-23 kinaba: dcdd144598 2011-02-23 kinaba: //========================================================================= dcdd144598 2011-02-23 kinaba: //@{ @pkg ki.WinUtil //@} dcdd144598 2011-02-23 kinaba: //@{ dcdd144598 2011-02-23 kinaba: // INIファイル読み込み dcdd144598 2011-02-23 kinaba: // dcdd144598 2011-02-23 kinaba: //@} dcdd144598 2011-02-23 kinaba: //========================================================================= dcdd144598 2011-02-23 kinaba: dcdd144598 2011-02-23 kinaba: class IniFile : public Object dcdd144598 2011-02-23 kinaba: { dcdd144598 2011-02-23 kinaba: public: dcdd144598 2011-02-23 kinaba: dcdd144598 2011-02-23 kinaba: //@{ コンストラクタ //@} dcdd144598 2011-02-23 kinaba: IniFile( const TCHAR* ini=NULL, bool exeppath=true ); dcdd144598 2011-02-23 kinaba: dcdd144598 2011-02-23 kinaba: //@{ iniファイル名を設定 //@} dcdd144598 2011-02-23 kinaba: void SetFileName( const TCHAR* ini=NULL, bool exepath=true ); dcdd144598 2011-02-23 kinaba: dcdd144598 2011-02-23 kinaba: //@{ セクション名を設定 //@} dcdd144598 2011-02-23 kinaba: void SetSection( const TCHAR* section ); dcdd144598 2011-02-23 kinaba: dcdd144598 2011-02-23 kinaba: //@{ セクション名をユーザー名に設定 //@} dcdd144598 2011-02-23 kinaba: void SetSectionAsUserName(); dcdd144598 2011-02-23 kinaba: dcdd144598 2011-02-23 kinaba: //@{ ある特定の名前のセクションがあるかどうか? //@} dcdd144598 2011-02-23 kinaba: bool HasSectionEnabled( const TCHAR* section ) const; dcdd144598 2011-02-23 kinaba: dcdd144598 2011-02-23 kinaba: //@{ 整数値読み込み //@} dcdd144598 2011-02-23 kinaba: int GetInt ( const TCHAR* key, int defval ) const; dcdd144598 2011-02-23 kinaba: //@{ 真偽値読み込み //@} dcdd144598 2011-02-23 kinaba: bool GetBool( const TCHAR* key, bool defval ) const; dcdd144598 2011-02-23 kinaba: //@{ 文字列読み込み //@} dcdd144598 2011-02-23 kinaba: String GetStr ( const TCHAR* key, const String& defval ) const; dcdd144598 2011-02-23 kinaba: //@{ パス文字列読み込み //@} dcdd144598 2011-02-23 kinaba: Path GetPath ( const TCHAR* key, const Path& defval ) const; dcdd144598 2011-02-23 kinaba: dcdd144598 2011-02-23 kinaba: //@{ 整数値書き込み //@} dcdd144598 2011-02-23 kinaba: bool PutInt ( const TCHAR* key, int val ); dcdd144598 2011-02-23 kinaba: //@{ 真偽値書き込み //@} dcdd144598 2011-02-23 kinaba: bool PutBool( const TCHAR* key, bool val ); dcdd144598 2011-02-23 kinaba: //@{ 文字列書き込み //@} dcdd144598 2011-02-23 kinaba: bool PutStr ( const TCHAR* key, const TCHAR* val ); dcdd144598 2011-02-23 kinaba: //@{ パス書き込み //@} dcdd144598 2011-02-23 kinaba: bool PutPath( const TCHAR* key, const Path& val ); dcdd144598 2011-02-23 kinaba: dcdd144598 2011-02-23 kinaba: private: dcdd144598 2011-02-23 kinaba: dcdd144598 2011-02-23 kinaba: Path iniName_; dcdd144598 2011-02-23 kinaba: String section_; dcdd144598 2011-02-23 kinaba: char m_StrBuf[256]; dcdd144598 2011-02-23 kinaba: }; dcdd144598 2011-02-23 kinaba: dcdd144598 2011-02-23 kinaba: dcdd144598 2011-02-23 kinaba: dcdd144598 2011-02-23 kinaba: //------------------------------------------------------------------------- dcdd144598 2011-02-23 kinaba: dcdd144598 2011-02-23 kinaba: inline IniFile::IniFile( const TCHAR* ini, bool exepath ) dcdd144598 2011-02-23 kinaba: { SetFileName( ini, exepath ); } dcdd144598 2011-02-23 kinaba: dcdd144598 2011-02-23 kinaba: inline void IniFile::SetSection( const TCHAR* section ) dcdd144598 2011-02-23 kinaba: { section_ = section; } dcdd144598 2011-02-23 kinaba: dcdd144598 2011-02-23 kinaba: dcdd144598 2011-02-23 kinaba: dcdd144598 2011-02-23 kinaba: dcdd144598 2011-02-23 kinaba: //========================================================================= dcdd144598 2011-02-23 kinaba: dcdd144598 2011-02-23 kinaba: } // namespace ki dcdd144598 2011-02-23 kinaba: #endif // _KILIB_REGISTRY_H_