StdAfx.h 4.6 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155
  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 "..\..\..\common\Base64\Base64.h"
  48. #include "..\..\..\common\des\des.h"
  49. #include "..\..\..\common\DeviceQuery\DeviceQuery.h"
  50. #include "..\..\..\common\cJson\cJSON.h"
  51. #include "..\..\..\common\STL-findfile\filehelp.h"
  52. #include "Global.h"
  53. #include "LanShareDll.h"
  54. using namespace LanShareDll;
  55. #include "SafeList.h"
  56. //#define BASIC_VERSION //简易版,只有流程
  57. #define MSG_LENGTH 64
  58. #define TIMEDOG_VERSION//时钟狗
  59. #define SQLSERVER_VERSION //MS SQL版本
  60. //...........................
  61. //#define LKAY_VERSION //靓康爱婴
  62. //#define LYFZ_VERSION //内部版本
  63. //...........................
  64. //儿童版
  65. //#define CHILD_VERSION
  66. //座席版
  67. //#define CONNCOUNT_VERSION
  68. //企业版
  69. //#define ENTERPRISE_VERSION
  70. //...........................
  71. // 儿童版有三个版本:
  72. // 1.只开启CHILD_VERSION宏,就是儿童全能版;
  73. // 2.开启CHILD_VERSION + CONNCOUNT_VERSION :儿童座席版;
  74. // 3.开启CHILD_VERSION + ENTERPRISE_VERSION:儿童企业版;
  75. // 婚纱版:
  76. // 1.全部宏关闭,就是婚纱全能版;
  77. // 2.只开启CONNCOUNT_VERSION,就是婚纱座席版;
  78. // 3.只开启ENTERPRISE_VERSION,就是婚纱企业版;
  79. #define FTPSTAT_DOWNLOADSUCCEEDED 2
  80. #define FTPSTAT_UPLOADSUCCEEDED 3
  81. #define FTPSTAT_DOWNLOADFAILED 4
  82. #define FTPSTAT_UPLOADFAILED 5
  83. #define WM_THREADSTART WM_USER+200
  84. #define WM_THREADCLOSE WM_USER+201
  85. #define WM_THREADMSG WM_USER+202
  86. #define WM_ADDTRACELINE WM_USER+203
  87. #define USE_ADO_OPT_DB 0 //使用Ado操作数据库
  88. extern CString BrowseForFolder(HWND hWnd, LPCSTR lpszTitle, UINT nFlags);
  89. extern void DoEvents();
  90. extern void GetAppDir(CString& strAppDir);
  91. extern BOOL WaitWithMessageLoop(HANDLE hEvent, int nTimeout);
  92. PFNSHGETFOLDERPATHA GetFuncPtr_SHGetFolderPathA();
  93. extern HRESULT CreateStartMenuShortcut(LPSTR lpszShortcutFile, LPSTR lpszDescription, LPTSTR lpszRelativeFolder);
  94. extern void RemoveStartMenuShortcut(LPSTR lpszDescription, LPTSTR lpszRelativeFolder);
  95. extern CString GetShortcutTarget(LPCTSTR lpszFilename);
  96. void AutoSizeColumns(CListCtrl *pListCtrl);
  97. BOOL MyMakeSureDirectoryPathExists(LPCTSTR lpszDirPath);
  98. BOOL IsNumeric(char *buff);
  99. #define USE_POOL 1
  100. extern CArray<CODBCPool*, CODBCPool*> g_dbpool;
  101. // ODBC守卫垫片类;
  102. class ODBCConnGuard
  103. {
  104. int m_nIndex;
  105. CDatabase *m_pODBCConn;
  106. public:
  107. ODBCConnGuard( CDatabase *&pDBConn, const int& nIndex = -1, CONST DWORD &dwTimeOut = 30000 )
  108. {
  109. m_nIndex = nIndex + 1;
  110. m_pODBCConn = NULL;
  111. if ( g_dbpool.GetSize() )
  112. {
  113. pDBConn = g_dbpool.ElementAt(m_nIndex)->GetAConnection( dwTimeOut );
  114. m_pODBCConn = pDBConn;
  115. }
  116. }
  117. virtual ~ODBCConnGuard()
  118. {
  119. //CODBCPool::GetInstance()->RestoreAConnection(m_pODBCConn);
  120. if ( g_dbpool.GetSize() )
  121. {
  122. g_dbpool.ElementAt(m_nIndex)->RestoreAConnection(m_pODBCConn);
  123. }
  124. }
  125. };
  126. #define MAXPOOL 3
  127. #endif