Global.h 9.5 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227
  1. #ifndef __LYFZ_SERVERINFO_HEADER__
  2. #define __LYFZ_SERVERINFO_HEADER__
  3. #pragma once
  4. //#include "stdafx.h"
  5. #include "MyLock.h"
  6. #include <wincrypt.h>
  7. #include <Shlwapi.h>
  8. #include <tlhelp32.h>
  9. #include <lm.h>
  10. #include "SoftKey.h"
  11. #include "my32.h"
  12. #include "SoftKey.h"
  13. //GDI+k
  14. #ifndef ULONG_PTR
  15. #define ULONG_PTR unsigned long*
  16. #endif
  17. #include <gdiplus.h> ////请修改为你的头文件路径
  18. using namespace Gdiplus;
  19. #pragma comment(lib, "gdiplus.lib") ////请修改为你的.lib文件路径
  20. #define MY_ENCODING_TYPE (PKCS_7_ASN_ENCODING | X509_ASN_ENCODING)
  21. #define KEYLENGTH 0x00800000
  22. #define ENCRYPT_ALGORITHM CALG_RC4
  23. #define ENCRYPT_BLOCK_SIZE 8
  24. #define JEFF_TEST_ON 1 // 用于Jeff本人测试标识;
  25. #define JEFF_TEST_OFF 0 // 用于Jeff本人测试标识;
  26. #define USE_NEW_PRO 1 // 使用新协议标识;
  27. #define THE_PRIMARY_GLOBAL_VARIABLE 1 // 原程序全局变量;
  28. #define THE_PRIMARY_GLOBAL_FUNCTION 1 // 原程序全局函数;
  29. #define DB_SS_CONN_WITH_PORT _T("driver={SQL Server};Server=%s,%d;database=%s;uid=%s;pwd=%s")
  30. #define DB_SS_CONN_WITHOUT_PORT _T("driver={SQL Server};Server=%s;database=%s;uid=%s;pwd=%s")
  31. #define DB_SS_CONN_WITHOUT_PORT2 _T("driver={SQL Server};Server=%s;database=%d;uid=%s;pwd=%s")
  32. #define DB_SW_CONN_WITH_PORT _T("Driver={SQL Server};Server=%s,%d;Database=%s;Trusted_Connection=yes;")
  33. #define DB_SW_CONN_WITHOUT_PORT _T("Driver={SQL Server};Server=%s;Database=%s;Trusted_Connection=yes;")
  34. #define DB_SW_CONN_WITHOUT_PORT2 _T("Driver={SQL Server};Server=%s;Database=%d;Trusted_Connection=yes;")
  35. // 当前;
  36. #define ORIGINAL _T("客户原片(管理软件)$")
  37. #define EARLY _T("修好的片(管理软件)$")
  38. #define FUTHER _T("精修好的片(管理软件)$")
  39. #define DESIGN _T("设计好的片(管理软件)$")
  40. //class CDBServerDlg;
  41. extern TCHAR g_szHostName[MAX_PATH]; // 本机名称;
  42. extern TCHAR g_ModulePath[MAX_PATH]; // 软件目录;
  43. extern TCHAR g_ModuleFileName[MAX_PATH]; // 软件名称;
  44. extern TCHAR g_szConnectString[MAX_PATH]; // DB连接串;
  45. // 服务器信息;
  46. extern TCHAR g_szDBSource[MAX_PATH]; // 数据库源(服务所在IP或计算机名);
  47. extern TCHAR g_szDBSourcePort[MAX_PATH]; // 数据库源端口;
  48. extern DWORD g_dwDBServerPort; // 数据库源端口;
  49. extern TCHAR g_szDBAccount[MAX_PATH]; // 数据库登录用户;
  50. extern TCHAR g_szDBPassWord[MAX_PATH]; // 数据库登录密码;
  51. extern TCHAR g_szDBName[MAX_PATH]; // 数据库名称;
  52. extern TCHAR g_szLogDBName[MAX_PATH]; // Log数据库名称;
  53. extern DWORD g_dwCSPort; // 客户端与服务端的通信端口;
  54. extern TCHAR g_szShareAccount[MAX_PATH];
  55. extern TCHAR g_szSharePasswd[MAX_PATH];
  56. extern TCHAR g_szN8ViewSvrIP[MAX_PATH] ; // N8选版服务器IP;
  57. extern TCHAR g_szN8ViewUserDir[MAX_PATH] ; // N8选版服务器用户目录(共享目录);
  58. extern TCHAR g_szN8ViewStsDir[MAX_PATH] ; // N8选版服务器统计数据目录(共享目录);
  59. extern TCHAR g_szN8ViewProductDir[MAX_PATH] ; // N8选版产品配置目录(共享目录);
  60. extern TCHAR g_szN8ViewShareDir[MAX_PATH] ; // N8选版共享目录;
  61. extern TCHAR g_szN8ViewShareName[MAX_PATH] ; // N8选版共享目录;
  62. extern BOOL g_bEnableClound; // 是否启用云选功能;
  63. extern BOOL g_bExportBarCode; // 是否导出条形码位图;
  64. extern DWORD g_dwSoftRunTime; // 软件剩余可运行时间;
  65. extern TCHAR g_szCloundDiskAccount[MAX_PATH]; // 云盘账号;
  66. extern TCHAR g_szCloundDiskPsw[MAX_PATH]; // 云盘密码(保存时需要加密);
  67. extern DWORD g_dwDBPoolMaxCount ; // 数据库池最大值;
  68. extern DWORD g_dwDBPoolDef; // 数据库池默认大小;
  69. extern BOOL g_bIsCatalogDamage; // dbcc结果表明数据库是否损坏;
  70. extern BOOL g_bCheckdb; // 是否执行dbcc;
  71. extern DWORD g_dwCheckdbTimeOut; // dbcc的超时值;
  72. extern DWORD g_dwStartDelayTime; // 服务程序延时启动(单位:秒);
  73. extern CStringArray g_AryAllCatalogName; // 查询全部数据库;
  74. extern CString g_strAntiTheftInfo; // AntiTheft命令;
  75. extern BOOL g_bNextTrigger; // 是否下次触发;
  76. extern CString g_strBackupTime; // 备份时间;
  77. typedef struct tagresdata2
  78. {
  79. BOOL bHasBk;
  80. int nPicCount;
  81. int nPicCount2;
  82. DWORD nPicBmpCount[50];
  83. CRect rect[50];
  84. }RESDATA2;
  85. typedef enum _BACKUPMODEL
  86. {
  87. BACKUPMODEL_Incremental = 1, // 打开增量
  88. BACKUPMODEL_Auto, // 打开自动
  89. BACKUPMODEL_Both // 两者都打开
  90. }BACKUPMODEL;
  91. // start+------------------------------------------------------------------
  92. // Jeff:以下为原本程序全局变量;
  93. #if THE_PRIMARY_GLOBAL_VARIABLE
  94. extern int g_TCPport; // Jeff.通信端口;
  95. extern BOOL g_bReg;
  96. extern CString g_strdbpsw; // 数据库账号、密码;
  97. extern CString g_strdbServrename; // 数据库服务名(地址)
  98. extern CString g_bakinfo;
  99. extern CString g_bakphoto;
  100. extern CString g_mainpath;
  101. //extern SoftKey ytSoftKey;
  102. extern CString g_localname; // 本地计算机名;
  103. //extern CDatabase g_db; // 名为"db"的数据库,本年度使用的数据库;
  104. extern CArray<int, int> g_nYearArray; // 年份(用于命名历史数据库)
  105. //CArray<CDatabase*,CDatabase*>g_dbArray; // 历史数据库;
  106. extern CArray<CDatabase*, CDatabase*>g_dbHistoryArray; // 历史数据库数组,如2014,但不包含当前服务端使用的db.mdf;
  107. extern CArray<CDatabase*, CDatabase*>g_branchdbarray;
  108. extern CArray<CDatabase*, CDatabase*>g_branchdb2array;//除历史年度的分店DB
  109. extern CStringArray g_branchnamearray;
  110. extern CStringArray g_branchname2array;
  111. extern CStringArray g_branchiparray;
  112. extern CStringArray g_branchdomainarray;
  113. extern CDatabase *g_pMaindb;
  114. extern int g_conncount; // Jeff.加密狗中的座席版数量;
  115. extern CString g_sdomain; // Jeff.???
  116. extern CStringArray g_conniparray;
  117. extern CStringArray g_connidarray;
  118. extern BOOL g_bCheckAll;
  119. extern BYTE *g_pSkinData;
  120. extern DWORD g_SkinLeng;
  121. extern BOOL g_bAutoRun;
  122. extern CStringArray g_filedatearray;
  123. extern CStringArray g_filedatearraynew;
  124. extern CString g_bakdate;
  125. extern CString g_localip;
  126. extern BOOL g_bSteal;
  127. extern CString g_bakserver1;
  128. extern CString g_bakserver2;
  129. extern CString g_bakserver3;
  130. extern CString g_bakserver4;
  131. extern DWORD g_tisks;
  132. #if 0
  133. extern int g_nBakDays; // 备份几天前的时间设置(单位:天)
  134. extern int g_nBackupModel; // 备份模式
  135. #endif //#if 0
  136. extern int g_bAutoCheckSvc; // 是否自动检查服务(次/小时)
  137. extern HINSTANCE g_hDllInst; //备份删除dll
  138. extern HINSTANCE g_Instance;
  139. #endif
  140. // endof+------------------------------------------------------------------
  141. extern int GetIniInfo(const TCHAR *szPath = NULL, const TCHAR *szIniName = NULL);
  142. #if THE_PRIMARY_GLOBAL_FUNCTION
  143. extern BOOL AddConn(CDatabase *m_conndb, CString dbname);
  144. extern void WriteError(CString str);
  145. extern void WritePswWrong(CString str);
  146. extern void WriteNullBalance(CString str);
  147. extern void WriteUnallowIP(CString str);
  148. extern int GetEncoderClsid(const WCHAR* format, CLSID* pClsid);
  149. extern void SaveImageToFile(Image *img, CString path);
  150. extern void SaveImageToFile2(Image *img, CString path, ULONG quality);
  151. extern void RectFitDes(int width, int height, CRect &rc);
  152. extern bool CheckFolderFileExist(CString &strPath);
  153. extern bool CheckFileExist(CString &strPath);
  154. extern BOOL EncryptFile2(BYTE *buffer, DWORD leng, PCHAR szPassword);
  155. extern void BackupDatabase(IN CString strBackupDir, IN BOOL bBackupToday, IN BOOL bBackupHistory);
  156. extern void BakData(CString savedir, BOOL bToday, BOOL bBakHis);
  157. extern BOOL BackupDatabase(IN CDatabase& tagdb, IN CString& strBackupDir, IN CString& strDatabaseName);
  158. extern DWORD FindAppProcessID(CString path);
  159. extern void GetPathFromNetShareName(CString name, CString &sRet);
  160. extern CString GetModifyTime2(CString path);
  161. extern DWORD GetLastDirTime(CString dir);
  162. extern CString GetModifyTime(CString path);
  163. extern void ErrorExit(CString strDescription, const DWORD &dwError);
  164. extern void MyGetIPByName(CString &name);
  165. extern void EncryptFile3(CString path);
  166. extern int FindArray(CStringArray *pArray, CString Str);
  167. extern BOOL isInnerIP(DWORD a_ip);
  168. extern BOOL CompareIP(CString name1, CString name2);
  169. extern void DeleteDirectory(CString strDir);
  170. extern int GetLengthEx(CString str);
  171. extern CString GetFileSize(CString path);
  172. extern void SortArray(CStringArray &datearray);
  173. extern int CheckPhoneType(CString phoneno);//移动:0 联通:1 电信:2 小灵通:3 未知:-1
  174. extern CTime GetTmFromStr(CString date);
  175. extern void ConvertToPrice(CString &str);
  176. extern void SortArray(CArray<CStringArray, CStringArray>*List1array, int pos);
  177. extern void DeCodelong1(int &value1, int &value2, int &value3, int &value4, int &value5, int &value6, int &value7, int &value8);
  178. extern void DeCodelong2(int &value1, int &value2, int &value3, int &value4, int &value5, int &value6, int &value7, int &value8);
  179. extern void DeCodelong3(int &value1, int &value2, int &value3, int &value4, int &value5, int &value6, int &value7, int &value8);
  180. extern void DeCodelong4(int &value1, int &value2, int &value3, int &value4, int &value5, int &value6, int &value7, int &value8);
  181. extern void DeCodePicCount(int &value1, int &value2);
  182. #endif
  183. extern BOOL lyfzCopyFileEx(LPCTSTR lpExistingFileName, LPCTSTR lpNewFileName, const BOOL &bFailIfExists);
  184. extern BOOL IsValidDate(IN LPCTSTR lpDate);
  185. //加载lyfzBackupModle.dll
  186. extern int LoadBackupModuleDll(IN CONST CString strDll);
  187. extern void FreeBackupModuleDll();
  188. extern BOOL GetFilePath(OUT TCHAR *FilePath, IN HWND hParentWnd, IN TCHAR* InstructionString, IN UINT ulFlags);
  189. extern TCHAR* GetGuidString();
  190. extern bool InitSocketLibrary(IN WORD wVersion);
  191. extern bool ReleaseSocketLibrary();
  192. extern DWORD GetSoftRunTime();
  193. extern void WriteTextLog(const TCHAR *format, ...);
  194. extern BOOL ExectueScript(IN LPCTSTR lpCatalogSvr, IN LPCTSTR lpCatalogUser, IN LPCTSTR lpCatalogPsw, IN LPCTSTR lpScriptFile, IN LPCTSTR lpCatalogLog);
  195. extern BOOL ExectueStatement(IN LPCTSTR lpCatalogSvr, IN LPCTSTR lpCatalogUser, IN LPCTSTR lpCatalogPsw, IN LPCTSTR lpCatalogName, IN LPCTSTR lpSQLScript, IN LPCTSTR lpCatalogLog, IN const DWORD& dwQueryTimeOut = 15 );
  196. extern BOOL IsCatalogDamage();
  197. extern DWORD WINAPI CheckdbThread(LPVOID lpParamter);
  198. extern BOOL GetAllCatalogName();
  199. extern CString GetErrorInfo(IN const DWORD &dwError);
  200. #endif