// Global.h : 应用程序的全局变量、函数头文件 // // 代码生成在 2014年9月25日, 09:55 #ifndef __LYFZ_SERVERINFO_HEADER__ #define __LYFZ_SERVERINFO_HEADER__ #include #include #include #include ".\\includes\\gdiplus.h" ////请修改为你的头文件路径 using namespace Gdiplus; #pragma comment(lib, ".\\lib\\gdiplus.lib") ////请修改为你的.lib文件路径 #include "lyfzLoadLibrary.h" #define USE_KERNEL_DLL // 2015-12-10 #ifdef USE_KERNEL_DLL #include "IMGBasetype.h" #include "StructDef.h" #include "filekernel.h" #include "Imgkernel.h" #endif #pragma once #define JEFF_TEST_ON 1 // 用于Jeff本人测试标识; #define JEFF_TEST_OFF 0 // 用于Jeff本人测试标识; #define JEFF_DELETE_ON 0 // 用于Jeff本人指示某段代码标识为删除状态; #define JEFF_DELETE_OFF 1 // 用于Jeff本人解除某段代码的删除状态; #define LYFZVERSION _T("Version 1.0") #define USE_SHARE_FLORD 1 // 使用多级共享目录; 2015-07-16 #define INSERT_SENDREG _T("insert into sendreg([msgtype],[phones],[content],[timestamp],[msgcount],[status],[issended],[isautosend],[ren]) values ('%s','%s','%s','%s','%s','%s','%s','%s','%s')") #define INSERT_SENDREG_MC _T("insert into sendreg([msgtype],[phones],[content],[timestamp],[msgcount],[status],[issended],[isautosend],[ren]) values ('%s','%s','%s','%s','%d','%s','%s','%s','%s')") #define INSERT_SENDREGDELAY _T("insert into sendregdelay([msgtype],[phones],[content],[timestamp],[msgcount],[status],[issended],[isautosend],[ren]) values ('%s','%s','%s','%s','%s','%s','%s','%s','%s')") #define INSERT_SENDREG_OLD _T("insert into sendreg([phones],[content],[timestamp],[msgcount],[status],[issended],[isautosend],[ren]) values ('%s','%s','%s','%s','%s','%s','%s','%s')") #define INSERT_SENDREG2 _T("insert into [sendreg2]([phones],[content],[price],[yytime],[client],[type],[date],[ren]) values ('%s','%s','%s','%s','%s','%s','%s','%s')") #define INSERT_INCREMENT _T("INSERT INTO [IncrementalBackup]([isbackup],[branchid],[opttime],[order],[photoType],[content],[userid],[username],[baktime])VALUES (%d,'%s','%s','%s',%d,'%s','%s','%s',NULL)") #define GET_XPIX(x) ( x >> 16) // 高16位; #define GET_YPIX(y) (y & 0x0000ffff) // 低16位; #define SET_PIX(x,y) (( x << 16) | y) // 高低合并; #define USE_SEP_VEB // 是否使用坚线分隔符; #define SEPC_VEB _T('|') // 分隔符,竖线Separator Character,A vertical bar; #define SEPC_CMA _T(',') // 分隔符,逗号Separator Character,Comma; #define SEPC_SCN _T(';') // 分隔串,分号Separator String,Semicolon #define SEPS_VEB _T("|") // 分隔串,竖线Separator String,A vertical bar; #define SEPS_CMA _T(",") // 分隔串,逗号Separator String,Comma; #define SEPS_SCN _T(";") // 分隔串,分号Separator String,SemicSemicolon ///删除一个数组指针的宏定义 #ifndef DELETEA #define DELETEA(ptr) \ if(NULL != ptr) \ { \ delete[] ptr; \ ptr = NULL; \ } #endif // 删除一个指针的宏定义; #ifndef FREEP #define FREEP(ptr) \ if(NULL != ptr) \ { \ free(ptr) ; \ ptr = NULL; \ } #endif //删除一个指针的宏定义; #ifndef DELETEP #define DELETEP(ptr) \ if(NULL != (ptr)) \ { \ delete (ptr); \ (ptr) = NULL; \ } #endif // 删除一个GDI对象的宏定义; #define DELETEOBJECT(ptr) \ if(NULL != (ptr)) \ { \ ::DeleteObject (ptr);\ (ptr) = NULL; \ } // Destroy一个Window; #define DESTROYWINDOW(hWnd) \ if (IsWindow(hWnd)) \ { \ DestroyWindow(hWnd); \ } enum // 缩放结果; { ZoomNull = 0, // 无缩放; ZoomIn = 1, // 缩小; ZoomOut = 2 // 放大; }; ////////////////////////////////////////////////////////////////////////// extern BOOL g_bRemote; // 当打开共享目录失败时,这个变量为TRUE; extern HINSTANCE g_Instance; #define MSG_KERNEL_CALLBACK WM_USER + 1001 #define MSG_KERNEL_SENDMSG WM_USER + 1002 typedef void (CALLBACK *IMGImportMergeCallback)( IN LPCTSTR lpStrBranchId, IN LPCTSTR lpStrOrderNum, IN CONST INT& dwImgType, IN CONST DWORD& dwImgNum, IN LPCTSTR lpStrImgs, IN LPCTSTR lpStrImgExt ); //extern KERNELCALLBACK *g_kernelCallback; ////////////////////////////////////////////////////////////////////////// // Jeff add 2014-12-11 分隔符; #define SEPARATOR _T("|") #ifdef USE_KERNEL_DLL extern TblVersion g_ThisShopVersion; // 本店设置信息; #endif typedef struct tagresdata2 // 用途? { BOOL bHasBk; // int nPicCount; // int nPicCount2; // DWORD nPicBmpCount[50]; // 为何设置魔数50? CRect rect[50]; // 为何设置魔数50? }RESDATA2; typedef struct tagUSER { int bLongin; // 是否登陆; CString name; // 用户名; CString rights; // 权限1; CString rights2; // 权限2; CString bm; // 用户部门; CString account; // 用户账号; CString m_discount; // 员工折扣? CString m_discount2; // 员工折扣2? CString level; // 文件夹权限等级? }USER; // 客户端文件dbconfig.dat; typedef struct { BOOL bsql; int server[50]; int user[50]; int psw[50]; }DBSAVE; typedef struct { BYTE bsql; BYTE tabcount; BYTE code[100]; DWORD count[100]; DWORD length[100]; }SENDHEAD; // 2015-10-10 typedef struct _STSceneryInfo_ { BOOL bSelected; // 被选中; CString strScenery; // 景点; CString strStatus; // 单个景点或套系拍照状态; CString strTime; // 拍照时间; CString strLensman; // 摄影师; CString strLensmanAssistant; // 摄影师助理; CString strBootDivision; // 引导师; CString strBootDivisionAssistant; // 引导师; _STSceneryInfo_() { bSelected = FALSE; } }STSceneryInfo; typedef struct _STOrederInfo_ { CString strBranchId; // 域名; CString strOrderNumber; // 订单号; CString strStatus; // 订单的拍照状态; CString strImageNumber; // 相片编号; CString strName1; // 顾客1; CString strName2; // 顾客2; CString strClerk; // 接单人; CString strPhone; // 手机; CString strTelPhone; // 座机; std::vector vtOrderScenery; // 订单景点; }STOrederInfo; // Import or Export Image Typed typedef enum { ImageType_Original = 1, ImageType_Early = 2, ImageType_Further = 3, ImageType_Design = 4 }IE_IMAGETYPE; extern WORD g_arrFileVersion[4]; extern TCHAR g_szLoginUser[MAX_PATH]; // 当前软件的登陆用户名; extern TCHAR g_szLoginPsw[MAX_PATH]; // 当前软件的登陆密码; extern TCHAR g_szModulePath[MAX_PATH]; // 软件目录; extern TCHAR g_szModuleFileName[MAX_PATH]; // 软件全名称; extern TCHAR g_szConnectString[MAX_PATH]; // DB连接串; extern TCHAR g_szHostComputerIP[MAX_PATH]; // 主机名称; extern DWORD g_dwCSPort; // 主机通信TCP端口; extern TCHAR g_szN8ViewUserDir[MAX_PATH] ; // N8选版服务器用户目录(共享目录); extern TCHAR g_szN8ViewStsDir[MAX_PATH] ; // N8选版服务器统计数据目录(共享目录); extern TCHAR g_szN8ViewProductDir[MAX_PATH] ; // N8选版产品配置目录(共享目录); extern DWORD g_dwSoftRunTime; // 软件剩余可运行时间; // 服务器信息; extern TCHAR g_szDBSource[MAX_PATH]; // 数据库源(服务所在IP或计算机名); extern TCHAR g_szDBSourcePort[MAX_PATH]; // 数据库源端口; extern DWORD g_dwDBServerPort; // 数据库源端口; extern TCHAR g_szDBAccount[MAX_PATH]; // 数据库登录用户; extern TCHAR g_szDBPassWord[MAX_PATH]; // 数据库登录密码; extern TCHAR g_szDBName[MAX_PATH]; // 数据库名称; extern TCHAR g_szShareHost[MAX_PATH]; extern TCHAR g_szOriginalFolder[MAX_PATH]; extern TCHAR g_szOriginalBkFolder[MAX_PATH]; extern TCHAR g_szEarlyRepairFolder[MAX_PATH]; extern TCHAR g_szEarlyRepairBkFolder[MAX_PATH]; extern TCHAR g_szFurtherRepairFolder[MAX_PATH]; extern TCHAR g_szFurtherRepairBkFolder[MAX_PATH]; extern TCHAR g_szDesignFolder[MAX_PATH]; extern TCHAR g_szDesignBkFolder[MAX_PATH]; extern TCHAR g_szTelRecordingFolder[MAX_PATH]; extern TCHAR g_szFullDressImageFolder[MAX_PATH]; extern BOOL g_bRunOnCorruptdb; // 在损坏的数据库上运行; extern BOOL g_bSoftWareReg; extern CString g_strDogMainInfo; extern CString g_strMain; extern CStringArray g_strArrayOfBranchName; extern CStringArray g_strArrayOfBranchName2; extern CStringArray g_strArrayOfBranchIPAdress; extern CStringArray g_strArrayOfBranchDogMainInfo; extern unsigned int g_nCountOfAllowToConn; extern DWORD g_nLeng; extern BYTE *g_pData; extern DWORD g_nLeng2; extern BYTE *g_pData2; extern SENDHEAD g_sendhead; extern BOOL g_bRedSkin; extern COLORREF g_gridcol1; extern COLORREF g_gridcol2; extern COLORREF g_bkcol; extern CString g_date; // 连接服务端时由服务端产生的CTime::GetCurrentTime().Format("%Y-%m-%d %H:%M:%S"); extern CString g_title; extern CArrayg_userarray; extern CArrayg_cominfoarray; extern CArrayg_cominfoarraylocal; extern CArrayg_lengarray; extern CArrayg_btnlengarray; extern CArrayg_pointerarray; extern CBrush g_editbkbrush; extern DWORD g_btnleng[8]; extern int g_btnlengpos; extern int g_nYearpos; // 是[historydb]表记录索引,即g_hisyeararray元素位置; extern CString g_branchname; // 当客户端使用的是dbconfig.dat里的服务端地址时,g_branchname=""; 企业版客户端连接其他分店或多店汇总时,g_branchname值为连接的分店名; extern CString g_branchip; // 与g_branchname相似,只有企业版时由客户端菜单选择到连接分店或多店汇总时,这个ip才会有值,否则为空; extern CString g_branchip2; extern BOOL g_bBranchModify; extern BOOL g_bShowOK; // Jeff:? extern BOOL g_bStaffAchievementShow; // 此机用于员工业绩查看; extern BOOL g_bSaveUploadTask1; extern BOOL g_bSaveUploadTask2; extern BOOL g_bSaveUploadTask3; extern BOOL g_bSaveUploadTask4; extern BOOL g_bSearchFilter; // 条件查询开关; == TRUE 开启条件查询, == FALSE 关闭条件查询; extern CString g_waiter1; extern CString g_waiter2; extern CString g_waiter3; extern CString g_waiter4; extern CString g_waiter5; extern CString g_filterdate1; extern CString g_filterdate2; extern CString g_filterdate3; extern CString g_filterdate4; extern CString g_filterdate5; extern CString g_filterdate6; extern CString g_filterbranch; extern USER g_user; extern CString g_mainpath; // 软件目录 extern CString g_id; // extern CString g_server; // 服务端地址 extern CStringArray g_serverarray; // extern CString g_serverbak; // extern CString g_path1; /* 共享目录 <客户原片(管理软件)$> 如:"\\lyfz-pc\客户原片(管理软件)$" */ extern CString g_path2; /* 共享目录 <修好的片(管理软件)$> 如:"\\lyfz-pc\修好的片(管理软件)$" */ extern CString g_path3; /* 共享目录 <设计好的片(管理软件$)> 如:""> */ extern CString g_path4; /* 共享目录 <精修好的片(管理软件$)> 如:""> */ extern CString g_path5; /* 共享目录 <礼服图片(管理软件$)> 如:""> */ extern CString g_path6; /* 共享目录 <电话录音(管理软件$)> 如:""> */ extern CString g_path7; /* 共享目录 <客户原片(管理软件$)\效果图> 如:""> */ extern CString g_path1bak; extern CString g_path2bak; extern CString g_path3bak; extern CString g_path4bak; extern CString g_path5bak; extern CString g_path6bak; extern CString g_path7bak; extern CDatabase g_db; extern DWORD g_ncount; extern CFont g_titlefont; extern DWORD g_nSendCode; extern BOOL g_bSendOK; extern CArrayg_hisyeararray; // 表[historydb]里的记录; extern CArrayg_brancharray; extern CArrayg_oldclientarray; extern CArrayg_List1array; extern BOOL g_bNoConnDlg; extern BOOL g_bInSkin; extern int g_conntype; extern BOOL g_bGenBranchData; extern CString g_temp; extern BOOL g_bSortAscending; extern CFont g_listctrlfont; extern float g_fscalex; extern float g_fscaley; extern int g_screenwid; // 桌面宽 extern int g_screenhei; // 桌面高 extern float g_WidthScale; // 宽刻度Jeff extern float g_HeightScale; // 高刻度Jeff extern RESDATA2 g_resdata2; extern BOOL g_bAlphaWnd; extern BYTE g_bNeedDrawParent; extern BOOL g_bAllBranch; // 是否多店汇总连接; extern CString g_domain; // 此值为固定值,是客户端使用dbconfig.dat中的服务端地址连接后,由服务端返回的域名值;企业版客户端连接其他分店或多店汇总时,此值不改变; extern CString g_sInfo; extern int g_ncot; extern int g_conpos; extern int g_nAutoShowStaffAchievement; extern BOOL g_bShowBar; extern int g_bookingtype; extern BOOL g_bNoLoginLia; extern BOOL g_bConnLYFZ; extern BOOL g_bSendLYFZ; extern int g_ntimeout; extern float g_WidthScale; extern float g_HeightScale; extern int g_dx; extern int g_dy; extern BOOL g_bNeedCoon; extern float g_WidthScale2 ; extern float g_HeightScale2 ; extern CStringArray g_menubranchname; #if USE_SHARE_FLORD extern CArray g_aryOfSharePathInfo; // NetShareInfo表记录; #endif // 使用系统数字命名; extern BOOL g_bOriginal; // 客户端guid字符串标志符,作为每个客户端的唯一id值; extern TCHAR g_szGuidMark[64]; // 控制台输出; extern BOOL g_bStdOut; // N8程序路径; extern TCHAR g_szN8Path[MAX_PATH]; // HostInfo.ini的路径; extern TCHAR g_szIniPath[MAX_PATH]; // Ne选版服务器IP地址; extern TCHAR g_szN8SvIP[MAX_PATH]; // 是否启用云选功能; extern BOOL g_bEnableClound; // 是否导出条形码位图; extern BOOL g_bExportBarCode; // 侧边栏抽屉数量; extern INT g_nDrawerCount; //----------------------------------------------------------------------------------------------------------------- extern BOOL LoadImageFromFile(IN Image** pImg, IN CString strPath); extern BOOL LoadImageFromBuf(IN Image** pImg, IN CString strPath); extern BOOL LoadImageFromBuf(IN Image** pImg, IN BYTE* pBuffer, IN CONST DWORD& nBufLen); // 使用Image版本,可以不使用Bitmap版本,因为Bitmap继承于Image。 extern BOOL LoadImageFromFile(IN Bitmap** pImg, IN CString strPath); extern BOOL LoadImageFromBuf(IN Bitmap** pImg, IN CString strPath); extern BOOL LoadImageFromBuf(IN Bitmap** pImg, IN BYTE* pBuffer, IN CONST DWORD& nBufLen); extern void SaveImageToFile(Image *img, CString path); extern void SaveImageToFile2(Image *img, CString path, ULONG quality); extern void LoadImageFromRes(Image **img, LPCTSTR lpszResourceName, LPCTSTR ResourceType); extern int GetOrientation(Image *image); extern int GetEncoderClsid(const WCHAR* format, CLSID* pClsid); extern void IsWaiter2(CString id, CString name, CArray*waiterarray, BOOL &bWait1, BOOL &bWait2, float &fscale1, float &fscale2, BOOL bCheckDate, CString date1, CString date2); extern void IsWaiter3(CString id, CString name, CArray*waiterarray, BOOL &bWait1, BOOL &bWait2, float &fscale1, float &fscale2); extern CString GetNameFromDomain(CString domain); extern void GetSavePath(CString &path); extern CString GetW(CString str); extern CString GetK(CString str); extern CString GetB(CString str); extern CString GetS(CString str); extern CString GetG(CString str); extern CString GetHMoney(CString str); extern int GetYearPos(int year);// 查找不到年历史数据库则返回-1; extern void FillLength(CString &str, int length); extern BOOL myisdigit(CString str); extern BOOL IsHasRightsnew2(int pos, CString rights); extern CString GetIP(CString branch); extern CString GetBranchIPbyId( IN LPCTSTR lpStrBranchId ); extern CString GetBranchNamebyId( IN LPCTSTR lpStrBranchId ); extern void WriteTitle(CString str); extern BOOL IsHanZi(CString str); extern int GetType(CString str); extern CString FilterBZ(CString &bz); extern BOOL GIsHalfHZ(const CString &str); extern void RectFitDes(int width, int height, CRect &rc); extern bool CheckFolderFileExist(CString &strPath); extern int GetLengthEx(CString str); extern BOOL IsHasRights(int pos); // 废弃函数; extern BOOL IsHasRights2(int pos); // 废弃函数; extern BOOL IsHasRightsnew(int pos); extern BOOL IsHasRights2new(int pos); extern void FirstLetter(int nCode, CString& strLetter); extern void GetFirstLetter(CString strName, CString& strFirstLetter); extern CString newGUID(); extern void ConvertToPrice(CString &str); extern DWORD FindAppProcessID(CString path); extern BOOL isInnerIP(DWORD a_ip); extern void MyGetIPByName(CString &name); extern void MyGetIPByName2(CString &name); extern CTime GetTmFromStr(CString date); extern int IsExistFolder(char *szPath); extern CString GetBranchPhotoPath(CString branch); extern CString GetDomainFromBranch(CString branch); extern BOOL CheckDateOK2(CString str); extern BOOL CheckBadWords(CString str, BOOL bMsg = 0); //extern BOOL CheckBadWords2(CString str, BOOL bMsg = 0); extern int CheckPhoneType(CString &phoneno); extern BOOL CheckDateOK(IN CString &str,IN CONST BOOL &bLunanr = FALSE); extern int FindArray(CStringArray *pArray, const CString &Str); extern int GetSysIniInfo(const char *szPath = NULL, const char *szIniName = NULL); extern BOOL WaitWithMessageLoop(HANDLE hEvent, int nTimeout); extern BOOL IsFileExist(const TCHAR *pFileFullName); extern void DeleteDirectory(CString strDir); extern BOOL RegisterOcx(LPCTSTR ocxfile); extern BOOL GetDebugPriv(); extern bool GetFileVersion(HMODULE hModule, WORD *pBuffer); extern bool GetProductVersion(IN HMODULE hModule, OUT WORD *pBuffer); extern BOOL CheckInternalIPV4(const unsigned int &ip_addr); extern BOOL IsValidIPV4(const TCHAR *szIP); extern int GetHostAllOfIP(const TCHAR *pHostName, std::vector &vtHostIPV4); extern void DataToArray( CArray*pArrayOfString, int datapos = -1); extern void DataToArray( CArray*pArrayOfString1, CArray*pArrayOfString2, int datapos = -1); extern void DataToArray( CArray*pArrayOfString1, CArray*pArrayOfString2, CArray*pArrayOfString3, int datapos = -1); extern void DataToArray( CArray*pArrayOfString1, CArray*pArrayOfString2, CArray*pArrayOfString3, CArray*pArrayOfString4, int datapos = -1); extern void DataToArray( CArray*pArrayOfString1, CArray*pArrayOfString2, CArray*pArrayOfString3, CArray*pArrayOfString4, CArray*pArrayOfString5, int datapos = -1); extern void DataToArray( CArray*pArrayOfString1, CArray*pArrayOfString2, CArray*pArrayOfString3, CArray*pArrayOfString4, CArray*pArrayOfString5, CArray*pArrayOfString6, int datapos = -1); extern void DataToArray( CArray*pArrayOfString1, CArray*pArrayOfString2, CArray*pArrayOfString3, CArray*pArrayOfString4, CArray*pArrayOfString5, CArray*pArrayOfString6, CArray*pArrayOfString7, int datapos = -1); extern void DataToArray( CArray*pArrayOfString1, CArray*pArrayOfString2, CArray*pArrayOfString3, CArray*pArrayOfString4, CArray*pArrayOfString5, CArray*pArrayOfString6, CArray*pArrayOfString7, CArray*pArrayOfString8, int datapos = -1); extern void DataToArray( CArray*pArrayOfString1, CArray*pArrayOfString2, CArray*pArrayOfString3, CArray*pArrayOfString4, CArray*pArrayOfString5, CArray*pArrayOfString6, CArray*pArrayOfString7, CArray*pArrayOfString8, CArray*pArrayOfString9, CArray*pArrayOfString10, int datapos = -1); extern inline int MultiByteLengthConvertToWideCharLength(/*LPCSTR*/LPCCH lpString); extern void lyfzImportImage(LPCTSTR lpDestDirectory, CStringArray &strArrayOfImage, const BOOL &bFailIfExists = TRUE); extern BOOL lyfzCopyFileEx(LPCTSTR lpExistingFileName, LPCTSTR lpNewFileName, const BOOL &bFailIfExists = TRUE); extern BOOL lyfzCreateDirectory(LPCTSTR lpDestDirectory); extern void lyfzSplitpath(const char *path, char *drive, char *dir, const int &nTimes); extern void ShowSystemErrorInfo(CString &strDescription, const DWORD &dwError); extern void WriteTextLog(const TCHAR *format, ...); extern BOOL IsDirectoryLegitimate(const CString &strDirectory); extern void ExportCutImageToFile(LPCCH lpOrderCutImageInfo, LPCCH lpSrcDirectory, LPCCH lpSaveDirectory); extern BOOL AnalysisImagInfo(CStringArray &saSrcPhoto, LPCCH strSrcDirectory, LPCCH strSaveDirectory, CString &strImageInfo, CString &strImageName, CString &strCutScheme, CRect &rtCut); extern int GetCountOfOrderFolderPhotoFile( const TCHAR *pOrderFolder, CStringArray &StrPhotoArray); extern VOID GetFileNameFromFullPath(CONST CString &strFullPath, CString &strRet); extern BOOL SaveImg2newfile(IN Image* pImg, IN CString strNewfile, IN ULONG uQuality); extern int ZoomImg(IN CRect &Imgrc, IN CONST DWORD &dwDisplayPix, OUT DWORD &dwZoomPix); extern int ZoomImg(IN CONST DWORD &dwImgPix, IN CONST DWORD &dwDisplayPix, OUT DWORD &dwZoomPix); extern BOOL ImgThumbnail(IN Image* pImg, IN CONST DWORD &dwDisplayPix, IN CString strNewfile, IN ULONG uQuality); extern BOOL ImgThumbnail(IN LPCTSTR lpImgpath, IN CONST DWORD &dwDisplayPix, IN CString strNewfile, IN ULONG uQuality); extern HMODULE g_hlyfzMicroShareDLL; extern BOOL LoadMicroShareLibrary(); extern void FreeMicroShareLibrary(); typedef INT (WINAPI *lyfzCreateShare)( IN LPCTSTR lpShareAccount, // 微分享的登录账号; IN LPCTSTR lpAccountPsw, // 微分享的登录账号密码; IN LPCTSTR lpRootDirectory, // 相片根级目录; IN LPCTSTR lpBranchName, // 分店域名; IN LPCTSTR lpOrderNumber, // 订单号,用于生成二维码文件名; IN LPCTSTR lpScenery, // 景点名; IN LPCTSTR lpSourceFilePath, // 要分享的文件根目录; IN LPCTSTR lpCustomer1Name, // 客人姓名1 ; IN LPCTSTR lpCustomer2Name, // 客人姓名2 ; IN LPCTSTR lpMakeupArtist, // 化妆师; OUT LPTSTR lpMicroAlbumID // 返回微相册ID; ); extern lyfzCreateShare g_lyfzCreateShare; extern BOOL GetRemoteConfig(); extern BOOL OpenShareDirectory(); extern BOOL IsValidDate(LPCTSTR lpDate); extern BOOL IsValidLunanrDate(LPCTSTR lpDate); extern int IsExistNumInString(const char* str); /*-----------------------------------读取硬件信息 模块 begin--------------------------------------------*/ extern HMODULE g_hHDSerial; extern BOOL LoadHDSerialLibrary(); extern void FreeHDSerialLibrary(); /* GetSeiralNumberOrID("Win32_BaseBoard", "SerialNumber"); // 主板 GetSeiralNumberOrID("Win32_Processor", "ProcessorID"); // CPU GetSeiralNumberOrID("Win32_PhysicalMemory", "SerialNumber"); // 内存 GetSeiralNumberOrID("Win32_DiskDrive", "PNPDeviceID"); // 硬盘 */ /************************************************************************/ /* 函数: GetSeiralNumberOrID 描述: 获取序列号或ID 通过 IWbemLocator 和 IWbemServices 这两个 COM 接口访问 WMI, 获取系统信息 参数: LPCTSTR lpszClass, LPCTSTR lpszName CString& str 返回序列号或ID 返回: 注意: 1成功, 0失败; */ /************************************************************************/ typedef INT (WINAPI *GetSeiralNumberOrID)(LPWSTR lpszClass, LPWSTR lpszName, LPWSTR str); /************************************************************************/ /* 函数: GetLocalMacAddr 描述: 获取本地mac地址 参数: BYTE* pMac 返回mac地址 返回: 注意: */ /************************************************************************/ typedef VOID (WINAPI *GetLocalMacAddr)(LPSTR pMac); extern TCHAR g_strCPUID[MAX_PATH]; //获取CPU ID extern TCHAR g_strMacAddr[MAX_PATH]; //mac地址 extern TCHAR g_strHDNum[MAX_PATH]; //硬盘ID extern TCHAR g_strBIOSNum[MAX_PATH]; //主板ID extern GetSeiralNumberOrID g_GetSeiralNumberOrID; extern GetLocalMacAddr g_GetLocalMacAdd; /*-----------------------------------读取硬件信息 模块 end--------------------------------------------*/ /*-----------------------------------DES加密解密 模块 begin--------------------------------------------*/ /************************************************************************/ /* 函数: GetLocalMacAddr 描述: DES加密 参数: LPCSTR pPlaintext, 加密的内容 LPCSTR pKey 密钥 LPSTR pCiphertext 返回加密后的密文 返回: 注意: */ /************************************************************************/ typedef VOID (WINAPI *DESEncrypt)(IN LPCSTR pPlaintext, IN LPCSTR pKey, OUT LPSTR pCiphertext); /************************************************************************/ /* 函数: DESDecrypt 描述: DES解密 参数: LPCSTR pCiphertext, 要解密的内容 LPCSTR pKey 密钥 LPSTR pPlaintext 返回解密后的明文 返回: 注意: */ /************************************************************************/ typedef VOID (WINAPI *DESDecrypt)(IN LPCSTR pCiphertext, IN LPCSTR pKey, OUT LPSTR pPlaintext); extern DESEncrypt g_DESEncrypt; extern DESDecrypt g_DESDecrypt; /*-----------------------------------DES加密解密 模块 end--------------------------------------------*/ #ifdef USE_KERNEL_DLL typedef ImgEnvInterface* (*CREATEIMGPROCESS)( ); extern ImgEnvInterface* CreateIMGProcess( ); extern ImgEnvInterface *g_pIMGProcess; extern BOOL GetOrderpathByImgType(IN CONST INT& nImgType, IN LPCTSTR lpBranchId, OUT CStringArray& AryOrderpath); extern BOOL GetOrderpathByOrderNum(IN CONST INT& nImgType, IN LPCTSTR lpBranchId, IN LPCTSTR lpOrderNum, OUT CStringArray& AryOrderpath); extern BOOL GetScenerypathByOrderNum(IN CONST INT& nImgType, IN LPCTSTR lpBranchId, IN LPCTSTR lpOrderNum, IN LPCTSTR lpScenery, OUT CStringArray& AryOrderpath); extern BOOL GetOrderImgpath(IN CONST INT& nImgType, IN LPCTSTR lpBranchId, IN LPCTSTR lpOrderNum, OUT CStringArray& AryImgpath); extern BOOL GetOrderImgpathEx(IN CONST INT& nImgType, IN LPCTSTR lpBranchId, IN LPCTSTR lpOrderNum, IN BOOL bLoadInSubfolder, IN LPCTSTR lpLoadExt, IN LPCTSTR lpWithExt, OUT CStringArray& AryLoadExtImgpath, OUT CStringArray& AryWithExtImgpath, OUT CStringArray& AryOrderDirectory ); extern BOOL GetSceneryImgpath(IN CONST INT& nImgType, IN LPCTSTR lpBranchId, IN LPCTSTR lpOrderNum, IN LPCTSTR lpScenery, OUT CStringArray& AryImgpath); extern BOOL GetSceneryImgpathEx(IN CONST INT& nImgType, IN LPCTSTR lpBranchId, IN LPCTSTR lpOrderNum, IN LPCTSTR lpScenery, IN LPCTSTR lpLoadExt, IN LPCTSTR lpWithExt, OUT CStringArray& AryLoadExtImgpath, OUT CStringArray& AryWithExtImgpath, OUT CStringArray& AryOrderDirectory ); #endif extern int IsDigitString(IN CONST CString& str); extern BOOL Import2Excle(IN CListCtrl *pListCtrl, IN LPCTSTR lpExclePath, IN CONST int& nStartColumn, IN CONST int& nStartRow, IN int nEndColumn = -1, IN int nEndRow = -1) ; // 导入到excle; extern BOOL Import2Xls(IN CListCtrl *pListCtrl, IN LPCTSTR lpExclePath, IN CONST int& nStartColumn, IN CONST int& nStartRow, IN int nEndColumn = -1, IN int nEndRow = -1) ; // 导入到excle; extern TCHAR* GetGuidString(); #endif // endof Global.h