StdAfx.h 4.4 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149
  1. // stdafx.h : include file for standard system include files,
  2. // or project specific include files that are used frequently, but
  3. // are changed infrequently
  4. //#define WIN32_LEAN_AND_MEAN // Exclude rarely-used stuff from Windows headers
  5. // Windows Header Files:
  6. //#include <windows.h>
  7. //#include <WinSock2.h>
  8. #if !defined(AFX_STDAFX_H__D3E3BA89_EEFA_11D5_AB1C_00D0B70C3D79__INCLUDED_)
  9. #define AFX_STDAFX_H__D3E3BA89_EEFA_11D5_AB1C_00D0B70C3D79__INCLUDED_
  10. #if _MSC_VER > 1000
  11. #pragma once
  12. #endif // _MSC_VER > 1000
  13. //#define WIN32_LEAN_AND_MEAN
  14. // #ifndef _WIN32_WINNT
  15. // #define _WIN32_WINNT 0x0400
  16. // #endif
  17. #ifndef WINVER // 指定要求的最低平台是 Windows Vista。
  18. #define WINVER 0x0600 // 将此值更改为相应的值,以适用于 Windows 的其他版本。
  19. #endif
  20. #ifndef _WIN32_WINNT // 指定要求的最低平台是 Windows Vista。
  21. #define _WIN32_WINNT 0x0600 // 将此值更改为相应的值,以适用于 Windows 的其他版本。
  22. #endif
  23. #ifndef _WIN32_WINDOWS // 指定要求的最低平台是 Windows 98。
  24. #define _WIN32_WINDOWS 0x0410 // 将此值更改为适当的值,以适用于 Windows Me 或更高版本。
  25. #endif
  26. #ifndef _WIN32_IE // 指定要求的最低平台是 Internet Explorer 7.0。
  27. #define _WIN32_IE 0x0700 // 将此值更改为相应的值,以适用于 IE 的其他版本。
  28. #endif
  29. //#define VC_EXTRALEAN // Exclude rarely-used stuff from Windows headers
  30. #include <afxwin.h> // MFC core and standard components
  31. #include <afxext.h> // MFC extensions
  32. #include <afxdtctl.h> // MFC support for Internet Explorer 4 Common Controls
  33. #ifndef _AFX_NO_AFXCMN_SUPPORT
  34. #include <afxcmn.h> // MFC support for Windows Common Controls
  35. #endif // _AFX_NO_AFXCMN_SUPPORT
  36. #include <afxdb.h> // MFC ODBC database classes
  37. #include <afxmt.h>
  38. #include <afxsock.h> // MFC socket extensions
  39. #include <afxdisp.h>
  40. #include "Shlwapi.h"
  41. #include <afxtempl.h>
  42. #include <shlobj.h>
  43. #include "shfolder.h"
  44. #include <afxtempl.h> // MFC 模板类
  45. //#include <Wincrypt.h> // 可以去除sdkinclude这个目录;
  46. //#include "log4c.h"
  47. #include "Global.h"
  48. #include "LanShareDll.h"
  49. using namespace LanShareDll;
  50. #include "SafeList.h"
  51. //#define BASIC_VERSION //简易版,只有流程
  52. #define MSG_LENGTH 64
  53. #define TIMEDOG_VERSION//时钟狗
  54. #define SQLSERVER_VERSION //MS SQL版本
  55. //...........................
  56. //#define LKAY_VERSION //靓康爱婴
  57. //#define LYFZ_VERSION //内部版本
  58. //...........................
  59. //儿童版
  60. //#define CHILD_VERSION
  61. //座席版
  62. //#define CONNCOUNT_VERSION
  63. //企业版
  64. //#define ENTERPRISE_VERSION
  65. //...........................
  66. // 儿童版有三个版本:
  67. // 1.只开启CHILD_VERSION宏,就是儿童全能版;
  68. // 2.开启CHILD_VERSION + CONNCOUNT_VERSION :儿童座席版;
  69. // 3.开启CHILD_VERSION + ENTERPRISE_VERSION:儿童企业版;
  70. // 婚纱版:
  71. // 1.全部宏关闭,就是婚纱全能版;
  72. // 2.只开启CONNCOUNT_VERSION,就是婚纱座席版;
  73. // 3.只开启ENTERPRISE_VERSION,就是婚纱企业版;
  74. #define FTPSTAT_DOWNLOADSUCCEEDED 2
  75. #define FTPSTAT_UPLOADSUCCEEDED 3
  76. #define FTPSTAT_DOWNLOADFAILED 4
  77. #define FTPSTAT_UPLOADFAILED 5
  78. #define WM_THREADSTART WM_USER+200
  79. #define WM_THREADCLOSE WM_USER+201
  80. #define WM_THREADMSG WM_USER+202
  81. #define WM_ADDTRACELINE WM_USER+203
  82. #define USE_ADO_OPT_DB 0 //使用Ado操作数据库
  83. extern CString BrowseForFolder(HWND hWnd, LPCSTR lpszTitle, UINT nFlags);
  84. extern void DoEvents();
  85. extern void GetAppDir(CString& strAppDir);
  86. extern BOOL WaitWithMessageLoop(HANDLE hEvent, int nTimeout);
  87. PFNSHGETFOLDERPATHA GetFuncPtr_SHGetFolderPathA();
  88. extern HRESULT CreateStartMenuShortcut(LPSTR lpszShortcutFile, LPSTR lpszDescription, LPTSTR lpszRelativeFolder);
  89. extern void RemoveStartMenuShortcut(LPSTR lpszDescription, LPTSTR lpszRelativeFolder);
  90. extern CString GetShortcutTarget(LPCTSTR lpszFilename);
  91. void AutoSizeColumns(CListCtrl *pListCtrl);
  92. BOOL MyMakeSureDirectoryPathExists(LPCTSTR lpszDirPath);
  93. BOOL IsNumeric(char *buff);
  94. #define USE_POOL 1
  95. extern CArray<CODBCPool*, CODBCPool*> g_dbpool;
  96. // ODBC守卫垫片类;
  97. class ODBCConnGuard
  98. {
  99. int m_nIndex;
  100. CDatabase *m_pODBCConn;
  101. public:
  102. ODBCConnGuard( CDatabase *&pDBConn, const int& nIndex = -1, CONST DWORD &dwTimeOut = 30000 )
  103. {
  104. m_nIndex = nIndex + 1;
  105. m_pODBCConn = NULL;
  106. if ( g_dbpool.GetSize() )
  107. {
  108. pDBConn = g_dbpool.ElementAt(m_nIndex)->GetAConnection( dwTimeOut );
  109. m_pODBCConn = pDBConn;
  110. }
  111. }
  112. virtual ~ODBCConnGuard()
  113. {
  114. //CODBCPool::GetInstance()->RestoreAConnection(m_pODBCConn);
  115. if ( g_dbpool.GetSize() )
  116. {
  117. g_dbpool.ElementAt(m_nIndex)->RestoreAConnection(m_pODBCConn);
  118. }
  119. }
  120. };
  121. #define MAXPOOL 3
  122. #endif