IniFile.cpp
上传用户:jstlsd
上传日期:2007-01-13
资源大小:186k
文件大小:2k
源码类别:

钩子与API截获

开发平台:

Visual C++

  1. //---------------------------------------------------------------------------
  2. //
  3. // IniFile.cpp
  4. //
  5. // SUBSYSTEM:   Hook system
  6. //
  7. // MODULE:      Hook tool    
  8. //
  9. // DESCRIPTION: Common utilities. 
  10. //              Provides implementation for retrieving data from INI file
  11. // 
  12. //             
  13. // AUTHOR: Ivo Ivanov (ivopi@hotmail.com)
  14. // DATE: 2001 December v1.00
  15. //
  16. //---------------------------------------------------------------------------
  17. #include "..CommonCommon.h"
  18. #include "..CommonSysUtils.h"
  19. #include "IniFile.h"
  20. //---------------------------------------------------------------------------
  21. //
  22. // class CIniFile   
  23. //
  24. //---------------------------------------------------------------------------
  25. CIniFile::CIniFile(char* pszFileName)
  26. {
  27. strcpy(m_szFileName, pszFileName);
  28. }
  29. CIniFile::~CIniFile()
  30. {
  31. }
  32. //
  33. // Retrieve a string value from an INI file
  34. //
  35. void CIniFile::ReadString(
  36. const char* pszSection, 
  37. const char* pszIdent, 
  38. const char* pszDefault,
  39. char*       pszResult
  40. )
  41. {
  42.     DWORD dwResult = ::GetPrivateProfileString(
  43. pszSection,        // section name
  44. pszIdent,          // key name
  45. NULL,              // default string
  46. pszResult,         // destination buffer  
  47. MAX_PATH,          // size of destination buffer
  48. m_szFileName       // initialization file name
  49. );
  50. if (!dwResult)
  51. strcpy(pszResult, pszDefault);
  52. }
  53. //
  54. // Retrieve a boolean value from an INI file
  55. //
  56. BOOL CIniFile::ReadBool(
  57. const char* pszSection, 
  58. const char* pszIdent, 
  59. BOOL        bDefault
  60. )
  61. {
  62. char    szResult[MAX_PATH];
  63. BOOL    bResult   = bDefault;
  64. char    szDefault[MAX_PATH];
  65. BoolToStr(bDefault, szDefault);
  66. ReadString(
  67. pszSection, 
  68. pszIdent,
  69. szDefault,
  70. szResult
  71. );
  72. bResult = StrToBool(szResult);
  73. return bResult;
  74. }
  75. //--------------------- End of the file -------------------------------------