LogIt.h
上传用户:deligs
上传日期:2007-01-08
资源大小:43k
文件大小:6k
源码类别:

网络编程

开发平台:

Visual C++

  1. //////////////////////////////////////////////////////////////////////
  2. // Class CLogIt Header File
  3. //
  4. // Created: 2/7/00
  5. //
  6. // Author: Daniel Madden
  7. //         Daniel.Madden@Compaq.Com
  8. //
  9. // History: 
  10. //
  11. // Modifications (by other programmers): 
  12. //
  13. //////////////////////////////////////////////////////////////////////
  14. #ifndef __LOGIT_H__
  15. #define __LOGIT_H__
  16. class CLogIt
  17. {
  18. // Construction
  19. public:
  20. CLogIt();
  21. UINT m_uLogLevel;
  22. // 0 : no log
  23. // 1 : record LOG only
  24. // 2 : record both LOG and INFO
  25. ///////////////////////////////////////////////////////////////////////////
  26. //
  27. // Class Functions
  28. //
  29. ///////////////////////////////////////////////////////////////////////////
  30. /* 
  31. Encrypt a String of data (using DES encryption)
  32.     parm1 = (CString) String to Encrypt.
  33.     parm2 = (CString) Pass Phrase.
  34. returns = (CString) the Encrypted String
  35. */
  36. //CString EncryptString(CString instr, CString passPhrase);
  37. /* 
  38. Decrypt a String of data (using DES encryption)
  39.     parm1 = (CString) String to Decrypt.
  40.     parm2 = (CString) Pass Phrase.
  41. returns = (CString) the Decrypted String
  42. */
  43. //CString DecryptString(CString instr, CString passPhrase);
  44. /* 
  45. Get the Log File Directory Name
  46. returns = (CString) the Logging Directory
  47. */
  48. CString GetLogDir(void) { return m_csLogDir;}
  49. /* 
  50. Set the Log File Directory Name
  51.     parm1 = (CString) Full (Drv:\Dir) log directory to set.
  52. NOTE: This recognizes UNC Names (\SERVERShare)!
  53. returns = (Nothing)
  54. */
  55. void SetLogDir(CString csLogDir) { m_csLogDir = csLogDir; }
  56. /* 
  57. Get the Log File Name
  58. returns = (CString)
  59. */
  60. CString GetLogName(void) { return m_csLogName;}
  61. /* 
  62. Check if the Log File is open
  63. returns = (BOOL)
  64. */
  65. BOOL IsOpen(void) { return (BOOL)m_fLog;}
  66. /* 
  67. Write to the Log File
  68.     parm1 = (CString) Message to write to the log.
  69.     parm2 = (int) Type of log entry: (0 = Error, 1 = Warning, 2 = Information)
  70. returns = (Nothing)
  71. */
  72. void WriteLog(CString csMsg);
  73. void WriteLogOld(CString csMsg);
  74. /* 
  75. Create the Log File path using the default path (C:\Logs) if it doesn't exist
  76. returns = (BOOL) if successfull...otherwise FALSE
  77. NOTE: This recognizes UNC Names (\SERVERShare)!
  78. */
  79. BOOL CreateLogPath(void);
  80. /* 
  81. Create the Log File path if it doesn't exist
  82.     parm1 = (CString) Full (Drv:\Dir) log directory to set.
  83. returns = (BOOL) if successfull...otherwise FALSE
  84. NOTE: This recognizes UNC Names (\SERVERShare)!
  85. */
  86. BOOL CreateLogPath(CString csLogDir);
  87. /* 
  88. Get the DomainUser (DOMAINuser) Name 
  89. returns = (BOOL)
  90. */
  91. //BOOL GetSystemDomainUserName(void);
  92. /* 
  93. Get the DomainUser (DOMAINuser) Name 
  94. returns = (BOOL)
  95. */
  96. //CString GetDomainUser(void) { return m_csDomainUserName; }
  97.     /*
  98.     Get OS Version.
  99.     parm1 = (CString) Fill with OS Version (TEXT).
  100.     parm2 = (int) Fill with OS Version (NUMBER).
  101. 1 - Win32s
  102. 2 - Win95
  103. 3 - Win98
  104. 4 - WinNT4
  105. 5 - Win2000
  106. returns = (BOOL) if successfull...otherwise FALSE
  107.     */
  108. BOOL GetOSType (CString& csOSVersion, int& nType);
  109.     /*
  110.     Display system error message.
  111.     parm1 = error number.
  112. returns = (CString)
  113.     */
  114. CString DisplayError(LONG lCode);
  115.     /*
  116.     Split strings (according to the deliminator) into a CStringArray (param #3)
  117.     parm1 = (CString) Source to split
  118.     parm2 = (CString) Deliminator to use
  119.     parm3 = (CStringArray&) Referenced Array to fill
  120.     parm4 = (BOOL) Add blanks, if found
  121. returns = (Nothing)
  122.     */
  123. void Split(CString Source, CString Deliminator, CStringArray& AddIt, BOOL bAddEmpty);
  124. /* 
  125. Check if the Log File is open
  126. returns = (BOOL)
  127. */
  128. //BOOL IsAdmin(void) { return m_bGoodAdmPwd;}
  129. ///////////////////////////////////////////////////////////////////////////
  130. //
  131. // Class Variables (public)
  132. //
  133. ///////////////////////////////////////////////////////////////////////////
  134. /*
  135. Holds the applications pass phrase
  136. */
  137. CString m_csAppsPPhrase;
  138. /*
  139. Was the Pass Phrase Good?
  140. */
  141. BOOL m_bGoodPassPhrase;
  142. /*
  143. Was the Admin Password Good?
  144. */
  145. BOOL m_bGoodAdmPwd;
  146. // Implementation
  147. protected:
  148. ///////////////////////////////////////////////////////////////////////////
  149. //
  150. // Class Functions (protected)
  151. //
  152. ///////////////////////////////////////////////////////////////////////////
  153. /* 
  154. Creates the Log Directory if it doesn't exist
  155.     parm1 = (CString) Full (Drv:\Dir) log directory to create.
  156. returns = (BOOL) if successfull...otherwise FALSE
  157. NOTE: Used by "CreateLogPath" Function.
  158. */
  159. BOOL CreateLogDirectory(CString csDirName);
  160. ///////////////////////////////////////////////////////////////////////////
  161. //
  162. // Class Variables (protected)
  163. //
  164. ///////////////////////////////////////////////////////////////////////////
  165. /*
  166. Holds the DomainUser name
  167. */
  168. CString m_csDomainUserName;
  169. /*
  170. Handle to the Log File
  171. */
  172. FILE* m_fLog;
  173. /*
  174. Log file directory Exists
  175. */
  176. BOOL m_bDirExists;
  177. /*
  178. Logging time stamp
  179. */
  180. CString m_csLogEntryTime;
  181. /*
  182. Log Path
  183. */
  184. CString m_csLogPath;
  185. /*
  186. Full Log Path & File Name
  187. */
  188. CString m_csFullLogName;
  189. /*
  190. Log file name
  191. */
  192. CString m_csLogName;
  193. /*
  194. Log file directory name
  195. */
  196. CString m_csLogDir;
  197. /*
  198. Used by the 'GetUserAndDomainName' Function
  199. */
  200. // TCHAR User[UNLEN + 1];
  201. /*
  202. Used by the 'GetUserAndDomainName' Function
  203. */
  204. // TCHAR Domain[DNLEN + 1];
  205. /*
  206. Used by the 'GetUserAndDomainName' Function
  207. */
  208. // DWORD cchUser;
  209. /*
  210. Used by the 'GetUserAndDomainName' Function
  211. */
  212. // DWORD cchDomain;
  213. };
  214. #endif