diff --git a/CHANGELOG b/CHANGELOG index 76f5c8ed08860a5131c12c8a2876c83a1c4b81f5..35c01cb9b9646b6a2b3f7060c6fcd5bff842be13 100644 --- a/CHANGELOG +++ b/CHANGELOG @@ -1,3 +1,21 @@ +XEngine_APIService V2.9.0.1001 + +增加:短连接生成与转发功能支持 +增加:数据测试API接口 +更新:匹配XEngineV8.x版本 +更新:编译脚本现在对跨平台支持更好 +修改:测试函数名称改为socket +修改:现在HTTP的任务代码区分get和post了 +修改:mysql默认使用utf8字符集了 + +added:short link create and forward supported +added:data test api interface +update:match xengine v8.x +update:makefile to support cross platform +modify:test function name to socket +modify:The http task now distinguishes between post and get +modify:mysql used to utf8 charset +====================================================================================== XEngine_APIService V2.8.0.1001 添加:二维码识别与创建功能 diff --git a/README.en.md b/README.en.md index dcb6ef891cdbf637bf623f7d04176c2b57fd0e71..1c8ca9975d5a82751ddd43bb08c0f0dd127a1be3 100644 --- a/README.en.md +++ b/README.en.md @@ -40,16 +40,17 @@ Support privatization deployment, free, safe, open source, controllable 20. Metering Conversion 21. network test 22. Distributed lock -23. short url creator(planned) +23. short url creator and forward 24. local system time 25. math Calculation 26. log service 27. Plugin hot reload(planned) +28. Sensitive word detection(planned) ## install #### XEngine Evn -you must install XEngine,need V7.38 or above,install XEngine can be refer to xengine Readme docment +you must install XEngine,need V8.x or above,install XEngine can be refer to xengine Readme docment GITEE:https://gitee.com/xyry/libxengine GITHUB:https://github.com/libxengine/xengine @@ -60,7 +61,7 @@ Linux Exection:sudo ./XEngine_LINEnv.sh -i 3 Macos Exection:./XEngine_LINEnv.sh -i 3 #### Database Env -MYSQL database version 8.0 or above is required. Create a table through CreateDatabase.sql, and then import the table with XEngine_APIInfo.sql +MYSQL database version 8.0 or above is required. Create a table through CreateDatabase.sql, and then import other sql table Modify the database configuration in XSQL in the configuration file to your #### Windows @@ -71,12 +72,12 @@ Just Run it #### Linux ubuntu:sudo apt install libopencc-dev centos:compile by self -use makefile compile,UBUNTU20.04 x64 or CENTOS8 x64 +use makefile compile,UBUNTU22.04 x64 or RockyLinux 9 x64 Run it on the terminal #### Macos install opencc:brew install opencc -use makefile compile,mac 12 and above +use makefile compile,mac 13 and above Run it on the terminal ##### complie diff --git a/README.md b/README.md index 836a479eb696784ccc69fb1122e8c76b39550c65..9db710acc3bcfb02830cd11f024b1958852cc9d4 100644 --- a/README.md +++ b/README.md @@ -40,16 +40,17 @@ c c++ interface api service 20. 计量转换 21. 网络测试 22. 分布式锁API -23. 短连接生成(计划中) +23. 短连接生成和转发 24. 本地标准时间 25. 数学计算 26. 日志服务 27. 插件脚本热重载(计划中) +28. 敏感词检测(计划中) ## 安装教程 #### XEngine环境 -必须安装XEngine,版本需要V7.38或者以上版本,安装XEngine可以参考其Readme文档 +必须安装XEngine,版本需要V8.x或者以上版本,安装XEngine可以参考其Readme文档 GITEE:https://gitee.com/xyry/libxengine GITHUB:https://github.com/libxengine/xengine @@ -60,7 +61,7 @@ Linux执行:sudo ./XEngine_LINEnv.sh -i 3 macos执行:./XEngine_LINEnv.sh -i 3 #### 数据库环境 -需要MYSQL数据库8.0以上版本.通过CreateDatabase.sql创建表,然后XEngine_APIInfo.sql导入表 +需要MYSQL数据库8.0以上版本.通过CreateDatabase.sql创建表,然后导入剩余的表 修改配置文件里面XSQL里面的数据库配置为你的 #### Windows @@ -71,12 +72,12 @@ macos执行:./XEngine_LINEnv.sh -i 3 #### Linux ubuntu:sudo apt install liblua5.3-dev libopencc-dev libopencv-dev libopencv-contrib-dev libqrencode-dev centos:需要自己编译 -Linux使用Makefile编译,UBUNTU20.04 x64或者CENTOS8 x64 +Linux使用Makefile编译,UBUNTU22.04 x64或者RockyLinux 9 x64 在控制台运行 #### Macos 安装opencc,执行命令:brew install lua opencc -使用makefile编译,控制台运行,需要mac 12以及以上版本 +使用makefile编译,控制台运行,需要mac 13以及以上版本 在控制台运行 ##### 编译命令 diff --git a/XEngine_APPClient/APPClient_BankExample/APPClient_BankExample.cpp b/XEngine_APPClient/APPClient_BankExample/APPClient_BankExample.cpp index 214fdf1926cca05d7484884373db9494450cd2a7..6e4d9853b20bb1f927e88d8c2ab97ce418db7ded 100644 --- a/XEngine_APPClient/APPClient_BankExample/APPClient_BankExample.cpp +++ b/XEngine_APPClient/APPClient_BankExample/APPClient_BankExample.cpp @@ -28,8 +28,8 @@ int main() WSAStartup(MAKEWORD(2, 2), &st_WSAData); #endif int nLen = 0; - TCHAR* ptszMsgBuffer = NULL; - LPCTSTR lpszUrl = _T("http://127.0.0.1:5501/api?function=bank¶ms1=6214111100184841¶ms2=0"); + XCHAR* ptszMsgBuffer = NULL; + LPCXSTR lpszUrl = _T("http://127.0.0.1:5501/api?function=bank¶ms1=6214111100184841¶ms2=0"); if (!APIClient_Http_Request(_T("GET"), lpszUrl, NULL, NULL, &ptszMsgBuffer, &nLen)) { diff --git a/XEngine_APPClient/APPClient_DTestExample/APPClient_DTestExample.cpp b/XEngine_APPClient/APPClient_DTestExample/APPClient_DTestExample.cpp new file mode 100644 index 0000000000000000000000000000000000000000..8f681710378e394556e1e8ab7fa43ae44314449a --- /dev/null +++ b/XEngine_APPClient/APPClient_DTestExample/APPClient_DTestExample.cpp @@ -0,0 +1,46 @@ +#ifdef _MSC_BUILD +#include +#include +#pragma comment(lib,"Ws2_32") +#pragma comment(lib,"XEngine_BaseLib/XEngine_BaseLib") +#pragma comment(lib,"XEngine_NetHelp/NetHelp_APIClient") +#endif +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include + +//需要优先配置XEngine +//WINDOWS支持VS2022 x64 debug 编译调试 +//linux使用下面的命令编译 +//g++ -std=c++17 -Wall -g APPClient_DTestExample.cpp -o APPClient_DTestExample.exe -L /usr/local/lib/XEngine_Release/XEngine_BaseLib -L /usr/local/lib/XEngine_Release/XEngine_NetHelp -lXEngine_BaseLib -lNetHelp_APIClient + +int main() +{ +#ifdef _MSC_BUILD + WSADATA st_WSAData; + WSAStartup(MAKEWORD(2, 2), &st_WSAData); +#endif + int nLen = 0; + XCHAR* ptszMsgBuffer = NULL; + LPCXSTR lpszUrl = _T("http://127.0.0.1:5501/api?function=dtest¶ms1=0"); + + if (!APIClient_Http_Request(_T("POST"), lpszUrl, "hello", NULL, &ptszMsgBuffer, &nLen)) + { + printf("发送投递失败!\n"); + return 0; + } + printf("接受到数据,大小:%d,内容:%s\n", nLen, ptszMsgBuffer); + BaseLib_OperatorMemory_FreeCStyle((XPPMEM)&ptszMsgBuffer); + +#ifdef _MSC_BUILD + WSACleanup(); +#endif + return 0; +} \ No newline at end of file diff --git a/XEngine_APPClient/APPClient_DTestExample/APPClient_DTestExample.vcxproj b/XEngine_APPClient/APPClient_DTestExample/APPClient_DTestExample.vcxproj new file mode 100644 index 0000000000000000000000000000000000000000..9142727f62da043956285434b307515ea6dec06d --- /dev/null +++ b/XEngine_APPClient/APPClient_DTestExample/APPClient_DTestExample.vcxproj @@ -0,0 +1,139 @@ + + + + + Debug + Win32 + + + Release + Win32 + + + Debug + x64 + + + Release + x64 + + + + 16.0 + Win32Proj + {753b7188-3120-4283-959d-a2f95fa7c32a} + APPClientDTestExample + 10.0 + + + + Application + true + v143 + Unicode + + + Application + false + v143 + true + Unicode + + + Application + true + v143 + MultiByte + + + Application + false + v143 + true + Unicode + + + + + + + + + + + + + + + + + + + + + $(XEngine_Include);$(IncludePath) + $(XEngine_Lib64);$(LibraryPath) + + + + Level3 + true + WIN32;_DEBUG;_CONSOLE;%(PreprocessorDefinitions) + true + + + Console + true + + + + + Level3 + true + true + true + WIN32;NDEBUG;_CONSOLE;%(PreprocessorDefinitions) + true + + + Console + true + true + true + + + + + Level3 + true + _DEBUG;_CONSOLE;%(PreprocessorDefinitions) + true + + + Console + true + + + + + Level3 + true + true + true + NDEBUG;_CONSOLE;%(PreprocessorDefinitions) + true + + + Console + true + true + true + + + + + + + + + \ No newline at end of file diff --git a/XEngine_APPClient/APPClient_TestExample/APPClient_TestExample.vcxproj.filters b/XEngine_APPClient/APPClient_DTestExample/APPClient_DTestExample.vcxproj.filters similarity index 94% rename from XEngine_APPClient/APPClient_TestExample/APPClient_TestExample.vcxproj.filters rename to XEngine_APPClient/APPClient_DTestExample/APPClient_DTestExample.vcxproj.filters index ca99a949960ad94eaedc8d425bc88d820ce62def..ea358405611ca43ec5dc59c03c52ab2ffb4c56e7 100644 --- a/XEngine_APPClient/APPClient_TestExample/APPClient_TestExample.vcxproj.filters +++ b/XEngine_APPClient/APPClient_DTestExample/APPClient_DTestExample.vcxproj.filters @@ -15,7 +15,7 @@ - + 源文件 diff --git a/XEngine_APPClient/APPClient_TestExample/APPClient_TestExample.vcxproj.user b/XEngine_APPClient/APPClient_DTestExample/APPClient_DTestExample.vcxproj.user similarity index 100% rename from XEngine_APPClient/APPClient_TestExample/APPClient_TestExample.vcxproj.user rename to XEngine_APPClient/APPClient_DTestExample/APPClient_DTestExample.vcxproj.user diff --git a/XEngine_APPClient/APPClient_IDExample/APPClient_IDExample.cpp b/XEngine_APPClient/APPClient_IDExample/APPClient_IDExample.cpp index 6bd40da76181332c69d237ba7e3f928ae9ff45e5..d9a25703364c2ab7cf58c5aeff48f34fae7f4853 100644 --- a/XEngine_APPClient/APPClient_IDExample/APPClient_IDExample.cpp +++ b/XEngine_APPClient/APPClient_IDExample/APPClient_IDExample.cpp @@ -28,8 +28,8 @@ int main() WSAStartup(MAKEWORD(2, 2), &st_WSAData); #endif int nLen = 0; - TCHAR* ptszMsgBuffer = NULL; - LPCTSTR lpszUrl = _T("http://127.0.0.1:5501/api?function=id¶ms1=511025191101018792¶ms2=0"); + XCHAR* ptszMsgBuffer = NULL; + LPCXSTR lpszUrl = _T("http://127.0.0.1:5501/api?function=id¶ms1=511025191101018792¶ms2=0"); if (!APIClient_Http_Request(_T("GET"), lpszUrl, NULL, NULL, &ptszMsgBuffer, &nLen)) { diff --git a/XEngine_APPClient/APPClient_IPExample/APPClient_IPExample.cpp b/XEngine_APPClient/APPClient_IPExample/APPClient_IPExample.cpp index 1390272a600c7f4c798c342740e4cf2d01027fd8..71db3301d0587328fd07c89f4b83c8a634d2d815 100644 --- a/XEngine_APPClient/APPClient_IPExample/APPClient_IPExample.cpp +++ b/XEngine_APPClient/APPClient_IPExample/APPClient_IPExample.cpp @@ -28,15 +28,19 @@ int main() WSAStartup(MAKEWORD(2, 2), &st_WSAData); #endif int nLen = 0; - TCHAR* ptszMsgBuffer = NULL; - LPCTSTR lpszUrl = _T("http://127.0.0.1:5501/api?function=ip¶ms1=1.29.164.255¶ms2=0"); + XCHAR* ptszMsgBuffer = NULL; + LPCXSTR lpszUrl = _T("http://127.0.0.1:5501/api?function=ip¶ms1=1.29.164.255¶ms2=0"); if (!APIClient_Http_Request(_T("GET"), lpszUrl, NULL, NULL, &ptszMsgBuffer, &nLen)) { printf("发送投递失败!\n"); return 0; } - printf("接受到数据,大小:%d,内容:%s\n", nLen, ptszMsgBuffer); + XCHAR tszMsgBuffer[2048]; + memset(tszMsgBuffer, '\0', sizeof(tszMsgBuffer)); + + BaseLib_OperatorCharset_UTFToAnsi(ptszMsgBuffer, tszMsgBuffer, &nLen); + printf("接受到数据,大小:%d,内容:%s\n", nLen, tszMsgBuffer); BaseLib_OperatorMemory_FreeCStyle((XPPMEM)&ptszMsgBuffer); #ifdef _MSC_BUILD diff --git a/XEngine_APPClient/APPClient_LanguageExample/APPClient_LanguageExample.cpp b/XEngine_APPClient/APPClient_LanguageExample/APPClient_LanguageExample.cpp index 63634ff6888df79b6f5e734813f8d86f284d58e8..9bce4acb3f723f9dac965c23efcbbb436c3c8926 100644 --- a/XEngine_APPClient/APPClient_LanguageExample/APPClient_LanguageExample.cpp +++ b/XEngine_APPClient/APPClient_LanguageExample/APPClient_LanguageExample.cpp @@ -28,8 +28,8 @@ int main() WSAStartup(MAKEWORD(2, 2), &st_WSAData); #endif int nLen = 0; - TCHAR* ptszMsgBuffer = NULL; - LPCTSTR lpszUrl = _T("http://127.0.0.1:5501/api?function=language¶ms1=简体¶ms2=0¶m3=1"); + XCHAR* ptszMsgBuffer = NULL; + LPCXSTR lpszUrl = _T("http://127.0.0.1:5501/api?function=language¶ms1=简体¶ms2=0¶m3=1"); if (!APIClient_Http_Request(_T("GET"), lpszUrl, NULL, NULL, &ptszMsgBuffer, &nLen)) { diff --git a/XEngine_APPClient/APPClient_LibPluginExample/APPClient_LibPluginExample.cpp b/XEngine_APPClient/APPClient_LibPluginExample/APPClient_LibPluginExample.cpp index 59edc92662db2a8f55872d147035bcc0f89f57a8..62532278a8478d37ecefdaa40f1d691adb09c66f 100644 --- a/XEngine_APPClient/APPClient_LibPluginExample/APPClient_LibPluginExample.cpp +++ b/XEngine_APPClient/APPClient_LibPluginExample/APPClient_LibPluginExample.cpp @@ -28,8 +28,8 @@ int main() WSAStartup(MAKEWORD(2, 2), &st_WSAData); #endif int nLen = 0; - TCHAR* ptszMsgBuffer = NULL; - LPCTSTR lpszPassUrl = _T("http://127.0.0.1:5501/api?function=pass¶ms1=1¶ms2=4"); + XCHAR* ptszMsgBuffer = NULL; + LPCXSTR lpszPassUrl = _T("http://127.0.0.1:5501/api?function=pass¶ms1=1¶ms2=4"); if (!APIClient_Http_Request(_T("GET"), lpszPassUrl, NULL, NULL, &ptszMsgBuffer, &nLen)) { printf("发送投递失败!\n"); @@ -38,7 +38,7 @@ int main() printf("接受到数据,大小:%d,内容:%s\n", nLen, ptszMsgBuffer); BaseLib_OperatorMemory_FreeCStyle((XPPMEM)&ptszMsgBuffer); - LPCTSTR lpszZodiacUrl = _T("http://127.0.0.1:5501/api?function=zodiac¶ms1=19880121"); + LPCXSTR lpszZodiacUrl = _T("http://127.0.0.1:5501/api?function=zodiac¶ms1=19880121"); if (!APIClient_Http_Request(_T("GET"), lpszZodiacUrl, NULL, NULL, &ptszMsgBuffer, &nLen)) { printf("发送投递失败!\n"); @@ -47,7 +47,7 @@ int main() printf("接受到数据,大小:%d,内容:%s\n", nLen, ptszMsgBuffer); BaseLib_OperatorMemory_FreeCStyle((XPPMEM)&ptszMsgBuffer); - LPCTSTR lpszTimeUrl = _T("http://127.0.0.1:5501/api?function=timezone¶ms1=1¶ms2=1-20"); + LPCXSTR lpszTimeUrl = _T("http://127.0.0.1:5501/api?function=timezone¶ms1=1¶ms2=1-20"); if (!APIClient_Http_Request(_T("GET"), lpszTimeUrl, NULL, NULL, &ptszMsgBuffer, &nLen)) { printf("发送投递失败!\n"); @@ -56,7 +56,7 @@ int main() printf("接受到数据,大小:%d,内容:%s\n", nLen, ptszMsgBuffer); BaseLib_OperatorMemory_FreeCStyle((XPPMEM)&ptszMsgBuffer); - LPCTSTR lpszBmiUrl = _T("http://127.0.0.1:5501/api?function=bmindex¶ms1=1.78¶ms2=62"); + LPCXSTR lpszBmiUrl = _T("http://127.0.0.1:5501/api?function=bmindex¶ms1=1.78¶ms2=62"); if (!APIClient_Http_Request(_T("GET"), lpszBmiUrl, NULL, NULL, &ptszMsgBuffer, &nLen)) { printf("发送投递失败!\n"); diff --git a/XEngine_APPClient/APPClient_LockExample/APPClient_LockExample.cpp b/XEngine_APPClient/APPClient_LockExample/APPClient_LockExample.cpp index 4f58948dc9ea451059947aafe6cb874ad2638cb1..370f285bc5660249a0d4f925c54821966c83ba45 100644 --- a/XEngine_APPClient/APPClient_LockExample/APPClient_LockExample.cpp +++ b/XEngine_APPClient/APPClient_LockExample/APPClient_LockExample.cpp @@ -28,9 +28,9 @@ int main() WSAStartup(MAKEWORD(2, 2), &st_WSAData); #endif int nLen = 0; - LPCTSTR lpszOPenUrl = _T("http://127.0.0.1:5501/api?function=lock¶ms1=1000106561¶ms1=1"); + LPCXSTR lpszOPenUrl = _T("http://127.0.0.1:5501/api?function=lock¶ms1=1000106561¶ms1=1"); //自己创建打开 - TCHAR* ptszBuffer = NULL; + XCHAR* ptszBuffer = NULL; if (!APIClient_Http_Request(_T("GET"), lpszOPenUrl, NULL, NULL, &ptszBuffer, &nLen)) { printf("发送投递失败!\n"); @@ -39,7 +39,7 @@ int main() printf("接受到数据,大小:%d,内容:%s\n", nLen, ptszBuffer); BaseLib_OperatorMemory_FreeCStyle((XPPMEM)&ptszBuffer); //打开读锁 - LPCTSTR lpszReadUrl = _T("http://127.0.0.1:5501/api?function=lock¶ms1=1000106561¶ms2=3"); + LPCXSTR lpszReadUrl = _T("http://127.0.0.1:5501/api?function=lock¶ms1=1000106561¶ms2=3"); if (!APIClient_Http_Request(_T("GET"), lpszReadUrl, NULL, NULL, &ptszBuffer, &nLen)) { printf("发送投递失败!\n"); @@ -48,7 +48,7 @@ int main() printf("接受到数据,大小:%d,内容:\n%s\n", nLen, ptszBuffer); BaseLib_OperatorMemory_FreeCStyle((XPPMEM)&ptszBuffer); //打开写锁 - LPCTSTR lpszWriteUrl = _T("http://127.0.0.1:5501/api?function=lock¶ms1=1000106561¶ms2=5"); + LPCXSTR lpszWriteUrl = _T("http://127.0.0.1:5501/api?function=lock¶ms1=1000106561¶ms2=5"); if (!APIClient_Http_Request(_T("GET"), lpszWriteUrl, NULL, NULL, &ptszBuffer, &nLen)) { printf("发送投递失败!\n"); @@ -57,7 +57,7 @@ int main() printf("接受到数据,大小:%d,内容:\n%s\n", nLen, ptszBuffer); BaseLib_OperatorMemory_FreeCStyle((XPPMEM)&ptszBuffer); //释放读锁 - LPCTSTR lpszUNReadUrl = _T("http://127.0.0.1:5501/api?function=lock¶ms1=1000106561¶ms2=4"); + LPCXSTR lpszUNReadUrl = _T("http://127.0.0.1:5501/api?function=lock¶ms1=1000106561¶ms2=4"); if (!APIClient_Http_Request(_T("GET"), lpszUNReadUrl, NULL, NULL, &ptszBuffer, &nLen)) { printf("发送投递失败!\n"); @@ -74,7 +74,7 @@ int main() printf("接受到数据,大小:%d,内容:\n%s\n", nLen, ptszBuffer); BaseLib_OperatorMemory_FreeCStyle((XPPMEM)&ptszBuffer); //关闭 - LPCTSTR lpszCloseUrl = _T("http://127.0.0.1:5501/api?function=lock¶ms1=1000106561¶ms2=2"); + LPCXSTR lpszCloseUrl = _T("http://127.0.0.1:5501/api?function=lock¶ms1=1000106561¶ms2=2"); if (!APIClient_Http_Request(_T("GET"), lpszCloseUrl, NULL, NULL, &ptszBuffer, &nLen)) { printf("发送投递失败!\n"); diff --git a/XEngine_APPClient/APPClient_LuaPluginExample/APPClient_LuaPluginExample.cpp b/XEngine_APPClient/APPClient_LuaPluginExample/APPClient_LuaPluginExample.cpp index 2d296b6f90a14daa33e02d87a03972190fe245c5..c3fb727727b08e5321aaa8e0312a4a807340da60 100644 --- a/XEngine_APPClient/APPClient_LuaPluginExample/APPClient_LuaPluginExample.cpp +++ b/XEngine_APPClient/APPClient_LuaPluginExample/APPClient_LuaPluginExample.cpp @@ -28,8 +28,8 @@ int main() WSAStartup(MAKEWORD(2, 2), &st_WSAData); #endif int nLen = 0; - TCHAR* ptszMsgBuffer = NULL; - LPCTSTR lpszPassUrl = _T("http://127.0.0.1:5501/api?function=cal¶ms1=1¶ms2=2&type=0"); + XCHAR* ptszMsgBuffer = NULL; + LPCXSTR lpszPassUrl = _T("http://127.0.0.1:5501/api?function=cal¶ms1=1¶ms2=2&type=0"); if (!APIClient_Http_Request(_T("GET"), lpszPassUrl, NULL, NULL, &ptszMsgBuffer, &nLen)) { printf("发送投递失败!\n"); diff --git a/XEngine_APPClient/APPClient_P2PExample/APPClient_P2PExample.cpp b/XEngine_APPClient/APPClient_P2PExample/APPClient_P2PExample.cpp index e8b9e7c6fa63bf160650b6e5ef8a3f7e15bcbe23..98ca94f3211ad9acb0c43913d6d6e376385299e2 100644 --- a/XEngine_APPClient/APPClient_P2PExample/APPClient_P2PExample.cpp +++ b/XEngine_APPClient/APPClient_P2PExample/APPClient_P2PExample.cpp @@ -26,20 +26,20 @@ //linux使用下面的命令编译 //g++ -std=c++17 -Wall -g APPClient_P2PExample.cpp -o APPClient_P2PExample.exe -I ../../XEngine_Source/XEngine_ThirdPart/jsoncpp -L /usr/local/lib/XEngine_Release/XEngine_BaseLib -L /usr/local/lib/XEngine_Release/XEngine_Core -L /usr/local/lib/XEngine_Release/XEngine_NetHelp -lXEngine_BaseLib -lXEngine_NetXApi -lNetHelp_APIClient -ljsoncpp -LPCTSTR lpszUserName = _T("123123aa"); -TCHAR tszPublicAddr[128]; -TCHAR tszPrivateAddr[128]; +LPCXSTR lpszUserName = _T("123123aa"); +XCHAR tszPublicAddr[128]; +XCHAR tszPrivateAddr[128]; int nPort = 5103; SOCKET m_hSocket; -BOOL APIHelp_NetWork_GetIPNet(TCHAR* ptszIPAddr) +BOOL APIHelp_NetWork_GetIPNet(XCHAR* ptszIPAddr) { //获取本地外网IP地址 int nBLen = 0; - TCHAR* ptszBody = NULL; - LPCTSTR lpszUrl = _T("http://members.3322.org/dyndns/getip"); - LPCTSTR lpszHdrBuffer = _T("Connection: close\r\nDNT: 1\r\nUpgrade-Insecure-Requests: 1\r\nUser-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/97.0.4692.71 Safari/537.36 Edg/97.0.1072.55\r\nAccept: text/html\r\nAccept-Language: zh-CN,zh\r\nAccept-Encoding: deflate\r\n"); + XCHAR* ptszBody = NULL; + LPCXSTR lpszUrl = _T("http://members.3322.org/dyndns/getip"); + LPCXSTR lpszHdrBuffer = _T("Connection: close\r\nDNT: 1\r\nUpgrade-Insecure-Requests: 1\r\nUser-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/97.0.4692.71 Safari/537.36 Edg/97.0.1072.55\r\nAccept: text/html\r\nAccept-Language: zh-CN,zh\r\nAccept-Encoding: deflate\r\n"); if (!APIClient_Http_Request(_T("GET"), lpszUrl, NULL, NULL, &ptszBody, &nBLen, lpszHdrBuffer)) { @@ -52,7 +52,7 @@ BOOL APIHelp_NetWork_GetIPNet(TCHAR* ptszIPAddr) int APPClient_P2XPLogin() { Json::Value st_JsonRoot; - LPCTSTR lpszAddr = _T("http://192.168.1.8:5501/api?function=p2p¶ms1=24577"); + LPCXSTR lpszAddr = _T("http://192.168.1.8:5501/api?function=p2p¶ms1=24577"); ENUM_XENGINE_NETXAPI_SOCKET_CONNECTTYPE dwNetType; memset(tszPublicAddr, '\0', sizeof(tszPublicAddr)); @@ -82,7 +82,7 @@ int APPClient_P2XPLogin() int nMsgLen = 0; int nHTTPCode = 0; - TCHAR* ptszMsgBuffer = NULL; + XCHAR* ptszMsgBuffer = NULL; if (!APIClient_Http_Request(_T("POST"), lpszAddr, st_JsonRoot.toStyledString().c_str(), &nHTTPCode, &ptszMsgBuffer, &nMsgLen)) { return -1; @@ -95,7 +95,7 @@ int APPClient_P2XPLogin() int APPClient_P2XPList() { Json::Value st_JsonRoot; - LPCTSTR lpszAddr = _T("http://192.168.1.8:5501/api?function=p2p¶ms1=24579"); + LPCXSTR lpszAddr = _T("http://192.168.1.8:5501/api?function=p2p¶ms1=24579"); st_JsonRoot["tszUserName"] = lpszUserName; st_JsonRoot["tszPrivateAddr"] = tszPrivateAddr; @@ -103,7 +103,7 @@ int APPClient_P2XPList() int nMsgLen = 0; int nHTTPCode = 0; - TCHAR* ptszMsgBuffer = NULL; + XCHAR* ptszMsgBuffer = NULL; if (!APIClient_Http_Request(_T("POST"), lpszAddr, st_JsonRoot.toStyledString().c_str(), &nHTTPCode, &ptszMsgBuffer, &nMsgLen)) { return -1; @@ -116,7 +116,7 @@ int APPClient_P2XPList() int APPClient_P2XPGetUser() { Json::Value st_JsonRoot; - LPCTSTR lpszAddr = _T("http://192.168.1.8:5501/api?function=p2p¶ms1=24583"); + LPCXSTR lpszAddr = _T("http://192.168.1.8:5501/api?function=p2p¶ms1=24583"); st_JsonRoot["tszUserName"] = lpszUserName; st_JsonRoot["tszPrivateAddr"] = tszPrivateAddr; @@ -124,7 +124,7 @@ int APPClient_P2XPGetUser() int nMsgLen = 0; int nHTTPCode = 0; - TCHAR* ptszMsgBuffer = NULL; + XCHAR* ptszMsgBuffer = NULL; if (!APIClient_Http_Request(_T("POST"), lpszAddr, st_JsonRoot.toStyledString().c_str(), &nHTTPCode, &ptszMsgBuffer, &nMsgLen)) { return -1; @@ -137,7 +137,7 @@ int APPClient_P2XPGetUser() int APPClient_P2XPConnect() { Json::Value st_JsonRoot; - LPCTSTR lpszAddr = _T("http://192.168.1.8:5501/api?function=p2p¶ms1=24581"); + LPCXSTR lpszAddr = _T("http://192.168.1.8:5501/api?function=p2p¶ms1=24581"); st_JsonRoot["tszUserName"] = lpszUserName; st_JsonRoot["tszPrivateAddr"] = tszPrivateAddr; @@ -145,7 +145,7 @@ int APPClient_P2XPConnect() int nMsgLen = 0; int nHTTPCode = 0; - TCHAR* ptszMsgBuffer = NULL; + XCHAR* ptszMsgBuffer = NULL; if (!APIClient_Http_Request(_T("POST"), lpszAddr, st_JsonRoot.toStyledString().c_str(), &nHTTPCode, &ptszMsgBuffer, &nMsgLen)) { return -1; diff --git a/XEngine_APPClient/APPClient_PhoneExample/APPClient_PhoneExample.cpp b/XEngine_APPClient/APPClient_PhoneExample/APPClient_PhoneExample.cpp index fb39a0ce18b76c1cdb43a23bcfa858b4f21153c4..d19a1002188901385f6edb0e22ebda150d646984 100644 --- a/XEngine_APPClient/APPClient_PhoneExample/APPClient_PhoneExample.cpp +++ b/XEngine_APPClient/APPClient_PhoneExample/APPClient_PhoneExample.cpp @@ -28,8 +28,8 @@ int main() WSAStartup(MAKEWORD(2, 2), &st_WSAData); #endif int nLen = 0; - TCHAR* ptszMsgBuffer = NULL; - LPCTSTR lpszUrl = _T("http://127.0.0.1:5501/api?function=phone¶ms1=13699438888¶ms2=0"); + XCHAR* ptszMsgBuffer = NULL; + LPCXSTR lpszUrl = _T("http://127.0.0.1:5501/api?function=phone¶ms1=13699438888¶ms2=0"); if (!APIClient_Http_Request(_T("GET"), lpszUrl, NULL, NULL, &ptszMsgBuffer, &nLen)) { diff --git a/XEngine_APPClient/APPClient_QRExample/APPClient_QRExample.cpp b/XEngine_APPClient/APPClient_QRExample/APPClient_QRExample.cpp index ac336c4fe272ad52cb5562a59eeb23a1ed9dd2c4..32ff1ff6fd361a3e25cf3798c9a930d8c9b89c20 100644 --- a/XEngine_APPClient/APPClient_QRExample/APPClient_QRExample.cpp +++ b/XEngine_APPClient/APPClient_QRExample/APPClient_QRExample.cpp @@ -25,19 +25,19 @@ #define QRCODE_BUFFER_SIZE 1024 * 1024 * 10 -LPCTSTR lpszFileName = _T("D:\\XEngine_APIService\\XEngine_APPClient\\x64\\Debug\\1.png"); +LPCXSTR lpszFileName = _T("D:\\XEngine_APIService\\XEngine_APPClient\\x64\\Debug\\1.png"); int test_create() { int nLen = 0; int nCode = 0; - LPCTSTR lpszAPIUrl = _T("http://127.0.0.1:5501/api?function=qrcode¶ms1=0"); + LPCXSTR lpszAPIUrl = _T("http://127.0.0.1:5501/api?function=qrcode¶ms1=0"); Json::Value st_JsonRoot; st_JsonRoot["tszMsgBuffer"] = lpszAPIUrl; st_JsonRoot["tszFmtBuffer"] = ".png"; - TCHAR* ptszMsgBuffer = NULL; + XCHAR* ptszMsgBuffer = NULL; if (!APIClient_Http_Request(_T("POST"), lpszAPIUrl, st_JsonRoot.toStyledString().c_str(), &nCode, &ptszMsgBuffer, &nLen)) { printf("发送投递失败!\n"); @@ -57,17 +57,17 @@ int test_create() int test_parse() { int nCode = 0; - TCHAR* ptszMsgBuffer = (TCHAR*)malloc(QRCODE_BUFFER_SIZE); + XCHAR* ptszMsgBuffer = (XCHAR*)malloc(QRCODE_BUFFER_SIZE); - LPCTSTR lpszAPIUrl = _T("http://127.0.0.1:5501/api?function=qrcode¶ms1=1"); + LPCXSTR lpszAPIUrl = _T("http://127.0.0.1:5501/api?function=qrcode¶ms1=1"); FILE* pSt_File = fopen(lpszFileName, "rb"); if (NULL != pSt_File) { - LPCTSTR lpszCustomHdr = _T("Content-Type: image/png\r\n"); + LPCXSTR lpszCustomHdr = _T("Content-Type: image/png\r\n"); memset(ptszMsgBuffer, '\0', QRCODE_BUFFER_SIZE); int nRet = fread(ptszMsgBuffer, 1, QRCODE_BUFFER_SIZE, pSt_File); - TCHAR* ptszBodyBuffer = NULL; + XCHAR* ptszBodyBuffer = NULL; if (!APIClient_Http_Request(_T("POST"), lpszAPIUrl, ptszMsgBuffer, &nCode, &ptszBodyBuffer, &nRet, lpszCustomHdr)) { printf("发送投递失败!\n"); diff --git a/XEngine_APPClient/APPClient_SLinkExample/APPClient_SLinkExample.cpp b/XEngine_APPClient/APPClient_SLinkExample/APPClient_SLinkExample.cpp new file mode 100644 index 0000000000000000000000000000000000000000..54c245921fb746b2c9b6580254a526da8b4b4754 --- /dev/null +++ b/XEngine_APPClient/APPClient_SLinkExample/APPClient_SLinkExample.cpp @@ -0,0 +1,102 @@ +#ifdef _MSC_BUILD +#include +#include +#pragma comment(lib,"Ws2_32") +#pragma comment(lib,"jsoncpp") +#pragma comment(lib,"XEngine_BaseLib/XEngine_BaseLib") +#pragma comment(lib,"XEngine_NetHelp/NetHelp_APIClient") +#endif +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include + +//需要优先配置XEngine +//WINDOWS支持VS2022 x64 debug 编译调试 +//linux::g++ -std=c++17 -Wall -g APPClient_SLinkExample.cpp -o APPClient_SLinkExample.exe -L /usr/local/lib/XEngine_Release/XEngine_BaseLib -L /usr/local/lib/XEngine_Release/XEngine_NetHelp -lXEngine_BaseLib -lNetHelp_APIClient +//macos::g++ -std=c++17 -Wall -g APPClient_SLinkExample.cpp -o APPClient_SLinkExample.exe -lXEngine_BaseLib -lNetHelp_APIClient + +XNETHANDLE xhToken = 0; +#define QRCODE_BUFFER_SIZE 1024 * 1024 * 10 +LPCXSTR lpszFileName = _T("D:\\XEngine_APIService\\XEngine_APPClient\\x64\\Debug\\1.png"); + +int test_create() +{ + int nLen = 0; + int nCode = 0; + LPCXSTR lpszAPIUrl = _T("http://127.0.0.1:5501/api?function=slink¶ms1=0"); + + Json::Value st_JsonRoot; + st_JsonRoot["tszFullUrl"] = "http://bbs.xyry.org/forum.php?mod=viewthread&tid=2&extra=page%3D1"; + st_JsonRoot["tszCvtUrl"] = "http://app.xyry.org:5501"; + st_JsonRoot["nLength"] = 6; + + XCHAR* ptszMsgBuffer = NULL; + if (!APIClient_Http_Request(_T("POST"), lpszAPIUrl, st_JsonRoot.toStyledString().c_str(), &nCode, &ptszMsgBuffer, &nLen)) + { + printf("发送投递失败!\n"); + return 0; + } + printf("接受到数据,大小:%d,内容:%s\n", nLen, ptszMsgBuffer); + BaseLib_OperatorMemory_FreeCStyle((XPPMEM)&ptszMsgBuffer); + return 0; +} +int test_get() +{ + int nLen = 0; + int nCode = 0; + XCHAR* ptszMsgBuffer; + Json::Value st_JsonRoot; + st_JsonRoot["tszMapUrl"] = "http://app.xyry.org:5501"; + + LPCXSTR lpszAPIUrl = _T("http://127.0.0.1:5501/api?function=slink¶ms1=1"); + if (!APIClient_Http_Request(_T("POST"), lpszAPIUrl, st_JsonRoot.toStyledString().c_str(), &nCode, &ptszMsgBuffer, &nLen)) + { + printf("发送投递失败!\n"); + return 0; + } + printf("接受到数据,大小:%d,内容:%s\n", nLen, ptszMsgBuffer); + BaseLib_OperatorMemory_FreeCStyle((XPPMEM)&ptszMsgBuffer); + return 0; +} +int test_delete() +{ + int nLen = 0; + int nCode = 0; + XCHAR* ptszMsgBuffer; + Json::Value st_JsonRoot; + st_JsonRoot["tszMapUrl"] = "http://app.xyry.org:5501"; + + LPCXSTR lpszAPIUrl = _T("http://127.0.0.1:5501/api?function=slink¶ms1=2"); + if (!APIClient_Http_Request(_T("POST"), lpszAPIUrl, st_JsonRoot.toStyledString().c_str(), &nCode, &ptszMsgBuffer, &nLen)) + { + printf("发送投递失败!\n"); + return 0; + } + printf("接受到数据,大小:%d,内容:%s\n", nLen, ptszMsgBuffer); + BaseLib_OperatorMemory_FreeCStyle((XPPMEM)&ptszMsgBuffer); + return 0; +} + +int main() +{ +#ifdef _MSC_BUILD + WSADATA st_WSAData; + WSAStartup(MAKEWORD(2, 2), &st_WSAData); +#endif + test_create(); + test_get(); + test_delete(); + +#ifdef _MSC_BUILD + WSACleanup(); +#endif + return 0; +} \ No newline at end of file diff --git a/XEngine_APPClient/APPClient_TestExample/APPClient_TestExample.vcxproj b/XEngine_APPClient/APPClient_SLinkExample/APPClient_SLinkExample.vcxproj similarity index 97% rename from XEngine_APPClient/APPClient_TestExample/APPClient_TestExample.vcxproj rename to XEngine_APPClient/APPClient_SLinkExample/APPClient_SLinkExample.vcxproj index b33903662f22cce5377af851a355d6fc9a697bba..8c4acd35ddb68e7a936e05de4a25c158a870d799 100644 --- a/XEngine_APPClient/APPClient_TestExample/APPClient_TestExample.vcxproj +++ b/XEngine_APPClient/APPClient_SLinkExample/APPClient_SLinkExample.vcxproj @@ -21,8 +21,8 @@ 16.0 Win32Proj - {c5f955b3-2701-4c5a-8f41-92ce536b8913} - APPClientTestExample + {f46ef40d-5bd6-4f75-aec8-222a98a3dfc1} + APPClientSLinkExample 10.0 @@ -131,7 +131,7 @@ - + diff --git a/XEngine_APPClient/APPClient_SLinkExample/APPClient_SLinkExample.vcxproj.filters b/XEngine_APPClient/APPClient_SLinkExample/APPClient_SLinkExample.vcxproj.filters new file mode 100644 index 0000000000000000000000000000000000000000..974f8332667b9b9bdd403da823923548ddf723d2 --- /dev/null +++ b/XEngine_APPClient/APPClient_SLinkExample/APPClient_SLinkExample.vcxproj.filters @@ -0,0 +1,22 @@ + + + + + {4FC737F1-C7A5-4376-A066-2A32D752A2FF} + cpp;c;cc;cxx;c++;cppm;ixx;def;odl;idl;hpj;bat;asm;asmx + + + {93995380-89BD-4b04-88EB-625FBE52EBFB} + h;hh;hpp;hxx;h++;hm;inl;inc;ipp;xsd + + + {67DA6AB6-F800-4c08-8B7A-83BB121AAD01} + rc;ico;cur;bmp;dlg;rc2;rct;bin;rgs;gif;jpg;jpeg;jpe;resx;tiff;tif;png;wav;mfcribbon-ms + + + + + 源文件 + + + \ No newline at end of file diff --git a/XEngine_APPClient/APPClient_SLinkExample/APPClient_SLinkExample.vcxproj.user b/XEngine_APPClient/APPClient_SLinkExample/APPClient_SLinkExample.vcxproj.user new file mode 100644 index 0000000000000000000000000000000000000000..88a550947edbc3c5003a41726f0749201fdb6822 --- /dev/null +++ b/XEngine_APPClient/APPClient_SLinkExample/APPClient_SLinkExample.vcxproj.user @@ -0,0 +1,4 @@ + + + + \ No newline at end of file diff --git a/XEngine_APPClient/APPClient_TestExample/APPClient_TestExample.cpp b/XEngine_APPClient/APPClient_SocketExample/APPClient_SocketExample.cpp similarity index 81% rename from XEngine_APPClient/APPClient_TestExample/APPClient_TestExample.cpp rename to XEngine_APPClient/APPClient_SocketExample/APPClient_SocketExample.cpp index ec72aa417bf6852360e715e0e5f350942928ac06..b27de6b5bdde3185a300f5fd50b0c8000036812b 100644 --- a/XEngine_APPClient/APPClient_TestExample/APPClient_TestExample.cpp +++ b/XEngine_APPClient/APPClient_SocketExample/APPClient_SocketExample.cpp @@ -20,18 +20,18 @@ //需要优先配置XEngine //WINDOWS支持VS2022 x64 debug 编译调试 -//linux::g++ -std=c++17 -Wall -g APPClient_TestExample.cpp -o APPClient_TestExample.exe -L /usr/local/lib/XEngine_Release/XEngine_BaseLib -L /usr/local/lib/XEngine_Release/XEngine_NetHelp -lXEngine_BaseLib -lNetHelp_APIClient -//macos::g++ -std=c++17 -Wall -g APPClient_TestExample.cpp -o APPClient_TestExample.exe -lXEngine_BaseLib -lNetHelp_APIClient +//linux::g++ -std=c++17 -Wall -g APPClient_SocketExample.cpp -o APPClient_SocketExample.exe -L /usr/local/lib/XEngine_Release/XEngine_BaseLib -L /usr/local/lib/XEngine_Release/XEngine_NetHelp -lXEngine_BaseLib -lNetHelp_APIClient +//macos::g++ -std=c++17 -Wall -g APPClient_SocketExample.cpp -o APPClient_SocketExample.exe -lXEngine_BaseLib -lNetHelp_APIClient XNETHANDLE xhToken = 0; #define QRCODE_BUFFER_SIZE 1024 * 1024 * 10 -LPCTSTR lpszFileName = _T("D:\\XEngine_APIService\\XEngine_APPClient\\x64\\Debug\\1.png"); +LPCXSTR lpszFileName = _T("D:\\XEngine_APIService\\XEngine_APPClient\\x64\\Debug\\1.png"); int test_create() { int nLen = 0; int nCode = 0; - LPCTSTR lpszAPIUrl = _T("http://127.0.0.1:5501/api?function=test¶ms1=0"); + LPCXSTR lpszAPIUrl = _T("http://127.0.0.1:5501/api?function=socket¶ms1=0"); Json::Value st_JsonRoot; st_JsonRoot["tszAPIUrl"] = "http://127.0.0.1:5501/api?function=report¶ms1=0"; @@ -44,7 +44,7 @@ int test_create() st_JsonRoot["nConnectTest"] = 1; st_JsonRoot["nContWaitTime"] = 1000; - TCHAR* ptszMsgBuffer = NULL; + XCHAR* ptszMsgBuffer = NULL; if (!APIClient_Http_Request(_T("POST"), lpszAPIUrl, st_JsonRoot.toStyledString().c_str(), &nCode, &ptszMsgBuffer, &nLen)) { printf("发送投递失败!\n"); @@ -73,13 +73,13 @@ int test_delete() { int nLen = 0; int nCode = 0; - TCHAR* ptszMsgBuffer; + XCHAR* ptszMsgBuffer; Json::Value st_JsonRoot; st_JsonRoot["bTCP"] = true; st_JsonRoot["bConn"] = true; st_JsonRoot["xhToken"] = xhToken; - LPCTSTR lpszAPIUrl = _T("http://127.0.0.1:5501/api?function=test¶ms1=1"); + LPCXSTR lpszAPIUrl = _T("http://127.0.0.1:5501/api?function=socket¶ms1=1"); if (!APIClient_Http_Request(_T("POST"), lpszAPIUrl, st_JsonRoot.toStyledString().c_str(), &nCode, &ptszMsgBuffer, &nLen)) { printf("发送投递失败!\n"); diff --git a/XEngine_APPClient/APPClient_SocketExample/APPClient_SocketExample.vcxproj b/XEngine_APPClient/APPClient_SocketExample/APPClient_SocketExample.vcxproj new file mode 100644 index 0000000000000000000000000000000000000000..75f96179c36962a8a8409cac7fa9890c8dc5ef93 --- /dev/null +++ b/XEngine_APPClient/APPClient_SocketExample/APPClient_SocketExample.vcxproj @@ -0,0 +1,139 @@ + + + + + Debug + Win32 + + + Release + Win32 + + + Debug + x64 + + + Release + x64 + + + + 16.0 + Win32Proj + {5df5e1d4-318c-468d-a427-88d873e095d3} + APPClientSocketExample + 10.0 + + + + Application + true + v143 + Unicode + + + Application + false + v143 + true + Unicode + + + Application + true + v143 + MultiByte + + + Application + false + v143 + true + Unicode + + + + + + + + + + + + + + + + + + + + + $(XEngine_Include);../../XEngine_Source/XEngine_ThirdPart/jsoncpp;$(IncludePath) + $(XEngine_Lib64);../../XEngine_Source/x64/Debug;$(LibraryPath) + + + + Level3 + true + WIN32;_DEBUG;_CONSOLE;%(PreprocessorDefinitions) + true + + + Console + true + + + + + Level3 + true + true + true + WIN32;NDEBUG;_CONSOLE;%(PreprocessorDefinitions) + true + + + Console + true + true + true + + + + + Level3 + true + _DEBUG;_CONSOLE;%(PreprocessorDefinitions) + true + + + Console + true + + + + + Level3 + true + true + true + NDEBUG;_CONSOLE;%(PreprocessorDefinitions) + true + + + Console + true + true + true + + + + + + + + + \ No newline at end of file diff --git a/XEngine_APPClient/APPClient_SocketExample/APPClient_SocketExample.vcxproj.filters b/XEngine_APPClient/APPClient_SocketExample/APPClient_SocketExample.vcxproj.filters new file mode 100644 index 0000000000000000000000000000000000000000..3b76fc7a9bc706934b83963708f94d67139edad9 --- /dev/null +++ b/XEngine_APPClient/APPClient_SocketExample/APPClient_SocketExample.vcxproj.filters @@ -0,0 +1,22 @@ + + + + + {4FC737F1-C7A5-4376-A066-2A32D752A2FF} + cpp;c;cc;cxx;c++;cppm;ixx;def;odl;idl;hpj;bat;asm;asmx + + + {93995380-89BD-4b04-88EB-625FBE52EBFB} + h;hh;hpp;hxx;h++;hm;inl;inc;ipp;xsd + + + {67DA6AB6-F800-4c08-8B7A-83BB121AAD01} + rc;ico;cur;bmp;dlg;rc2;rct;bin;rgs;gif;jpg;jpeg;jpe;resx;tiff;tif;png;wav;mfcribbon-ms + + + + + 源文件 + + + \ No newline at end of file diff --git a/XEngine_APPClient/APPClient_SocketExample/APPClient_SocketExample.vcxproj.user b/XEngine_APPClient/APPClient_SocketExample/APPClient_SocketExample.vcxproj.user new file mode 100644 index 0000000000000000000000000000000000000000..88a550947edbc3c5003a41726f0749201fdb6822 --- /dev/null +++ b/XEngine_APPClient/APPClient_SocketExample/APPClient_SocketExample.vcxproj.user @@ -0,0 +1,4 @@ + + + + \ No newline at end of file diff --git a/XEngine_APPClient/APPClient_TranslationExample/APPClient_TranslationExample.cpp b/XEngine_APPClient/APPClient_TranslationExample/APPClient_TranslationExample.cpp index ed430ce6a8e51a0ae6a3ff8f069e59df444aa77d..5f9a0e39e9cef928a155b2701ee5c773875d1b86 100644 --- a/XEngine_APPClient/APPClient_TranslationExample/APPClient_TranslationExample.cpp +++ b/XEngine_APPClient/APPClient_TranslationExample/APPClient_TranslationExample.cpp @@ -28,8 +28,8 @@ int main() WSAStartup(MAKEWORD(2, 2), &st_WSAData); #endif int nLen = 0; - TCHAR* ptszMsgBuffer = NULL; - LPCTSTR lpszUrl = _T("http://127.0.0.1:5501/api?function=translation¶ms1=中国¶ms2=0¶m3=0"); + XCHAR* ptszMsgBuffer = NULL; + LPCXSTR lpszUrl = _T("http://127.0.0.1:5501/api?function=translation¶ms1=中国¶ms2=0¶m3=0"); if (!APIClient_Http_Request(_T("GET"), lpszUrl, NULL, NULL, &ptszMsgBuffer, &nLen)) { diff --git a/XEngine_APPClient/APPClient_XLogExample/APPClient_XLogExample.cpp b/XEngine_APPClient/APPClient_XLogExample/APPClient_XLogExample.cpp index 53430dfcbde07d5f9699559b06c1bea65982a47d..cc23bdadf014fd88fefb66238b4359cfda4d93df 100644 --- a/XEngine_APPClient/APPClient_XLogExample/APPClient_XLogExample.cpp +++ b/XEngine_APPClient/APPClient_XLogExample/APPClient_XLogExample.cpp @@ -23,18 +23,18 @@ //linux::g++ -std=c++17 -Wall -g APPClient_XLogExample.cpp -o APPClient_XLogExample.exe -L /usr/local/lib/XEngine_Release/XEngine_BaseLib -L /usr/local/lib/XEngine_Release/XEngine_NetHelp -lXEngine_BaseLib -lNetHelp_APIClient //macos::g++ -std=c++17 -Wall -g APPClient_XLogExample.cpp -o APPClient_XLogExample.exe -lXEngine_BaseLib -lNetHelp_APIClient -LPCTSTR lpszTableName = _T("xengine"); +LPCXSTR lpszTableName = _T("xengine"); int test_create() { int nLen = 0; int nCode = 0; - LPCTSTR lpszAPIUrl = _T("http://127.0.0.1:5501/api?function=log¶ms1=0"); + LPCXSTR lpszAPIUrl = _T("http://127.0.0.1:5501/api?function=log¶ms1=0"); Json::Value st_JsonRoot; st_JsonRoot["tszTableName"] = lpszTableName; - TCHAR* ptszMsgBuffer = NULL; + XCHAR* ptszMsgBuffer = NULL; if (!APIClient_Http_Request(_T("POST"), lpszAPIUrl, st_JsonRoot.toStyledString().c_str(), &nCode, &ptszMsgBuffer, &nLen)) { printf("发送投递失败!\n"); @@ -49,8 +49,8 @@ int test_insert() { int nLen = 0; int nCode = 0; - LPCTSTR lpszAPIUrl = _T("http://127.0.0.1:5501/api?function=log¶ms1=1"); - LPCTSTR lpszMsgBuffer = _T("adwdad12d21d123d132rd213d32f23df23rf"); + LPCXSTR lpszAPIUrl = _T("http://127.0.0.1:5501/api?function=log¶ms1=1"); + LPCXSTR lpszMsgBuffer = _T("adwdad12d21d123d132rd213d32f23df23rf"); Json::Value st_JsonRoot; Json::StreamWriterBuilder st_JsonBuilder; @@ -66,7 +66,7 @@ int test_insert() st_JsonBuilder["emitUTF8"] = true; - TCHAR* ptszMsgBuffer = NULL; + XCHAR* ptszMsgBuffer = NULL; if (!APIClient_Http_Request(_T("POST"), lpszAPIUrl, Json::writeString(st_JsonBuilder, st_JsonRoot).c_str(), &nCode, &ptszMsgBuffer, &nLen)) { printf("发送投递失败!\n"); @@ -81,14 +81,14 @@ int test_query() { int nLen = 0; int nCode = 0; - LPCTSTR lpszAPIUrl = _T("http://127.0.0.1:5501/api?function=log¶ms1=2"); + LPCXSTR lpszAPIUrl = _T("http://127.0.0.1:5501/api?function=log¶ms1=2"); Json::Value st_JsonRoot; st_JsonRoot["tszTableName"] = lpszTableName; st_JsonRoot["tszTimeStart"] = "2023-01-13 22:10:00"; st_JsonRoot["tszTimeEnd"] = "2023-01-13 22:10:02"; - TCHAR* ptszMsgBuffer = NULL; + XCHAR* ptszMsgBuffer = NULL; if (!APIClient_Http_Request(_T("POST"), lpszAPIUrl, st_JsonRoot.toStyledString().c_str(), &nCode, &ptszMsgBuffer, &nLen)) { printf("发送投递失败!\n"); @@ -103,12 +103,12 @@ int test_delete() { int nLen = 0; int nCode = 0; - LPCTSTR lpszAPIUrl = _T("http://127.0.0.1:5501/api?function=log¶ms1=3"); + LPCXSTR lpszAPIUrl = _T("http://127.0.0.1:5501/api?function=log¶ms1=3"); Json::Value st_JsonRoot; st_JsonRoot["tszTableName"] = lpszTableName; - TCHAR* ptszMsgBuffer = NULL; + XCHAR* ptszMsgBuffer = NULL; if (!APIClient_Http_Request(_T("POST"), lpszAPIUrl, st_JsonRoot.toStyledString().c_str(), &nCode, &ptszMsgBuffer, &nLen)) { printf("发送投递失败!\n"); diff --git a/XEngine_APPClient/APPClient_ZIPCodeExample/APPClient_ZIPCodeExample.cpp b/XEngine_APPClient/APPClient_ZIPCodeExample/APPClient_ZIPCodeExample.cpp index d52a3beb2656c53b120046b7d11df56843afa286..822f5c795b4d6dbbbe657dc9501177c52f0d8230 100644 --- a/XEngine_APPClient/APPClient_ZIPCodeExample/APPClient_ZIPCodeExample.cpp +++ b/XEngine_APPClient/APPClient_ZIPCodeExample/APPClient_ZIPCodeExample.cpp @@ -31,15 +31,15 @@ int main() #endif int nLen = 0; int nCode = 0; - TCHAR tszMsgBuffer[1024]; - LPCTSTR lpszCreateUrl = _T("http://127.0.0.1:5501/api?function=zipcode¶ms1=0"); + XCHAR tszMsgBuffer[1024]; + LPCXSTR lpszCreateUrl = _T("http://127.0.0.1:5501/api?function=zipcode¶ms1=0"); memset(tszMsgBuffer, '\0', sizeof(tszMsgBuffer)); Json::Value st_JsonRoot; st_JsonRoot["nZipCode"] = 100010; - TCHAR* ptszMsgBuffer = NULL; + XCHAR* ptszMsgBuffer = NULL; if (!APIClient_Http_Request(_T("POST"), lpszCreateUrl, st_JsonRoot.toStyledString().c_str(), &nCode, &ptszMsgBuffer, &nLen)) { printf("发送投递失败!\n"); diff --git a/XEngine_APPClient/VSCopy-x64.bat b/XEngine_APPClient/VSCopy-x64.bat index 834efdbc467a216ee0f09db1e64e843555795c56..d9a20dab1e71084351a94e716beae65e832abf11 100644 --- a/XEngine_APPClient/VSCopy-x64.bat +++ b/XEngine_APPClient/VSCopy-x64.bat @@ -3,6 +3,6 @@ copy /y "%XEngine_Lib64%\XEngine_Core\XEngine_OPenSsl.dll" "./" copy /y "%XEngine_Lib64%\XEngine_NetHelp\NetHelp_APIClient.dll" "./" copy /y "%XEngine_Lib64%\XEngine_HelpComponents\zlib1.dll" "./" -copy /y "%XEngine_Lib64%\XEngine_LibEx\libssl-1_1-x64.dll" "./" -copy /y "%XEngine_Lib64%\XEngine_LibEx\libcrypto-1_1-x64.dll" "./" +copy /y "%XEngine_Lib64%\XEngine_LibEx\libssl-3-x64.dll" "./" +copy /y "%XEngine_Lib64%\XEngine_LibEx\libcrypto-3-x64.dll" "./" copy /y "%XEngine_Lib64%\XEngine_LibEx\libcurl.dll" "./" \ No newline at end of file diff --git a/XEngine_APPClient/XEngine_APPClient.sln b/XEngine_APPClient/XEngine_APPClient.sln index 06fccb504e0f6e1fa1078f6762ab48c9d6ac5387..2a2662244615d0407208faee34731fb1d896919b 100644 --- a/XEngine_APPClient/XEngine_APPClient.sln +++ b/XEngine_APPClient/XEngine_APPClient.sln @@ -29,7 +29,11 @@ Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "APPClient_XLogExample", "AP EndProject Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "APPClient_QRExample", "APPClient_QRExample\APPClient_QRExample.vcxproj", "{2C532E9A-6F98-425D-8D44-DB3AE2AFDA5A}" EndProject -Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "APPClient_TestExample", "APPClient_TestExample\APPClient_TestExample.vcxproj", "{C5F955B3-2701-4C5A-8F41-92CE536B8913}" +Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "APPClient_SLinkExample", "APPClient_SLinkExample\APPClient_SLinkExample.vcxproj", "{F46EF40D-5BD6-4F75-AEC8-222A98A3DFC1}" +EndProject +Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "APPClient_DTestExample", "APPClient_DTestExample\APPClient_DTestExample.vcxproj", "{753B7188-3120-4283-959D-A2F95FA7C32A}" +EndProject +Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "APPClient_SocketExample", "APPClient_SocketExample\APPClient_SocketExample.vcxproj", "{5DF5E1D4-318C-468D-A427-88D873E095D3}" EndProject Global GlobalSection(SolutionConfigurationPlatforms) = preSolution @@ -143,14 +147,30 @@ Global {2C532E9A-6F98-425D-8D44-DB3AE2AFDA5A}.Release|x64.Build.0 = Release|x64 {2C532E9A-6F98-425D-8D44-DB3AE2AFDA5A}.Release|x86.ActiveCfg = Release|Win32 {2C532E9A-6F98-425D-8D44-DB3AE2AFDA5A}.Release|x86.Build.0 = Release|Win32 - {C5F955B3-2701-4C5A-8F41-92CE536B8913}.Debug|x64.ActiveCfg = Debug|x64 - {C5F955B3-2701-4C5A-8F41-92CE536B8913}.Debug|x64.Build.0 = Debug|x64 - {C5F955B3-2701-4C5A-8F41-92CE536B8913}.Debug|x86.ActiveCfg = Debug|Win32 - {C5F955B3-2701-4C5A-8F41-92CE536B8913}.Debug|x86.Build.0 = Debug|Win32 - {C5F955B3-2701-4C5A-8F41-92CE536B8913}.Release|x64.ActiveCfg = Release|x64 - {C5F955B3-2701-4C5A-8F41-92CE536B8913}.Release|x64.Build.0 = Release|x64 - {C5F955B3-2701-4C5A-8F41-92CE536B8913}.Release|x86.ActiveCfg = Release|Win32 - {C5F955B3-2701-4C5A-8F41-92CE536B8913}.Release|x86.Build.0 = Release|Win32 + {F46EF40D-5BD6-4F75-AEC8-222A98A3DFC1}.Debug|x64.ActiveCfg = Debug|x64 + {F46EF40D-5BD6-4F75-AEC8-222A98A3DFC1}.Debug|x64.Build.0 = Debug|x64 + {F46EF40D-5BD6-4F75-AEC8-222A98A3DFC1}.Debug|x86.ActiveCfg = Debug|Win32 + {F46EF40D-5BD6-4F75-AEC8-222A98A3DFC1}.Debug|x86.Build.0 = Debug|Win32 + {F46EF40D-5BD6-4F75-AEC8-222A98A3DFC1}.Release|x64.ActiveCfg = Release|x64 + {F46EF40D-5BD6-4F75-AEC8-222A98A3DFC1}.Release|x64.Build.0 = Release|x64 + {F46EF40D-5BD6-4F75-AEC8-222A98A3DFC1}.Release|x86.ActiveCfg = Release|Win32 + {F46EF40D-5BD6-4F75-AEC8-222A98A3DFC1}.Release|x86.Build.0 = Release|Win32 + {753B7188-3120-4283-959D-A2F95FA7C32A}.Debug|x64.ActiveCfg = Debug|x64 + {753B7188-3120-4283-959D-A2F95FA7C32A}.Debug|x64.Build.0 = Debug|x64 + {753B7188-3120-4283-959D-A2F95FA7C32A}.Debug|x86.ActiveCfg = Debug|Win32 + {753B7188-3120-4283-959D-A2F95FA7C32A}.Debug|x86.Build.0 = Debug|Win32 + {753B7188-3120-4283-959D-A2F95FA7C32A}.Release|x64.ActiveCfg = Release|x64 + {753B7188-3120-4283-959D-A2F95FA7C32A}.Release|x64.Build.0 = Release|x64 + {753B7188-3120-4283-959D-A2F95FA7C32A}.Release|x86.ActiveCfg = Release|Win32 + {753B7188-3120-4283-959D-A2F95FA7C32A}.Release|x86.Build.0 = Release|Win32 + {5DF5E1D4-318C-468D-A427-88D873E095D3}.Debug|x64.ActiveCfg = Debug|x64 + {5DF5E1D4-318C-468D-A427-88D873E095D3}.Debug|x64.Build.0 = Debug|x64 + {5DF5E1D4-318C-468D-A427-88D873E095D3}.Debug|x86.ActiveCfg = Debug|Win32 + {5DF5E1D4-318C-468D-A427-88D873E095D3}.Debug|x86.Build.0 = Debug|Win32 + {5DF5E1D4-318C-468D-A427-88D873E095D3}.Release|x64.ActiveCfg = Release|x64 + {5DF5E1D4-318C-468D-A427-88D873E095D3}.Release|x64.Build.0 = Release|x64 + {5DF5E1D4-318C-468D-A427-88D873E095D3}.Release|x86.ActiveCfg = Release|Win32 + {5DF5E1D4-318C-468D-A427-88D873E095D3}.Release|x86.Build.0 = Release|Win32 EndGlobalSection GlobalSection(SolutionProperties) = preSolution HideSolutionNode = FALSE diff --git a/XEngine_Docment/Docment_en.docx b/XEngine_Docment/Docment_en.docx index 7e53a8f39ef53d3b2a25a50b14e54e57e0cddeda..118856a3e7b6bad29becb396f81b3d19a49fbb69 100644 Binary files a/XEngine_Docment/Docment_en.docx and b/XEngine_Docment/Docment_en.docx differ diff --git a/XEngine_Docment/Docment_zh.docx b/XEngine_Docment/Docment_zh.docx index 57c0df5639148de3edb78b9ff99b6399752b26df..d433529801d6da82ac05a474d86a35d84d6705a5 100644 Binary files a/XEngine_Docment/Docment_zh.docx and b/XEngine_Docment/Docment_zh.docx differ diff --git a/XEngine_Release/XEngine_Config/XEngine_Config.json b/XEngine_Release/XEngine_Config/XEngine_Config.json index 57b29fae4747b00789d5302850a98284a6ef7bc9..c2ddfa7a65163776b1b776998e6689dc10c7a9f4 100644 --- a/XEngine_Release/XEngine_Config/XEngine_Config.json +++ b/XEngine_Release/XEngine_Config/XEngine_Config.json @@ -19,10 +19,10 @@ "LogLeave":32 }, "XSql":{ - "SQLAddr":"192.168.1.10", + "SQLAddr":"42.194.178.57", "SQLPort":3306, "SQLUser":"root", - "SQLPass":"123123aa" + "SQLPass":"111" }, "XApi":{ "tszBankUrl":"https://ccdcapi.alipay.com/validateAndCacheCardInfo.json?cardNo=%s&cardBinCheck=true", @@ -37,7 +37,12 @@ "tszConfigOPencc":"./XEngine_Config/XEngine_OPenccConfig.json", "tszConfigQRCode":"./XEngine_Config/XEngine_QRCode.json" }, + "XShortLink":{ + "tszHostUrl":"url.xyry.org", + "nHTTPCode":301 + }, "XVer":[ + "2.9.0.1001 Build20230421", "2.8.0.1001 Build20230207", "2.7.0.1001 Build20230117", "2.6.1.1001 Build20221213", diff --git a/XEngine_SQL/CreateDatabase.sql b/XEngine_SQL/CreateDatabase.sql index 24d91e0cad2efdd313f5989138b6f39b85b87e23..3572252900a30c647958efc1d6e7f1713751538d 100644 --- a/XEngine_SQL/CreateDatabase.sql +++ b/XEngine_SQL/CreateDatabase.sql @@ -3,5 +3,6 @@ */ -CREATE DATABASE `XEngine_APIInfo` DEFAULT CHARACTER SET UTF8MB4 COLLATE utf8mb4_general_ci; -CREATE DATABASE `XEngine_APILog` DEFAULT CHARACTER SET UTF8MB4 COLLATE utf8mb4_general_ci; \ No newline at end of file +CREATE DATABASE `XEngine_APIInfo` DEFAULT CHARACTER SET UTF8MB4 COLLATE utf8mb4_unicode_ci; +CREATE DATABASE `XEngine_APILog` DEFAULT CHARACTER SET UTF8MB4 COLLATE utf8mb4_unicode_ci; +CREATE DATABASE `XEngine_APISLink` DEFAULT CHARACTER SET UTF8MB4 COLLATE utf8mb4_unicode_ci; \ No newline at end of file diff --git a/XEngine_SQL/XEngine_APIInfo.sql b/XEngine_SQL/XEngine_APIInfo.sql index 838b6d12ce0f15c78b074409d493fd207bd3f5b3..abd484dc33fcb331de199ca09be0d2a72b3701d5 100644 --- a/XEngine_SQL/XEngine_APIInfo.sql +++ b/XEngine_SQL/XEngine_APIInfo.sql @@ -22,19 +22,19 @@ SET FOREIGN_KEY_CHECKS = 0; -- ---------------------------- DROP TABLE IF EXISTS `AdministrativeArea`; CREATE TABLE `AdministrativeArea` ( - `id` longtext CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NULL, - `pid` longtext CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NULL, - `shortname` longtext CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NULL, - `name` longtext CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NULL, - `merger_name` longtext CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NULL, - `level` longtext CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NULL, - `pinyin` longtext CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NULL, - `code` longtext CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NULL, - `zip_code` longtext CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NULL, - `first` longtext CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NULL, - `lng` longtext CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NULL, - `lat` longtext CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NULL -) ENGINE = InnoDB CHARACTER SET = utf8mb4 COLLATE = utf8mb4_general_ci ROW_FORMAT = Dynamic; + `id` longtext CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci NULL, + `pid` longtext CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci NULL, + `shortname` longtext CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci NULL, + `name` longtext CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci NULL, + `merger_name` longtext CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci NULL, + `level` longtext CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci NULL, + `pinyin` longtext CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci NULL, + `code` longtext CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci NULL, + `zip_code` longtext CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci NULL, + `first` longtext CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci NULL, + `lng` longtext CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci NULL, + `lat` longtext CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci NULL +) ENGINE = InnoDB CHARACTER SET = utf8mb4 COLLATE = utf8mb4_unicode_ci ROW_FORMAT = Dynamic; -- ---------------------------- -- Records of AdministrativeArea @@ -3795,10 +3795,10 @@ INSERT INTO `AdministrativeArea` VALUES ('3749', '0', '钓鱼岛', '钓鱼岛', DROP TABLE IF EXISTS `BankList`; CREATE TABLE `BankList` ( `ID` int NOT NULL AUTO_INCREMENT, - `tszBankAbridge` varchar(255) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NULL DEFAULT NULL, - `tszBankName` varchar(255) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NULL DEFAULT NULL, + `tszBankAbridge` varchar(255) CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci NULL DEFAULT NULL, + `tszBankName` varchar(255) CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci NULL DEFAULT NULL, PRIMARY KEY (`ID`) USING BTREE -) ENGINE = InnoDB AUTO_INCREMENT = 169 CHARACTER SET = utf8mb4 COLLATE = utf8mb4_general_ci ROW_FORMAT = Dynamic; +) ENGINE = InnoDB AUTO_INCREMENT = 169 CHARACTER SET = utf8mb4 COLLATE = utf8mb4_unicode_ci ROW_FORMAT = Dynamic; -- ---------------------------- -- Records of BankList @@ -3977,10 +3977,10 @@ INSERT INTO `BankList` VALUES (168, 'ZZBANK', '郑州银行'); -- ---------------------------- DROP TABLE IF EXISTS `RegionID`; CREATE TABLE `RegionID` ( - `code` longtext CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NULL, - `name` longtext CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NULL, - `parentCode` longtext CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NULL -) ENGINE = InnoDB CHARACTER SET = utf8mb4 COLLATE = utf8mb4_general_ci ROW_FORMAT = Dynamic; + `code` longtext CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci NULL, + `name` longtext CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci NULL, + `parentCode` longtext CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci NULL +) ENGINE = InnoDB CHARACTER SET = utf8mb4 COLLATE = utf8mb4_unicode_ci ROW_FORMAT = Dynamic; -- ---------------------------- -- Records of RegionID diff --git a/XEngine_SQL/XEngine_APILog.sql b/XEngine_SQL/XEngine_APILog.sql index e4142e4bda67f68d70e97ba6d2aa9d7fb929221b..06b13e5e5af6bb9b141b37a8423a1c9c1f9d7d1f 100644 --- a/XEngine_SQL/XEngine_APILog.sql +++ b/XEngine_SQL/XEngine_APILog.sql @@ -23,13 +23,13 @@ SET FOREIGN_KEY_CHECKS = 0; DROP TABLE IF EXISTS `XLogTemplate`; CREATE TABLE `XLogTemplate` ( `ID` int NOT NULL AUTO_INCREMENT, - `tszFileName` varchar(255) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NULL DEFAULT NULL COMMENT '文件名', - `tszFuncName` varchar(255) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NULL DEFAULT NULL COMMENT '函数名', + `tszFileName` varchar(255) CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci NULL DEFAULT NULL COMMENT '文件名', + `tszFuncName` varchar(255) CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci NULL DEFAULT NULL COMMENT '函数名', `nLogLine` int NULL DEFAULT NULL COMMENT '第几行', `nLogLevel` int NULL DEFAULT NULL COMMENT '打印级别', - `tszLogBuffer` varchar(8196) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NOT NULL COMMENT '日志信息', + `tszLogBuffer` varchar(8196) CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci NOT NULL COMMENT '日志信息', `tszLogTime` datetime NOT NULL COMMENT '日志时间', PRIMARY KEY (`ID`) USING BTREE -) ENGINE = InnoDB CHARACTER SET = utf8mb4 COLLATE = utf8mb4_general_ci ROW_FORMAT = Dynamic; +) ENGINE = InnoDB CHARACTER SET = utf8mb4 COLLATE = utf8mb4_unicode_ci ROW_FORMAT = Dynamic; SET FOREIGN_KEY_CHECKS = 1; diff --git a/XEngine_SQL/XEngine_APISLink.sql b/XEngine_SQL/XEngine_APISLink.sql new file mode 100644 index 0000000000000000000000000000000000000000..f2a0c2c4571d62ecb44d39149dcc6bf80422a74d --- /dev/null +++ b/XEngine_SQL/XEngine_APISLink.sql @@ -0,0 +1,34 @@ +/* + Navicat Premium Data Transfer + + Source Server : QCloud + Source Server Type : MySQL + Source Server Version : 80032 (8.0.32-0ubuntu0.22.04.2) + Source Host : 42.194.178.57:3306 + Source Schema : XEngine_APISLink + + Target Server Type : MySQL + Target Server Version : 80032 (8.0.32-0ubuntu0.22.04.2) + File Encoding : 65001 + + Date: 11/04/2023 13:54:53 +*/ + +SET NAMES utf8mb4; +SET FOREIGN_KEY_CHECKS = 0; + +-- ---------------------------- +-- Table structure for XEngine_ShortLink +-- ---------------------------- +DROP TABLE IF EXISTS `XEngine_ShortLink`; +CREATE TABLE `XEngine_ShortLink` ( + `ID` int NOT NULL AUTO_INCREMENT COMMENT 'ID', + `tszFullUrl` varchar(255) CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci NOT NULL COMMENT '要映射的URL', + `tszShortUrl` varchar(255) CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci NOT NULL COMMENT '短连接URL', + `tszKeyUrl` varchar(255) CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci NOT NULL COMMENT 'URLKey', + `tszMapUrl` varchar(255) CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci NOT NULL COMMENT '映射到的地址', + `tszCreateTime` datetime NOT NULL COMMENT '创建的时间', + PRIMARY KEY (`ID`) USING BTREE +) ENGINE = InnoDB AUTO_INCREMENT = 7 CHARACTER SET = utf8mb4 COLLATE = utf8mb4_unicode_ci ROW_FORMAT = Dynamic; + +SET FOREIGN_KEY_CHECKS = 1; diff --git a/XEngine_Source/Makefile b/XEngine_Source/Makefile index 623607837270820c255e5ed94092e1f980fdd514..9306b15dbd26f0ac24d2d3b78e0a8cf050404678 100644 --- a/XEngine_Source/Makefile +++ b/XEngine_Source/Makefile @@ -1,7 +1,7 @@ RELEASE = 0 UNICODE = 0 -#编译的选项参数 -FLAGS = RELEASE=$(RELEASE) +PLATFORM=linux +FLAGS= #要编译的模块 THIRDPART_MODULE_JSONCPP = ./XEngine_ThirdPart/jsoncpp @@ -32,41 +32,33 @@ XENGINE_MODULES = libjsoncpp.so \ MakeAll:$(XENGINE_MODULES) libjsoncpp.so: - make -C $(THIRDPART_MODULE_JSONCPP) $(FLAGS) + make -C $(THIRDPART_MODULE_JSONCPP) PLATFORM=$(PLATFORM) $(FLAGS) libXEngine_ModuleConfigure.so: - make -C $(MODULE_CONFIGURE_PATH) $(FLAGS) + make -C $(MODULE_CONFIGURE_PATH) PLATFORM=$(PLATFORM) $(FLAGS) libXEngine_ModuleDatabase.so: - make -C $(MODULE_DATABASE_PATH) $(FLAGS) + make -C $(MODULE_DATABASE_PATH) PLATFORM=$(PLATFORM) $(FLAGS) libXEngine_ModuleProtocol.so: - make -C $(MODULE_PROTOCOL_PATH) $(FLAGS) + make -C $(MODULE_PROTOCOL_PATH) PLATFORM=$(PLATFORM) $(FLAGS) libXEngine_ModuleHelp.so: - make -C $(MODULE_HELP_PATH) $(FLAGS) + make -C $(MODULE_HELP_PATH) PLATFORM=$(PLATFORM) $(FLAGS) libXEngine_ModulePlugin.so: - make -C $(MODULE_PLUGIN_PATH) $(FLAGS) + make -C $(MODULE_PLUGIN_PATH) PLATFORM=$(PLATFORM) $(FLAGS) libModulePlugin_Zodiac.so: - make -C $(PLUGIN_MODULE_ZODIAC) $(FLAGS) + make -C $(PLUGIN_MODULE_ZODIAC) PLATFORM=$(PLATFORM) $(FLAGS) libModulePlugin_Password.so: - make -C $(PLUGIN_MODULE_PASSWORD) $(FLAGS) + make -C $(PLUGIN_MODULE_PASSWORD) PLATFORM=$(PLATFORM) $(FLAGS) libModulePlugin_Timezone.so: - make -C $(PLUGIN_MODULE_TIMEZONE) $(FLAGS) + make -C $(PLUGIN_MODULE_TIMEZONE) PLATFORM=$(PLATFORM) $(FLAGS) libModulePlugin_BMIndex.so: - make -C $(PLUGIN_MODULE_BMINDEX) $(FLAGS) + make -C $(PLUGIN_MODULE_BMINDEX) PLATFORM=$(PLATFORM) $(FLAGS) libModulePlugin_Meter.so: - make -C $(PLUGIN_MODULE_METER) $(FLAGS) + make -C $(PLUGIN_MODULE_METER) PLATFORM=$(PLATFORM) $(FLAGS) libModulePlugin_Phone.so: - make -C $(PLUGIN_MODULE_PHONE) $(FLAGS) + make -C $(PLUGIN_MODULE_PHONE) PLATFORM=$(PLATFORM) $(FLAGS) libModulePlugin_IPAddr.so: - make -C $(PLUGIN_MODULE_IPADDR) $(FLAGS) + make -C $(PLUGIN_MODULE_IPADDR) PLATFORM=$(PLATFORM) $(FLAGS) XEngine_HttpApp.exe: - make -C $(APP_HTTP_PATH) $(FLAGS) - -SetFlags_Install: - export FLAGS=InstallAll -InstallAll:SetFlags_Install $(NETENGINE_LIB) - -SetFlags_Clean: - export FLAGS=CleanAll -CleanAll:SetFlags_Clean $(NETENGINE_LIB) + make -C $(APP_HTTP_PATH) PLATFORM=$(PLATFORM) $(FLAGS) diff --git a/XEngine_Source/VSCopy-Debug.bat b/XEngine_Source/VSCopy-Debug.bat index 538d0850fa927ed9d00d77eb1ed21fe09dfdebba..3db267917581523f4fb44edeb93dcc4b9dbac69d 100644 --- a/XEngine_Source/VSCopy-Debug.bat +++ b/XEngine_Source/VSCopy-Debug.bat @@ -12,4 +12,4 @@ copy /y "D:\XEngine\XEngine_SourceCode\Debug\HelpComponents_DataBase.dll" "./" copy /y "D:\XEngine\XEngine_SourceCode\Debug\HelpComponents_Packets.dll" "./" copy /y "D:\XEngine\XEngine_SourceCode\Debug\HelpComponents_XLog.dll" "./" copy /y "D:\XEngine\XEngine_SourceCode\Debug\HelpComponents_Authorize.dll" "./" -copy /y "D:\XEngine\XEngine_SourceCode\Debug\RfcComponents_HttpServer.dll" "./" \ No newline at end of file +copy /y "D:\XEngine\XEngine_SourceCode\Debug\RfcComponents_HttpProtocol.dll" "./" \ No newline at end of file diff --git a/XEngine_Source/VSCopy-x64.bat b/XEngine_Source/VSCopy-x64.bat index 1aa89b2411a98d06732053519ba7da9ade69dad5..e34bb7197088009e5259c0c61131b042331c1b7b 100644 --- a/XEngine_Source/VSCopy-x64.bat +++ b/XEngine_Source/VSCopy-x64.bat @@ -12,7 +12,7 @@ copy /y "%XEngine_Lib64%\XEngine_HelpComponents\HelpComponents_DataBase.dll" "./ copy /y "%XEngine_Lib64%\XEngine_HelpComponents\HelpComponents_Packets.dll" "./" copy /y "%XEngine_Lib64%\XEngine_HelpComponents\HelpComponents_XLog.dll" "./" copy /y "%XEngine_Lib64%\XEngine_HelpComponents\HelpComponents_Authorize.dll" "./" -copy /y "%XEngine_Lib64%\XEngine_RfcComponents\RfcComponents_HttpServer.dll" "./" +copy /y "%XEngine_Lib64%\XEngine_RfcComponents\RfcComponents_HttpProtocol.dll" "./" copy /y "%XEngine_Lib64%\XEngine_HelpComponents\bson-1.0.dll" "./" copy /y "%XEngine_Lib64%\XEngine_HelpComponents\mongoc-1.0.dll" "./" diff --git a/XEngine_Source/VSCopy-x86.bat b/XEngine_Source/VSCopy-x86.bat index 0cf9981ec76a68053b81ac9fa20ace557bf9beb6..d8730602ab6b16b6a2d6f9e22a9f4aaa92f689f8 100644 --- a/XEngine_Source/VSCopy-x86.bat +++ b/XEngine_Source/VSCopy-x86.bat @@ -12,7 +12,7 @@ copy /y "%XEngine_Lib32%\XEngine_HelpComponents\HelpComponents_DataBase.dll" "./ copy /y "%XEngine_Lib32%\XEngine_HelpComponents\HelpComponents_Packets.dll" "./" copy /y "%XEngine_Lib32%\XEngine_HelpComponents\HelpComponents_XLog.dll" "./" copy /y "%XEngine_Lib32%\XEngine_HelpComponents\HelpComponents_Authorize.dll" "./" -copy /y "%XEngine_Lib32%\XEngine_RfcComponents\RfcComponents_HttpServer.dll" "./" +copy /y "%XEngine_Lib32%\XEngine_RfcComponents\RfcComponents_HttpProtocol.dll" "./" copy /y "%XEngine_Lib32%\XEngine_HelpComponents\bson-1.0.dll" "./" copy /y "%XEngine_Lib32%\XEngine_HelpComponents\mongoc-1.0.dll" "./" diff --git a/XEngine_Source/XEngine_ModuleConfigure/Makefile b/XEngine_Source/XEngine_ModuleConfigure/Makefile index 8a6eb511f8ca6d2f903752244245905883624618..1584487efb688edc51bda320180cee942b68c87e 100644 --- a/XEngine_Source/XEngine_ModuleConfigure/Makefile +++ b/XEngine_Source/XEngine_ModuleConfigure/Makefile @@ -1,30 +1,23 @@ CC = g++ -Wall -std=c++17 -fPIC -SHAREFLAG = -shared -SHAREDLL = so +PLATFORM = linux +PLATVER = +PLATDIR = +FILEEXT = +LIBFLAG = RELEASE = 0 UNICODE = 0 -INCLUDE = -I ./ -I ../XEngine_ThirdPart/jsoncpp -LOADBIN = -L ../XEngine_ThirdPart/jsoncpp +LOADHDR = -I ./ -I ../XEngine_ThirdPart/jsoncpp +LOADSO = -L ../XEngine_ThirdPart/jsoncpp LIB = -ljsoncpp -LIBEX = -ldl -lpthread -LOADSO = -Wl,-rpath=./,--disable-new-dtags -LIBINCLUDE = ModuleConfigure_Json.o pch.o - -ifeq ($(shell uname),Darwin) - SHAREDLL = dylib - SHAREFLAG = -dynamiclib - LOADSO = -else - SHAREDLL = so - SHAREFLAG = -shared -endif +LIBEX = +OBJECTS = ModuleConfigure_Json.o pch.o ifeq ($(RELEASE),1) -FLAGS = -c -O2 +FLAGS = -c DEBUG = else -FLAGS = -c -DEBUG = -g +FLAGS = -c -lc_p +DEBUG = -g -pg endif ifeq ($(UNICODE),1) @@ -33,24 +26,45 @@ else UNICODE = endif +ifeq ($(PLATFORM),linux) + ifeq (/etc/redhat-release,$(wildcard /etc/redhat-release)) + PLATVER = -D __CENTOS__ + PLATDIR = XEngine_Linux/Centos + else + PLATVER = -D __UBUNTU__ + PLATDIR = XEngine_Linux/Ubuntu + endif + FILEEXT = so + LIBFLAG = -shared + LIBEX = -lpthread -lrt -ldl + LOADBIN = -Wl,-rpath=./,--disable-new-dtags +else ifeq ($(PLATFORM),mac) + CC += -Wno-deprecated-declarations + PLATVER = -D __MACOS__ + PLATDIR = XEngine_Mac + FILEEXT = dylib + LIBFLAG = -dynamiclib + LIBEX = -lpthread -ldl + LOADBIN = -Wl,-rpath,@loader_path/./ +endif -all:$(LIBINCLUDE) - $(CC) $(DEBUG) $(LIBINCLUDE) -o libXEngine_ModuleConfigure.$(SHAREDLL) $(SHAREFLAG) -fPIC $(LOADBIN) $(LIB) $(LIBEX) $(LOADSO) -ModuleConfigure_Json.o:./ModuleConfigure_Json/ModuleConfigure_Json.cpp - $(CC) $(DEBUG) $(FLAGS) $(UNICODE) $(INCLUDE) ./ModuleConfigure_Json/ModuleConfigure_Json.cpp +all:$(OBJECTS) + $(CC) $(DEBUG) $(OBJECTS) -o libXEngine_ModuleConfigure.$(FILEEXT) $(LIBFLAG) $(LIB) $(LIBEX) $(LOADSO) $(LOADBIN) +ModuleConfigure_Json.o:./ModuleConfigure_Json/ModuleConfigure_Json.cpp + $(CC) $(DEBUG) $(FLAGS) $(UNICODE) $(PLATVER) $(LOADHDR) ./ModuleConfigure_Json/ModuleConfigure_Json.cpp pch.o:./pch.cpp - $(CC) $(DEBUG) $(FLAGS) $(UNICODE) $(INCLUDE) ./pch.cpp + $(CC) $(DEBUG) $(FLAGS) $(UNICODE) $(PLATVER) $(LOADHDR) ./pch.cpp InstallAll:InstallSo -InstallSo:./libXEngine_ModuleConfigure.$(SHAREDLL) - cp ./libXEngine_ModuleConfigure.$(SHAREDLL) ../../XEngine_Release/libXEngine_ModuleConfigure.$(SHAREDLL) +InstallSo:./libXEngine_ModuleConfigure.$(FILEEXT) + cp ./libXEngine_ModuleConfigure.$(FILEEXT) ../../XEngine_Release/libXEngine_ModuleConfigure.$(FILEEXT) CleanAll:CleanObj CleanMk CleanObj: rm *.o CleanMk: - rm *.$(SHAREDLL) + rm *.$(FILEEXT) diff --git a/XEngine_Source/XEngine_ModuleConfigure/ModuleConfig_Define.h b/XEngine_Source/XEngine_ModuleConfigure/ModuleConfig_Define.h index f4291eef4f50490aa3e3f595d004875e4ea7d54f..70a67d698bc2a0f3a87cb68d2117ae972a288380 100644 --- a/XEngine_Source/XEngine_ModuleConfigure/ModuleConfig_Define.h +++ b/XEngine_Source/XEngine_ModuleConfigure/ModuleConfig_Define.h @@ -15,8 +15,8 @@ ////////////////////////////////////////////////////////////////////////// typedef struct { - TCHAR tszIPAddr[128]; //本机IP地址,根据需要配置 - BOOL bDeamon; //是否以守护进程启动,LINUX有效 + XCHAR tszIPAddr[128]; //本机IP地址,根据需要配置 + bool bDeamon; //是否以守护进程启动,LINUX有效 int nHttpPort; //HTTP服务端口 struct { @@ -39,29 +39,34 @@ typedef struct }st_XLog; struct { - TCHAR tszSQLAddr[128]; //MYSQL数据库地址 - TCHAR tszSQLUser[128]; //数据库用户名 - TCHAR tszSQLPass[128]; //数据库密码 - TCHAR tszDBName[128]; //数据库表明 + XCHAR tszSQLAddr[128]; //MYSQL数据库地址 + XCHAR tszSQLUser[128]; //数据库用户名 + XCHAR tszSQLPass[128]; //数据库密码 + XCHAR tszDBName[128]; //数据库表明 int nSQLPort; //端口 }st_XSql; struct { - TCHAR tszBankUrl[MAX_PATH]; //银行卡验证地址 - TCHAR tszTranslationUrl[MAX_PATH]; //翻译接口 + XCHAR tszBankUrl[MAX_PATH]; //银行卡验证地址 + XCHAR tszTranslationUrl[MAX_PATH]; //翻译接口 }st_XApi; struct { - BOOL bEnable; //是否启用 - TCHAR tszPluginLib[MAX_PATH]; //配置文件地址 - TCHAR tszPluginLua[MAX_PATH]; //配置文件地址 + bool bEnable; //是否启用 + XCHAR tszPluginLib[MAX_PATH]; //配置文件地址 + XCHAR tszPluginLua[MAX_PATH]; //配置文件地址 }st_XPlugin; struct { - TCHAR tszConfigOPencc[MAX_PATH]; //OPENCC配置地址 - TCHAR tszConfigQRCode[MAX_PATH]; //二维码配置地址 + XCHAR tszConfigOPencc[MAX_PATH]; //OPENCC配置地址 + XCHAR tszConfigQRCode[MAX_PATH]; //二维码配置地址 }st_XConfig; struct + { + XCHAR tszHostUrl[MAX_PATH]; //主机地址 + int nHTTPCode; //转发模式,301 永久,302 临时 + }st_XShortLink; + struct { list* pStl_ListVer; }st_XVer; @@ -69,35 +74,35 @@ typedef struct //OPENCC语言转换配置文件 typedef struct { - TCHAR tszFiles2t[MAX_PATH]; - TCHAR tszFilet2s[MAX_PATH]; - TCHAR tszFiles2tw[MAX_PATH]; - TCHAR tszFiletw2s[MAX_PATH]; - TCHAR tszFiles2hk[MAX_PATH]; - TCHAR tszFilehk2s[MAX_PATH]; - TCHAR tszFiles2twp[MAX_PATH]; - TCHAR tszFiletw2sp[MAX_PATH]; - TCHAR tszFilet2tw[MAX_PATH]; - TCHAR tszFilehk2t[MAX_PATH]; - TCHAR tszFilet2hk[MAX_PATH]; - TCHAR tszFilet2jp[MAX_PATH]; - TCHAR tszFilejp2t[MAX_PATH]; - TCHAR tszFiletw2t[MAX_PATH]; + XCHAR tszFiles2t[MAX_PATH]; + XCHAR tszFilet2s[MAX_PATH]; + XCHAR tszFiles2tw[MAX_PATH]; + XCHAR tszFiletw2s[MAX_PATH]; + XCHAR tszFiles2hk[MAX_PATH]; + XCHAR tszFilehk2s[MAX_PATH]; + XCHAR tszFiles2twp[MAX_PATH]; + XCHAR tszFiletw2sp[MAX_PATH]; + XCHAR tszFilet2tw[MAX_PATH]; + XCHAR tszFilehk2t[MAX_PATH]; + XCHAR tszFilet2hk[MAX_PATH]; + XCHAR tszFilet2jp[MAX_PATH]; + XCHAR tszFilejp2t[MAX_PATH]; + XCHAR tszFiletw2t[MAX_PATH]; }XENGINE_OPENCCCONFIG; //二维码模型库 typedef struct { - TCHAR tszModelDetect[MAX_PATH]; - TCHAR tszModelSr[MAX_PATH]; - TCHAR tszProtoDetect[MAX_PATH]; - TCHAR tszProtoSr[MAX_PATH]; + XCHAR tszModelDetect[MAX_PATH]; + XCHAR tszModelSr[MAX_PATH]; + XCHAR tszProtoDetect[MAX_PATH]; + XCHAR tszProtoSr[MAX_PATH]; }XENGINE_QRCODECONFIG; //插件 typedef struct { - BOOL bEnable; - TCHAR tszPluginMethod[MAX_PATH]; - TCHAR tszPluginFile[MAX_PATH]; + bool bEnable; + XCHAR tszPluginMethod[MAX_PATH]; + XCHAR tszPluginFile[MAX_PATH]; }XENGINE_PLUGININFO; typedef struct { @@ -106,10 +111,10 @@ typedef struct ////////////////////////////////////////////////////////////////////////// typedef struct { - BOOL bEnable; - TCHAR tszOPMethod[MAX_PATH]; - TCHAR tszOPNote[MAX_PATH]; - TCHAR tszOPExample[MAX_PATH]; + bool bEnable; + XCHAR tszOPMethod[MAX_PATH]; + XCHAR tszOPNote[MAX_PATH]; + XCHAR tszOPExample[MAX_PATH]; }XENGINE_OPTIONINFO; typedef struct { @@ -118,7 +123,7 @@ typedef struct ////////////////////////////////////////////////////////////////////////// // 导出函数定义 ////////////////////////////////////////////////////////////////////////// -extern "C" DWORD ModuleConfigure_GetLastError(int* pInt_ErrorCode = NULL); +extern "C" XLONG ModuleConfigure_GetLastError(int* pInt_ErrorCode = NULL); /************************************************************************/ /* 文件配置读取 */ /************************************************************************/ @@ -140,7 +145,7 @@ extern "C" DWORD ModuleConfigure_GetLastError(int* pInt_ErrorCode = NULL); 意思:是否成功 备注: *********************************************************************/ -extern "C" BOOL ModuleConfigure_Json_File(LPCTSTR lpszConfigFile, XENGINE_SERVICECONFIG* pSt_ServerConfig); +extern "C" bool ModuleConfigure_Json_File(LPCXSTR lpszConfigFile, XENGINE_SERVICECONFIG* pSt_ServerConfig); /******************************************************************** 函数名称:ModuleConfigure_Json_OPenccFile 函数功能:读取JSON配置文件 @@ -159,7 +164,7 @@ extern "C" BOOL ModuleConfigure_Json_File(LPCTSTR lpszConfigFile, XENGINE_SERVIC 意思:是否成功 备注: *********************************************************************/ -extern "C" BOOL ModuleConfigure_Json_OPenccFile(LPCTSTR lpszConfigFile, XENGINE_OPENCCCONFIG* pSt_OPenccConfig); +extern "C" bool ModuleConfigure_Json_OPenccFile(LPCXSTR lpszConfigFile, XENGINE_OPENCCCONFIG* pSt_OPenccConfig); /******************************************************************** 函数名称:ModuleConfigure_Json_QRCodeFile 函数功能:读取JSON配置文件 @@ -178,7 +183,7 @@ extern "C" BOOL ModuleConfigure_Json_OPenccFile(LPCTSTR lpszConfigFile, XENGINE_ 意思:是否成功 备注: *********************************************************************/ -extern "C" BOOL ModuleConfigure_Json_QRCodeFile(LPCTSTR lpszConfigFile, XENGINE_QRCODECONFIG* pSt_QRCodeConfig); +extern "C" bool ModuleConfigure_Json_QRCodeFile(LPCXSTR lpszConfigFile, XENGINE_QRCODECONFIG* pSt_QRCodeConfig); /******************************************************************** 函数名称:ModuleConfigure_Json_PluginFile 函数功能:读取JSON配置文件 @@ -197,4 +202,4 @@ extern "C" BOOL ModuleConfigure_Json_QRCodeFile(LPCTSTR lpszConfigFile, XENGINE_ 意思:是否成功 备注: *********************************************************************/ -extern "C" BOOL ModuleConfigure_Json_PluginFile(LPCTSTR lpszConfigFile, XENGINE_PLUGINCONFIG* pSt_PluginConfig); \ No newline at end of file +extern "C" bool ModuleConfigure_Json_PluginFile(LPCXSTR lpszConfigFile, XENGINE_PLUGINCONFIG* pSt_PluginConfig); \ No newline at end of file diff --git a/XEngine_Source/XEngine_ModuleConfigure/ModuleConfig_Error.h b/XEngine_Source/XEngine_ModuleConfigure/ModuleConfig_Error.h index f771ce0578fb6f9ddbbff38fd15199424c796012..8ecffcbd9298be40a93e0400d651422cc475c60a 100644 --- a/XEngine_Source/XEngine_ModuleConfigure/ModuleConfig_Error.h +++ b/XEngine_Source/XEngine_ModuleConfigure/ModuleConfig_Error.h @@ -15,13 +15,14 @@ #define ERROR_MODULE_CONFIGURE_JSON_PARSE 0xA0003 //解析JSON失败 #define ERROR_MODULE_CONFIGURE_JSON_XMAX 0xA0004 //读取XMAX配置失败 #define ERROR_MODULE_CONFIGURE_JSON_XTIME 0xA0005 //读取XTIME配置失败 -#define ERROR_MODULE_CONFIGURE_JSON_XLOG 0xA0006 //读取XLOG配置失败 +#define ERROR_MODULE_CONFIGURE_JSON_XLOG 0xA0006 //读取XHANDLE配置失败 #define ERROR_MODULE_CONFIGURE_JSON_XDB 0xA0007 //数据库配置错误 #define ERROR_MODULE_CONFIGURE_JSON_XPLUGIN 0xA0008 //插件配置错误 #define ERROR_MODULE_CONFIGURE_JSON_XVER 0xA0009 //版本配置文件读取错误 #define ERROR_MODULE_CONFIGURE_JSON_MALLOC 0xA000A //申请内存失败 #define ERROR_MODULE_CONFIGURE_JSON_XAPI 0xA000B //API配置失败 #define ERROR_MODULE_CONFIGURE_JSON_XCONFIG 0xA000C //配置文件配置加载失败 +#define ERROR_MODULE_CONFIGURE_JSON_XSLINK 0xA000D //短连接配置错误 ////////////////////////////////////////////////////////////////////////// #define ERROR_MODULE_CONFIGURE_FILE_PARAMENT 0xA1001 //参数错误 #define ERROR_MODULE_CONFIGURE_FILE_OPENFILE 0xA1002 //打开文件失败 diff --git a/XEngine_Source/XEngine_ModuleConfigure/ModuleConfigure_Json/ModuleConfigure_Json.cpp b/XEngine_Source/XEngine_ModuleConfigure/ModuleConfigure_Json/ModuleConfigure_Json.cpp index 854a6160ba0734da43d6bcce9735b25eb6ef0ab9..fc28b6004c9b4afaf4277fea7de62af442519782 100644 --- a/XEngine_Source/XEngine_ModuleConfigure/ModuleConfigure_Json/ModuleConfigure_Json.cpp +++ b/XEngine_Source/XEngine_ModuleConfigure/ModuleConfigure_Json/ModuleConfigure_Json.cpp @@ -40,29 +40,29 @@ CModuleConfigure_Json::~CModuleConfigure_Json() 意思:是否成功 备注: *********************************************************************/ -BOOL CModuleConfigure_Json::ModuleConfigure_Json_File(LPCTSTR lpszConfigFile, XENGINE_SERVICECONFIG* pSt_ServerConfig) +bool CModuleConfigure_Json::ModuleConfigure_Json_File(LPCXSTR lpszConfigFile, XENGINE_SERVICECONFIG* pSt_ServerConfig) { - Config_IsErrorOccur = FALSE; + Config_IsErrorOccur = false; if ((NULL == lpszConfigFile) || (NULL == pSt_ServerConfig)) { - Config_IsErrorOccur = TRUE; + Config_IsErrorOccur = true; Config_dwErrorCode = ERROR_MODULE_CONFIGURE_JSON_PARAMENT; - return FALSE; + return false; } Json::Value st_JsonRoot; JSONCPP_STRING st_JsonError; Json::CharReaderBuilder st_JsonBuilder; //读取配置文件所有内容到缓冲区 - FILE* pSt_File = _tfopen(lpszConfigFile, _T("rb")); + FILE* pSt_File = _xtfopen(lpszConfigFile, _X("rb")); if (NULL == pSt_File) { - Config_IsErrorOccur = TRUE; + Config_IsErrorOccur = true; Config_dwErrorCode = ERROR_MODULE_CONFIGURE_JSON_OPENFILE; - return FALSE; + return false; } size_t nCount = 0; - TCHAR tszMsgBuffer[4096]; + XCHAR tszMsgBuffer[4096]; while (1) { size_t nRet = fread(tszMsgBuffer + nCount, 1, 2048, pSt_File); @@ -77,19 +77,19 @@ BOOL CModuleConfigure_Json::ModuleConfigure_Json_File(LPCTSTR lpszConfigFile, XE std::unique_ptr const pSt_JsonReader(st_JsonBuilder.newCharReader()); if (!pSt_JsonReader->parse(tszMsgBuffer, tszMsgBuffer + nCount, &st_JsonRoot, &st_JsonError)) { - Config_IsErrorOccur = TRUE; + Config_IsErrorOccur = true; Config_dwErrorCode = ERROR_MODULE_CONFIGURE_JSON_PARSE; - return FALSE; + return false; } - _tcscpy(pSt_ServerConfig->tszIPAddr, st_JsonRoot["tszIPAddr"].asCString()); + _tcsxcpy(pSt_ServerConfig->tszIPAddr, st_JsonRoot["tszIPAddr"].asCString()); pSt_ServerConfig->bDeamon = st_JsonRoot["bDeamon"].asInt(); pSt_ServerConfig->nHttpPort = st_JsonRoot["nHttpPort"].asInt(); if (st_JsonRoot["XMax"].empty() || (4 != st_JsonRoot["XMax"].size())) { - Config_IsErrorOccur = TRUE; + Config_IsErrorOccur = true; Config_dwErrorCode = ERROR_MODULE_CONFIGURE_JSON_XMAX; - return FALSE; + return false; } Json::Value st_JsonXMax = st_JsonRoot["XMax"]; pSt_ServerConfig->st_XMax.nMaxClient = st_JsonXMax["nMaxClient"].asInt(); @@ -99,9 +99,9 @@ BOOL CModuleConfigure_Json::ModuleConfigure_Json_File(LPCTSTR lpszConfigFile, XE if (st_JsonRoot["XTime"].empty() || (3 != st_JsonRoot["XTime"].size())) { - Config_IsErrorOccur = TRUE; + Config_IsErrorOccur = true; Config_dwErrorCode = ERROR_MODULE_CONFIGURE_JSON_XTIME; - return FALSE; + return false; } Json::Value st_JsonXTime = st_JsonRoot["XTime"]; pSt_ServerConfig->st_XTime.nTimeCheck = st_JsonXTime["nTimeCheck"].asInt(); @@ -110,9 +110,9 @@ BOOL CModuleConfigure_Json::ModuleConfigure_Json_File(LPCTSTR lpszConfigFile, XE if (st_JsonRoot["XLog"].empty() || (3 != st_JsonRoot["XLog"].size())) { - Config_IsErrorOccur = TRUE; + Config_IsErrorOccur = true; Config_dwErrorCode = ERROR_MODULE_CONFIGURE_JSON_XLOG; - return FALSE; + return false; } Json::Value st_JsonXLog = st_JsonRoot["XLog"]; pSt_ServerConfig->st_XLog.nMaxSize = st_JsonXLog["MaxSize"].asInt(); @@ -121,66 +121,76 @@ BOOL CModuleConfigure_Json::ModuleConfigure_Json_File(LPCTSTR lpszConfigFile, XE if (st_JsonRoot["XApi"].empty() || (2 != st_JsonRoot["XApi"].size())) { - Config_IsErrorOccur = TRUE; + Config_IsErrorOccur = true; Config_dwErrorCode = ERROR_MODULE_CONFIGURE_JSON_XAPI; - return FALSE; + return false; } Json::Value st_JsonXApi = st_JsonRoot["XApi"]; - _tcscpy(pSt_ServerConfig->st_XApi.tszBankUrl, st_JsonXApi["tszBankUrl"].asCString()); - _tcscpy(pSt_ServerConfig->st_XApi.tszTranslationUrl, st_JsonXApi["tszTranslationUrl"].asCString()); + _tcsxcpy(pSt_ServerConfig->st_XApi.tszBankUrl, st_JsonXApi["tszBankUrl"].asCString()); + _tcsxcpy(pSt_ServerConfig->st_XApi.tszTranslationUrl, st_JsonXApi["tszTranslationUrl"].asCString()); if (st_JsonRoot["XSql"].empty() || (4 != st_JsonRoot["XSql"].size())) { - Config_IsErrorOccur = TRUE; + Config_IsErrorOccur = true; Config_dwErrorCode = ERROR_MODULE_CONFIGURE_JSON_XDB; - return FALSE; + return false; } Json::Value st_JsonXSql = st_JsonRoot["XSql"]; pSt_ServerConfig->st_XSql.nSQLPort = st_JsonXSql["SQLPort"].asInt(); - _tcscpy(pSt_ServerConfig->st_XSql.tszSQLAddr, st_JsonXSql["SQLAddr"].asCString()); - _tcscpy(pSt_ServerConfig->st_XSql.tszSQLUser, st_JsonXSql["SQLUser"].asCString()); - _tcscpy(pSt_ServerConfig->st_XSql.tszSQLPass, st_JsonXSql["SQLPass"].asCString()); + _tcsxcpy(pSt_ServerConfig->st_XSql.tszSQLAddr, st_JsonXSql["SQLAddr"].asCString()); + _tcsxcpy(pSt_ServerConfig->st_XSql.tszSQLUser, st_JsonXSql["SQLUser"].asCString()); + _tcsxcpy(pSt_ServerConfig->st_XSql.tszSQLPass, st_JsonXSql["SQLPass"].asCString()); if (st_JsonRoot["XPlugin"].empty() || (3 != st_JsonRoot["XPlugin"].size())) { - Config_IsErrorOccur = TRUE; + Config_IsErrorOccur = true; Config_dwErrorCode = ERROR_MODULE_CONFIGURE_JSON_XPLUGIN; - return FALSE; + return false; } Json::Value st_JsonXPlugin = st_JsonRoot["XPlugin"]; pSt_ServerConfig->st_XPlugin.bEnable = st_JsonXPlugin["bEnable"].asBool(); - _tcscpy(pSt_ServerConfig->st_XPlugin.tszPluginLib, st_JsonXPlugin["tszPluginLib"].asCString()); - _tcscpy(pSt_ServerConfig->st_XPlugin.tszPluginLua, st_JsonXPlugin["tszPluginLua"].asCString()); + _tcsxcpy(pSt_ServerConfig->st_XPlugin.tszPluginLib, st_JsonXPlugin["tszPluginLib"].asCString()); + _tcsxcpy(pSt_ServerConfig->st_XPlugin.tszPluginLua, st_JsonXPlugin["tszPluginLua"].asCString()); if (st_JsonRoot["XConfig"].empty() || (2 != st_JsonRoot["XConfig"].size())) { - Config_IsErrorOccur = TRUE; + Config_IsErrorOccur = true; Config_dwErrorCode = ERROR_MODULE_CONFIGURE_JSON_XCONFIG; - return FALSE; + return false; } Json::Value st_JsonXConfig = st_JsonRoot["XConfig"]; - _tcscpy(pSt_ServerConfig->st_XConfig.tszConfigOPencc, st_JsonXConfig["tszConfigOPencc"].asCString()); - _tcscpy(pSt_ServerConfig->st_XConfig.tszConfigQRCode, st_JsonXConfig["tszConfigQRCode"].asCString()); + _tcsxcpy(pSt_ServerConfig->st_XConfig.tszConfigOPencc, st_JsonXConfig["tszConfigOPencc"].asCString()); + _tcsxcpy(pSt_ServerConfig->st_XConfig.tszConfigQRCode, st_JsonXConfig["tszConfigQRCode"].asCString()); + + if (st_JsonRoot["XShortLink"].empty() || (2 != st_JsonRoot["XShortLink"].size())) + { + Config_IsErrorOccur = true; + Config_dwErrorCode = ERROR_MODULE_CONFIGURE_JSON_XSLINK; + return false; + } + Json::Value st_JsonXShort = st_JsonRoot["XShortLink"]; + _tcsxcpy(pSt_ServerConfig->st_XShortLink.tszHostUrl, st_JsonXShort["tszHostUrl"].asCString()); + pSt_ServerConfig->st_XShortLink.nHTTPCode = st_JsonXShort["nHTTPCode"].asInt(); if (st_JsonRoot["XVer"].empty()) { - Config_IsErrorOccur = TRUE; + Config_IsErrorOccur = true; Config_dwErrorCode = ERROR_MODULE_CONFIGURE_JSON_XVER; - return FALSE; + return false; } pSt_ServerConfig->st_XVer.pStl_ListVer = new list; if (NULL == pSt_ServerConfig->st_XVer.pStl_ListVer) { - Config_IsErrorOccur = TRUE; + Config_IsErrorOccur = true; Config_dwErrorCode = ERROR_MODULE_CONFIGURE_JSON_MALLOC; - return FALSE; + return false; } Json::Value st_JsonXVer = st_JsonRoot["XVer"]; for (unsigned int i = 0; i < st_JsonXVer.size(); i++) { pSt_ServerConfig->st_XVer.pStl_ListVer->push_back(st_JsonXVer[i].asCString()); } - return TRUE; + return true; } /******************************************************************** 函数名称:ModuleConfigure_Json_OPenccFile @@ -200,29 +210,29 @@ BOOL CModuleConfigure_Json::ModuleConfigure_Json_File(LPCTSTR lpszConfigFile, XE 意思:是否成功 备注: *********************************************************************/ -BOOL CModuleConfigure_Json::ModuleConfigure_Json_OPenccFile(LPCTSTR lpszConfigFile, XENGINE_OPENCCCONFIG* pSt_OPenccConfig) +bool CModuleConfigure_Json::ModuleConfigure_Json_OPenccFile(LPCXSTR lpszConfigFile, XENGINE_OPENCCCONFIG* pSt_OPenccConfig) { - Config_IsErrorOccur = FALSE; + Config_IsErrorOccur = false; if ((NULL == lpszConfigFile) || (NULL == pSt_OPenccConfig)) { - Config_IsErrorOccur = TRUE; + Config_IsErrorOccur = true; Config_dwErrorCode = ERROR_MODULE_CONFIGURE_JSON_PARAMENT; - return FALSE; + return false; } Json::Value st_JsonRoot; JSONCPP_STRING st_JsonError; Json::CharReaderBuilder st_JsonBuilder; //读取配置文件所有内容到缓冲区 - FILE* pSt_File = _tfopen(lpszConfigFile, _T("rb")); + FILE* pSt_File = _xtfopen(lpszConfigFile, _X("rb")); if (NULL == pSt_File) { - Config_IsErrorOccur = TRUE; + Config_IsErrorOccur = true; Config_dwErrorCode = ERROR_MODULE_CONFIGURE_JSON_OPENFILE; - return FALSE; + return false; } size_t nCount = 0; - TCHAR tszMsgBuffer[4096]; + XCHAR tszMsgBuffer[4096]; while (1) { size_t nRet = fread(tszMsgBuffer + nCount, 1, 2048, pSt_File); @@ -237,25 +247,25 @@ BOOL CModuleConfigure_Json::ModuleConfigure_Json_OPenccFile(LPCTSTR lpszConfigFi std::unique_ptr const pSt_JsonReader(st_JsonBuilder.newCharReader()); if (!pSt_JsonReader->parse(tszMsgBuffer, tszMsgBuffer + nCount, &st_JsonRoot, &st_JsonError)) { - Config_IsErrorOccur = TRUE; + Config_IsErrorOccur = true; Config_dwErrorCode = ERROR_MODULE_CONFIGURE_JSON_PARSE; - return FALSE; + return false; } - _tcscpy(pSt_OPenccConfig->tszFiles2t, st_JsonRoot["tszFiles2t"].asCString()); - _tcscpy(pSt_OPenccConfig->tszFilet2s, st_JsonRoot["tszFilet2s"].asCString()); - _tcscpy(pSt_OPenccConfig->tszFiles2tw, st_JsonRoot["tszFiles2tw"].asCString()); - _tcscpy(pSt_OPenccConfig->tszFiletw2s, st_JsonRoot["tszFiletw2s"].asCString()); - _tcscpy(pSt_OPenccConfig->tszFiles2hk, st_JsonRoot["tszFiles2hk"].asCString()); - _tcscpy(pSt_OPenccConfig->tszFilehk2s, st_JsonRoot["tszFilehk2s"].asCString()); - _tcscpy(pSt_OPenccConfig->tszFiles2twp, st_JsonRoot["tszFiles2twp"].asCString()); - _tcscpy(pSt_OPenccConfig->tszFiletw2sp, st_JsonRoot["tszFiletw2sp"].asCString()); - _tcscpy(pSt_OPenccConfig->tszFilet2tw, st_JsonRoot["tszFilet2tw"].asCString()); - _tcscpy(pSt_OPenccConfig->tszFilehk2t, st_JsonRoot["tszFilehk2t"].asCString()); - _tcscpy(pSt_OPenccConfig->tszFilet2hk, st_JsonRoot["tszFilet2hk"].asCString()); - _tcscpy(pSt_OPenccConfig->tszFilet2jp, st_JsonRoot["tszFilet2jp"].asCString()); - _tcscpy(pSt_OPenccConfig->tszFilejp2t, st_JsonRoot["tszFilejp2t"].asCString()); - _tcscpy(pSt_OPenccConfig->tszFiletw2t, st_JsonRoot["tszFiletw2t"].asCString()); - return TRUE; + _tcsxcpy(pSt_OPenccConfig->tszFiles2t, st_JsonRoot["tszFiles2t"].asCString()); + _tcsxcpy(pSt_OPenccConfig->tszFilet2s, st_JsonRoot["tszFilet2s"].asCString()); + _tcsxcpy(pSt_OPenccConfig->tszFiles2tw, st_JsonRoot["tszFiles2tw"].asCString()); + _tcsxcpy(pSt_OPenccConfig->tszFiletw2s, st_JsonRoot["tszFiletw2s"].asCString()); + _tcsxcpy(pSt_OPenccConfig->tszFiles2hk, st_JsonRoot["tszFiles2hk"].asCString()); + _tcsxcpy(pSt_OPenccConfig->tszFilehk2s, st_JsonRoot["tszFilehk2s"].asCString()); + _tcsxcpy(pSt_OPenccConfig->tszFiles2twp, st_JsonRoot["tszFiles2twp"].asCString()); + _tcsxcpy(pSt_OPenccConfig->tszFiletw2sp, st_JsonRoot["tszFiletw2sp"].asCString()); + _tcsxcpy(pSt_OPenccConfig->tszFilet2tw, st_JsonRoot["tszFilet2tw"].asCString()); + _tcsxcpy(pSt_OPenccConfig->tszFilehk2t, st_JsonRoot["tszFilehk2t"].asCString()); + _tcsxcpy(pSt_OPenccConfig->tszFilet2hk, st_JsonRoot["tszFilet2hk"].asCString()); + _tcsxcpy(pSt_OPenccConfig->tszFilet2jp, st_JsonRoot["tszFilet2jp"].asCString()); + _tcsxcpy(pSt_OPenccConfig->tszFilejp2t, st_JsonRoot["tszFilejp2t"].asCString()); + _tcsxcpy(pSt_OPenccConfig->tszFiletw2t, st_JsonRoot["tszFiletw2t"].asCString()); + return true; } /******************************************************************** 函数名称:ModuleConfigure_Json_QRCodeFile @@ -275,29 +285,29 @@ BOOL CModuleConfigure_Json::ModuleConfigure_Json_OPenccFile(LPCTSTR lpszConfigFi 意思:是否成功 备注: *********************************************************************/ -BOOL CModuleConfigure_Json::ModuleConfigure_Json_QRCodeFile(LPCTSTR lpszConfigFile, XENGINE_QRCODECONFIG* pSt_QRCodeConfig) +bool CModuleConfigure_Json::ModuleConfigure_Json_QRCodeFile(LPCXSTR lpszConfigFile, XENGINE_QRCODECONFIG* pSt_QRCodeConfig) { - Config_IsErrorOccur = FALSE; + Config_IsErrorOccur = false; if ((NULL == lpszConfigFile) || (NULL == pSt_QRCodeConfig)) { - Config_IsErrorOccur = TRUE; + Config_IsErrorOccur = true; Config_dwErrorCode = ERROR_MODULE_CONFIGURE_JSON_PARAMENT; - return FALSE; + return false; } Json::Value st_JsonRoot; JSONCPP_STRING st_JsonError; Json::CharReaderBuilder st_JsonBuilder; //读取配置文件所有内容到缓冲区 - FILE* pSt_File = _tfopen(lpszConfigFile, _T("rb")); + FILE* pSt_File = _xtfopen(lpszConfigFile, _X("rb")); if (NULL == pSt_File) { - Config_IsErrorOccur = TRUE; + Config_IsErrorOccur = true; Config_dwErrorCode = ERROR_MODULE_CONFIGURE_JSON_OPENFILE; - return FALSE; + return false; } size_t nCount = 0; - TCHAR tszMsgBuffer[4096]; + XCHAR tszMsgBuffer[4096]; while (1) { size_t nRet = fread(tszMsgBuffer + nCount, 1, 2048, pSt_File); @@ -312,15 +322,15 @@ BOOL CModuleConfigure_Json::ModuleConfigure_Json_QRCodeFile(LPCTSTR lpszConfigFi std::unique_ptr const pSt_JsonReader(st_JsonBuilder.newCharReader()); if (!pSt_JsonReader->parse(tszMsgBuffer, tszMsgBuffer + nCount, &st_JsonRoot, &st_JsonError)) { - Config_IsErrorOccur = TRUE; + Config_IsErrorOccur = true; Config_dwErrorCode = ERROR_MODULE_CONFIGURE_JSON_PARSE; - return FALSE; + return false; } - _tcscpy(pSt_QRCodeConfig->tszModelDetect, st_JsonRoot["tszModelDetect"].asCString()); - _tcscpy(pSt_QRCodeConfig->tszModelSr, st_JsonRoot["tszModelSr"].asCString()); - _tcscpy(pSt_QRCodeConfig->tszProtoDetect, st_JsonRoot["tszProtoDetect"].asCString()); - _tcscpy(pSt_QRCodeConfig->tszProtoSr, st_JsonRoot["tszProtoSr"].asCString()); - return TRUE; + _tcsxcpy(pSt_QRCodeConfig->tszModelDetect, st_JsonRoot["tszModelDetect"].asCString()); + _tcsxcpy(pSt_QRCodeConfig->tszModelSr, st_JsonRoot["tszModelSr"].asCString()); + _tcsxcpy(pSt_QRCodeConfig->tszProtoDetect, st_JsonRoot["tszProtoDetect"].asCString()); + _tcsxcpy(pSt_QRCodeConfig->tszProtoSr, st_JsonRoot["tszProtoSr"].asCString()); + return true; } /******************************************************************** 函数名称:ModuleConfigure_Json_PluginFile @@ -340,29 +350,29 @@ BOOL CModuleConfigure_Json::ModuleConfigure_Json_QRCodeFile(LPCTSTR lpszConfigFi 意思:是否成功 备注: *********************************************************************/ -BOOL CModuleConfigure_Json::ModuleConfigure_Json_PluginFile(LPCTSTR lpszConfigFile, XENGINE_PLUGINCONFIG* pSt_PluginConfig) +bool CModuleConfigure_Json::ModuleConfigure_Json_PluginFile(LPCXSTR lpszConfigFile, XENGINE_PLUGINCONFIG* pSt_PluginConfig) { - Config_IsErrorOccur = FALSE; + Config_IsErrorOccur = false; if ((NULL == lpszConfigFile) || (NULL == pSt_PluginConfig)) { - Config_IsErrorOccur = TRUE; + Config_IsErrorOccur = true; Config_dwErrorCode = ERROR_MODULE_CONFIGURE_JSON_PARAMENT; - return FALSE; + return false; } Json::Value st_JsonRoot; JSONCPP_STRING st_JsonError; Json::CharReaderBuilder st_JsonBuilder; //读取配置文件所有内容到缓冲区 - FILE* pSt_File = _tfopen(lpszConfigFile, _T("rb")); + FILE* pSt_File = _xtfopen(lpszConfigFile, _X("rb")); if (NULL == pSt_File) { - Config_IsErrorOccur = TRUE; + Config_IsErrorOccur = true; Config_dwErrorCode = ERROR_MODULE_CONFIGURE_JSON_OPENFILE; - return FALSE; + return false; } size_t nCount = 0; - TCHAR tszMsgBuffer[4096]; + XCHAR tszMsgBuffer[4096]; while (1) { size_t nRet = fread(tszMsgBuffer + nCount, 1, 2048, pSt_File); @@ -377,17 +387,17 @@ BOOL CModuleConfigure_Json::ModuleConfigure_Json_PluginFile(LPCTSTR lpszConfigFi std::unique_ptr const pSt_JsonReader(st_JsonBuilder.newCharReader()); if (!pSt_JsonReader->parse(tszMsgBuffer, tszMsgBuffer + nCount, &st_JsonRoot, &st_JsonError)) { - Config_IsErrorOccur = TRUE; + Config_IsErrorOccur = true; Config_dwErrorCode = ERROR_MODULE_CONFIGURE_JSON_PARSE; - return FALSE; + return false; } //申请内存 pSt_PluginConfig->pStl_ListPlugin = new list; if (NULL == pSt_PluginConfig->pStl_ListPlugin) { - Config_IsErrorOccur = TRUE; + Config_IsErrorOccur = true; Config_dwErrorCode = ERROR_MODULE_CONFIGURE_JSON_MALLOC; - return FALSE; + return false; } //解析列表 Json::Value st_JsonArray = st_JsonRoot["PluginArray"]; @@ -397,21 +407,21 @@ BOOL CModuleConfigure_Json::ModuleConfigure_Json_PluginFile(LPCTSTR lpszConfigFi memset(&st_PluginInfo, '\0', sizeof(XENGINE_PLUGININFO)); st_PluginInfo.bEnable = st_JsonArray[i]["PluginEnable"].asBool(); - _tcscpy(st_PluginInfo.tszPluginFile, st_JsonArray[i]["PluginFile"].asCString()); + _tcsxcpy(st_PluginInfo.tszPluginFile, st_JsonArray[i]["PluginFile"].asCString()); - if (NULL == _tcsstr(st_PluginInfo.tszPluginFile + 3,_T("."))) + if (NULL == _tcsxstr(st_PluginInfo.tszPluginFile + 3,_X("."))) { #ifdef _MSC_BUILD - _tcscat(st_PluginInfo.tszPluginFile, ".dll"); + _tcsxcat(st_PluginInfo.tszPluginFile, ".dll"); #elif __linux__ - _tcscat(st_PluginInfo.tszPluginFile, ".so"); + _tcsxcat(st_PluginInfo.tszPluginFile, ".so"); #else - _tcscat(st_PluginInfo.tszPluginFile, ".dylib"); + _tcsxcat(st_PluginInfo.tszPluginFile, ".dylib"); #endif } - _tcscpy(st_PluginInfo.tszPluginMethod, st_JsonArray[i]["PluginMethod"].asCString()); + _tcsxcpy(st_PluginInfo.tszPluginMethod, st_JsonArray[i]["PluginMethod"].asCString()); pSt_PluginConfig->pStl_ListPlugin->push_back(st_PluginInfo); } - return TRUE; + return true; } \ No newline at end of file diff --git a/XEngine_Source/XEngine_ModuleConfigure/ModuleConfigure_Json/ModuleConfigure_Json.h b/XEngine_Source/XEngine_ModuleConfigure/ModuleConfigure_Json/ModuleConfigure_Json.h index acee48702d5ae4946e3eb05162f372ecd5241bbc..24495db0919c1a54d9919318fcb63dc549b699ab 100644 --- a/XEngine_Source/XEngine_ModuleConfigure/ModuleConfigure_Json/ModuleConfigure_Json.h +++ b/XEngine_Source/XEngine_ModuleConfigure/ModuleConfigure_Json/ModuleConfigure_Json.h @@ -17,10 +17,10 @@ public: CModuleConfigure_Json(); ~CModuleConfigure_Json(); public: - BOOL ModuleConfigure_Json_File(LPCTSTR lpszConfigFile, XENGINE_SERVICECONFIG* pSt_ServerConfig); - BOOL ModuleConfigure_Json_OPenccFile(LPCTSTR lpszConfigFile, XENGINE_OPENCCCONFIG* pSt_OPenccConfig); - BOOL ModuleConfigure_Json_QRCodeFile(LPCTSTR lpszConfigFile, XENGINE_QRCODECONFIG* pSt_QRCodeConfig); - BOOL ModuleConfigure_Json_PluginFile(LPCTSTR lpszConfigFile, XENGINE_PLUGINCONFIG* pSt_PluginConfig); + bool ModuleConfigure_Json_File(LPCXSTR lpszConfigFile, XENGINE_SERVICECONFIG* pSt_ServerConfig); + bool ModuleConfigure_Json_OPenccFile(LPCXSTR lpszConfigFile, XENGINE_OPENCCCONFIG* pSt_OPenccConfig); + bool ModuleConfigure_Json_QRCodeFile(LPCXSTR lpszConfigFile, XENGINE_QRCODECONFIG* pSt_QRCodeConfig); + bool ModuleConfigure_Json_PluginFile(LPCXSTR lpszConfigFile, XENGINE_PLUGINCONFIG* pSt_PluginConfig); protected: private: }; \ No newline at end of file diff --git a/XEngine_Source/XEngine_ModuleConfigure/XEngine_ModuleConfigure.vcxproj b/XEngine_Source/XEngine_ModuleConfigure/XEngine_ModuleConfigure.vcxproj index 6d632fab0c5ff68cb28399781a80e77797d8a930..2f054796b590a79e38d26e3f22fb42115f236bb8 100644 --- a/XEngine_Source/XEngine_ModuleConfigure/XEngine_ModuleConfigure.vcxproj +++ b/XEngine_Source/XEngine_ModuleConfigure/XEngine_ModuleConfigure.vcxproj @@ -30,27 +30,27 @@ DynamicLibrary true v143 - MultiByte + Unicode DynamicLibrary false v143 true - MultiByte + Unicode DynamicLibrary true v143 - MultiByte + Unicode DynamicLibrary false v143 true - MultiByte + Unicode diff --git a/XEngine_Source/XEngine_ModuleConfigure/dllmain.cpp b/XEngine_Source/XEngine_ModuleConfigure/dllmain.cpp index daed8c8f7ac50ca1466016a0529648d18125a7e7..594ff2123d474b129bb2014fb572f03c9741bf0b 100644 --- a/XEngine_Source/XEngine_ModuleConfigure/dllmain.cpp +++ b/XEngine_Source/XEngine_ModuleConfigure/dllmain.cpp @@ -1,9 +1,9 @@ // dllmain.cpp : 定义 DLL 应用程序的入口点。 #include "pch.h" -BOOL APIENTRY DllMain( HMODULE hModule, - DWORD ul_reason_for_call, - LPVOID lpReserved +bool APIENTRY DllMain( HMODULE hModule, + XLONG ul_reason_for_call, + XPVOID lpReserved ) { switch (ul_reason_for_call) @@ -14,6 +14,6 @@ BOOL APIENTRY DllMain( HMODULE hModule, case DLL_PROCESS_DETACH: break; } - return TRUE; + return true; } diff --git a/XEngine_Source/XEngine_ModuleConfigure/pch.cpp b/XEngine_Source/XEngine_ModuleConfigure/pch.cpp index 5d11a22d6658be3b8031b9e03139cda34bce4c7a..f3c383dfe65a34b53ab6c1092e1777f3c5d6fa6e 100644 --- a/XEngine_Source/XEngine_ModuleConfigure/pch.cpp +++ b/XEngine_Source/XEngine_ModuleConfigure/pch.cpp @@ -11,14 +11,14 @@ // Purpose: 导出函数实现 // History: *********************************************************************/ -BOOL Config_IsErrorOccur = FALSE; -DWORD Config_dwErrorCode = 0; +bool Config_IsErrorOccur = false; +XLONG Config_dwErrorCode = 0; ////////////////////////////////////////////////////////////////////// CModuleConfigure_Json m_ConfigJson; ////////////////////////////////////////////////////////////////////// // 导出函数定义 ////////////////////////////////////////////////////////////////////// -extern "C" DWORD ModuleConfigure_GetLastError(int* pInt_ErrorCode) +extern "C" XLONG ModuleConfigure_GetLastError(int* pInt_ErrorCode) { if (pInt_ErrorCode != NULL) { @@ -29,19 +29,19 @@ extern "C" DWORD ModuleConfigure_GetLastError(int* pInt_ErrorCode) /************************************************************************/ /* 配置文件读取 */ /************************************************************************/ -extern "C" BOOL ModuleConfigure_Json_File(LPCTSTR lpszConfigFile, XENGINE_SERVICECONFIG * pSt_ServerConfig) +extern "C" bool ModuleConfigure_Json_File(LPCXSTR lpszConfigFile, XENGINE_SERVICECONFIG * pSt_ServerConfig) { return m_ConfigJson.ModuleConfigure_Json_File(lpszConfigFile, pSt_ServerConfig); } -extern "C" BOOL ModuleConfigure_Json_OPenccFile(LPCTSTR lpszConfigFile, XENGINE_OPENCCCONFIG * pSt_OPenccConfig) +extern "C" bool ModuleConfigure_Json_OPenccFile(LPCXSTR lpszConfigFile, XENGINE_OPENCCCONFIG * pSt_OPenccConfig) { return m_ConfigJson.ModuleConfigure_Json_OPenccFile(lpszConfigFile, pSt_OPenccConfig); } -extern "C" BOOL ModuleConfigure_Json_QRCodeFile(LPCTSTR lpszConfigFile, XENGINE_QRCODECONFIG * pSt_QRCodeConfig) +extern "C" bool ModuleConfigure_Json_QRCodeFile(LPCXSTR lpszConfigFile, XENGINE_QRCODECONFIG * pSt_QRCodeConfig) { return m_ConfigJson.ModuleConfigure_Json_QRCodeFile(lpszConfigFile, pSt_QRCodeConfig); } -extern "C" BOOL ModuleConfigure_Json_PluginFile(LPCTSTR lpszConfigFile, XENGINE_PLUGINCONFIG * pSt_PluginConfig) +extern "C" bool ModuleConfigure_Json_PluginFile(LPCXSTR lpszConfigFile, XENGINE_PLUGINCONFIG * pSt_PluginConfig) { return m_ConfigJson.ModuleConfigure_Json_PluginFile(lpszConfigFile, pSt_PluginConfig); } \ No newline at end of file diff --git a/XEngine_Source/XEngine_ModuleConfigure/pch.h b/XEngine_Source/XEngine_ModuleConfigure/pch.h index 477c82889c83e2c4245d8d1d9585a3299ae800c5..82a39fd950413e95c1d2315e83029cd04f9cdd29 100644 --- a/XEngine_Source/XEngine_ModuleConfigure/pch.h +++ b/XEngine_Source/XEngine_ModuleConfigure/pch.h @@ -36,8 +36,8 @@ using namespace std; // Purpose: 公用头文件 // History: *********************************************************************/ -extern BOOL Config_IsErrorOccur; -extern DWORD Config_dwErrorCode; +extern bool Config_IsErrorOccur; +extern XLONG Config_dwErrorCode; #ifdef _MSC_BUILD #ifdef _DEBUG diff --git a/XEngine_Source/XEngine_ModuleDatabase/Makefile b/XEngine_Source/XEngine_ModuleDatabase/Makefile index 88e06572a60813ee77a9dd28a7a0101e589b2437..1932c1738d0b38f8c541d12ea0491ea302432f82 100644 --- a/XEngine_Source/XEngine_ModuleDatabase/Makefile +++ b/XEngine_Source/XEngine_ModuleDatabase/Makefile @@ -1,30 +1,23 @@ -CC = g++ -Wall -std=c++17 -fPIC -Wno-deprecated-declarations -SHAREFLAG = -shared -SHAREDLL = so +CC = g++ -Wall -std=c++17 -fPIC +PLATFORM = linux +PLATVER = +PLATDIR = +FILEEXT = +LIBFLAG = RELEASE = 0 UNICODE = 0 -INCLUDE = -I ./ -LOADBIN = -L /usr/local/lib/XEngine_Release/XEngine_BaseLib -L /usr/local/lib/XEngine_Release/XEngine_HelpComponents +LOADHDR = -I ./ +LOADSO = -L /usr/local/lib/XEngine_Release/XEngine_BaseLib -L /usr/local/lib/XEngine_Release/XEngine_HelpComponents LIB = -lXEngine_BaseLib -lHelpComponents_DataBase -LIBEX = -ldl -lpthread -LOADSO = -Wl,-rpath=./,--disable-new-dtags -LIBINCLUDE = ModuleDatabase_IDCard.o ModuleDatabase_Bank.o ModuleDatabase_ZIPCode.o ModuleDatabase_XLog.o pch.o - -ifeq ($(shell uname),Darwin) - SHAREDLL = dylib - SHAREFLAG = -dynamiclib - LOADSO = -else - SHAREDLL = so - SHAREFLAG = -shared -endif +LIBEX = +OBJECTS = ModuleDatabase_IDCard.o ModuleDatabase_Bank.o ModuleDatabase_ZIPCode.o ModuleDatabase_XLog.o ModuleDatabase_ShortLink.o pch.o ifeq ($(RELEASE),1) -FLAGS = -c -O2 +FLAGS = -c DEBUG = else -FLAGS = -c -DEBUG = -g +FLAGS = -c -lc_p +DEBUG = -g -pg endif ifeq ($(UNICODE),1) @@ -33,30 +26,54 @@ else UNICODE = endif +ifeq ($(PLATFORM),linux) + ifeq (/etc/redhat-release,$(wildcard /etc/redhat-release)) + PLATVER = -D __CENTOS__ + PLATDIR = XEngine_Linux/Centos + else + PLATVER = -D __UBUNTU__ + PLATDIR = XEngine_Linux/Ubuntu + endif + FILEEXT = so + LIBFLAG = -shared + LIBEX = -lpthread -lrt -ldl + LOADBIN = -Wl,-rpath=./,--disable-new-dtags +else ifeq ($(PLATFORM),mac) + CC += -Wno-deprecated-declarations + PLATVER = -D __MACOS__ + PLATDIR = XEngine_Mac + FILEEXT = dylib + LIBFLAG = -dynamiclib + LIBEX = -lpthread -ldl + LOADBIN = -Wl,-rpath,@loader_path/./ +endif + -all:$(LIBINCLUDE) - $(CC) $(DEBUG) $(LIBINCLUDE) -o libXEngine_ModuleDatabase.$(SHAREDLL) $(SHAREFLAG) -fPIC $(LOADBIN) $(LIB) $(LIBEX) $(LOADSO) +all:$(OBJECTS) + $(CC) $(DEBUG) $(OBJECTS) -o libXEngine_ModuleDatabase.$(FILEEXT) $(LIBFLAG) $(LIB) $(LIBEX) $(LOADSO) $(LOADBIN) ModuleDatabase_IDCard.o:./ModuleDatabase_IDCard/ModuleDatabase_IDCard.cpp - $(CC) $(DEBUG) $(FLAGS) $(UNICODE) $(INCLUDE) ./ModuleDatabase_IDCard/ModuleDatabase_IDCard.cpp + $(CC) $(DEBUG) $(FLAGS) $(UNICODE) $(PLATVER) $(LOADHDR) ./ModuleDatabase_IDCard/ModuleDatabase_IDCard.cpp ModuleDatabase_Bank.o:./ModuleDatabase_Bank/ModuleDatabase_Bank.cpp - $(CC) $(DEBUG) $(FLAGS) $(UNICODE) $(INCLUDE) ./ModuleDatabase_Bank/ModuleDatabase_Bank.cpp + $(CC) $(DEBUG) $(FLAGS) $(UNICODE) $(PLATVER) $(LOADHDR) ./ModuleDatabase_Bank/ModuleDatabase_Bank.cpp ModuleDatabase_ZIPCode.o:./ModuleDatabase_ZIPCode/ModuleDatabase_ZIPCode.cpp - $(CC) $(DEBUG) $(FLAGS) $(UNICODE) $(INCLUDE) ./ModuleDatabase_ZIPCode/ModuleDatabase_ZIPCode.cpp + $(CC) $(DEBUG) $(FLAGS) $(UNICODE) $(PLATVER) $(LOADHDR) ./ModuleDatabase_ZIPCode/ModuleDatabase_ZIPCode.cpp ModuleDatabase_XLog.o:./ModuleDatabase_XLog/ModuleDatabase_XLog.cpp - $(CC) $(DEBUG) $(FLAGS) $(UNICODE) $(INCLUDE) ./ModuleDatabase_XLog/ModuleDatabase_XLog.cpp + $(CC) $(DEBUG) $(FLAGS) $(UNICODE) $(PLATVER) $(LOADHDR) ./ModuleDatabase_XLog/ModuleDatabase_XLog.cpp +ModuleDatabase_ShortLink.o:./ModuleDatabase_ShortLink/ModuleDatabase_ShortLink.cpp + $(CC) $(DEBUG) $(FLAGS) $(UNICODE) $(PLATVER) $(LOADHDR) ./ModuleDatabase_ShortLink/ModuleDatabase_ShortLink.cpp pch.o:./pch.cpp - $(CC) $(DEBUG) $(FLAGS) $(UNICODE) $(INCLUDE) ./pch.cpp + $(CC) $(DEBUG) $(FLAGS) $(UNICODE) $(PLATVER) $(LOADHDR) ./pch.cpp InstallAll:InstallSo -InstallSo:./libXEngine_ModuleDatabase.$(SHAREDLL) - cp ./libXEngine_ModuleDatabase.$(SHAREDLL) ../../XEngine_Release/libXEngine_ModuleDatabase.$(SHAREDLL) +InstallSo:./libXEngine_ModuleDatabase.$(FILEEXT) + cp ./libXEngine_ModuleDatabase.$(FILEEXT) ../../XEngine_Release/libXEngine_ModuleDatabase.$(FILEEXT) CleanAll:CleanObj CleanMk CleanObj: rm *.o CleanMk: - rm *.$(SHAREDLL) \ No newline at end of file + rm *.$(FILEEXT) \ No newline at end of file diff --git a/XEngine_Source/XEngine_ModuleDatabase/ModuleDB_Define.h b/XEngine_Source/XEngine_ModuleDatabase/ModuleDB_Define.h index e1013590eec117752ac22b73785a9876c62c064a..9263ba5cb67cf0479f95cb077fb690bbac242857 100644 --- a/XEngine_Source/XEngine_ModuleDatabase/ModuleDB_Define.h +++ b/XEngine_Source/XEngine_ModuleDatabase/ModuleDB_Define.h @@ -13,7 +13,7 @@ ////////////////////////////////////////////////////////////////////////// /// 导出的函数 ////////////////////////////////////////////////////////////////////////// -extern "C" DWORD ModuleDB_GetLastError(int *pInt_SysError = NULL); +extern "C" XLONG ModuleDB_GetLastError(int *pInt_SysError = NULL); /************************************************************************/ /* 导出的身份证地址操作函数 */ /************************************************************************/ @@ -30,7 +30,7 @@ extern "C" DWORD ModuleDB_GetLastError(int *pInt_SysError = NULL); 意思:是否成功 备注: *********************************************************************/ -extern "C" BOOL ModuleDatabase_IDCard_Init(DATABASE_MYSQL_CONNECTINFO * pSt_DBConnector); +extern "C" bool ModuleDatabase_IDCard_Init(DATABASE_MYSQL_CONNECTINFO * pSt_DBConnector); /******************************************************************** 函数名称:ModuleDatabase_IDCard_Destory 函数功能:销毁 @@ -39,7 +39,7 @@ extern "C" BOOL ModuleDatabase_IDCard_Init(DATABASE_MYSQL_CONNECTINFO * pSt_DBCo 意思:是否成功 备注: *********************************************************************/ -extern "C" BOOL ModuleDatabase_IDCard_Destory(); +extern "C" bool ModuleDatabase_IDCard_Destory(); /******************************************************************** 函数名称:ModuleDatabase_IDCard_QueryRegion 函数功能:查询身份证位置信息 @@ -58,7 +58,7 @@ extern "C" BOOL ModuleDatabase_IDCard_Destory(); 意思:是否成功 备注: *********************************************************************/ -extern "C" BOOL ModuleDatabase_IDCard_QueryRegion(XENGINE_IDREGION * pSt_IDRegion, XENGINE_IDCARDINFO * pSt_IDInfo); +extern "C" bool ModuleDatabase_IDCard_QueryRegion(XENGINE_IDREGION * pSt_IDRegion, XENGINE_IDCARDINFO * pSt_IDInfo); /************************************************************************/ /* 导出的银行卡信息函数 */ /************************************************************************/ @@ -75,7 +75,7 @@ extern "C" BOOL ModuleDatabase_IDCard_QueryRegion(XENGINE_IDREGION * pSt_IDRegio 意思:是否成功 备注: *********************************************************************/ -extern "C" BOOL ModuleDatabase_Bank_Init(DATABASE_MYSQL_CONNECTINFO * pSt_DBConnector); +extern "C" bool ModuleDatabase_Bank_Init(DATABASE_MYSQL_CONNECTINFO * pSt_DBConnector); /******************************************************************** 函数名称:ModuleDatabase_Bank_Destory 函数功能:销毁 @@ -84,7 +84,7 @@ extern "C" BOOL ModuleDatabase_Bank_Init(DATABASE_MYSQL_CONNECTINFO * pSt_DBConn 意思:是否成功 备注: *********************************************************************/ -extern "C" BOOL ModuleDatabase_Bank_Destory(); +extern "C" bool ModuleDatabase_Bank_Destory(); /******************************************************************** 函数名称:ModuleDatabase_Bank_Query 函数功能:通过银行缩写获得银行名称 @@ -98,7 +98,7 @@ extern "C" BOOL ModuleDatabase_Bank_Destory(); 意思:是否成功 备注: *********************************************************************/ -extern "C" BOOL ModuleDatabase_Bank_Query(XENGINE_BANKINFO * pSt_BankInfo); +extern "C" bool ModuleDatabase_Bank_Query(XENGINE_BANKINFO * pSt_BankInfo); /************************************************************************/ /* 导出的邮编行政信息函数 */ /************************************************************************/ @@ -115,7 +115,7 @@ extern "C" BOOL ModuleDatabase_Bank_Query(XENGINE_BANKINFO * pSt_BankInfo); 意思:是否成功 备注: *********************************************************************/ -extern "C" BOOL ModuleDatabase_ZIPCode_Init(DATABASE_MYSQL_CONNECTINFO * pSt_DBConnector); +extern "C" bool ModuleDatabase_ZIPCode_Init(DATABASE_MYSQL_CONNECTINFO * pSt_DBConnector); /******************************************************************** 函数名称:ModuleDatabase_ZIPCode_Destory 函数功能:销毁 @@ -124,7 +124,7 @@ extern "C" BOOL ModuleDatabase_ZIPCode_Init(DATABASE_MYSQL_CONNECTINFO * pSt_DBC 意思:是否成功 备注: *********************************************************************/ -extern "C" BOOL ModuleDatabase_ZIPCode_Destory(); +extern "C" bool ModuleDatabase_ZIPCode_Destory(); /******************************************************************** 函数名称:ModuleDatabase_ZIPCode_QueryZIPCode 函数功能:通过邮编查询行政地址信息 @@ -138,7 +138,7 @@ extern "C" BOOL ModuleDatabase_ZIPCode_Destory(); 意思:是否成功 备注: *********************************************************************/ -extern "C" BOOL ModuleDatabase_ZIPCode_QueryZIPCode(XENGINE_ZIPINFO* pSt_ZIPInfo); +extern "C" bool ModuleDatabase_ZIPCode_QueryZIPCode(XENGINE_ZIPINFO* pSt_ZIPInfo); /******************************************************************** 函数名称:ModuleDatabase_ZIPCode_QueryName 函数功能:通过行政名称查询内容 @@ -152,24 +152,24 @@ extern "C" BOOL ModuleDatabase_ZIPCode_QueryZIPCode(XENGINE_ZIPINFO* pSt_ZIPInfo 意思:是否成功 备注: *********************************************************************/ -extern "C" BOOL ModuleDatabase_ZIPCode_QueryName(XENGINE_ZIPINFO* pSt_ZIPInfo); +extern "C" bool ModuleDatabase_ZIPCode_QueryName(XENGINE_ZIPINFO* pSt_ZIPInfo); /************************************************************************/ /* 导出的日志服务数据库函数 */ /************************************************************************/ /******************************************************************** 函数名称:ModuleDatabase_XLog_Init 函数功能:初始化SQLITE文件系统 - 参数.一:lpszSQLFile + 参数.一:pSt_DBConnector In/Out:In - 类型:常量字符指针 + 类型:数据结构指针 可空:N - 意思:输入要操作的SQL文件 + 意思:输入要操作的数据库 返回值 类型:逻辑型 意思:是否成功 备注: *********************************************************************/ -extern "C" BOOL ModuleDatabase_XLog_Init(DATABASE_MYSQL_CONNECTINFO* pSt_DBConnector); +extern "C" bool ModuleDatabase_XLog_Init(DATABASE_MYSQL_CONNECTINFO* pSt_DBConnector); /******************************************************************** 函数名称:ModuleDatabase_XLog_Destory 函数功能:销毁 @@ -178,7 +178,7 @@ extern "C" BOOL ModuleDatabase_XLog_Init(DATABASE_MYSQL_CONNECTINFO* pSt_DBConne 意思:是否成功 备注: *********************************************************************/ -extern "C" BOOL ModuleDatabase_XLog_Destory(); +extern "C" bool ModuleDatabase_XLog_Destory(); /******************************************************************** 函数名称:ModuleDatabase_XLog_Create 函数功能:创建一个日志服务表 @@ -192,7 +192,7 @@ extern "C" BOOL ModuleDatabase_XLog_Destory(); 意思:是否成功 备注: *********************************************************************/ -extern "C" BOOL ModuleDatabase_XLog_Create(LPCTSTR lpszTableName); +extern "C" bool ModuleDatabase_XLog_Create(LPCXSTR lpszTableName); /******************************************************************** 函数名称:ModuleDatabase_XLog_Insert 函数功能:查询身份证位置信息 @@ -206,7 +206,7 @@ extern "C" BOOL ModuleDatabase_XLog_Create(LPCTSTR lpszTableName); 意思:是否成功 备注: *********************************************************************/ -extern "C" BOOL ModuleDatabase_XLog_Insert(XENGINE_XLOGINFO* pSt_XLogInfo); +extern "C" bool ModuleDatabase_XLog_Insert(XENGINE_XLOGINFO* pSt_XLogInfo); /******************************************************************** 函数名称:ModuleDatabase_XLog_Query 函数功能:日志信息查询 @@ -240,7 +240,7 @@ extern "C" BOOL ModuleDatabase_XLog_Insert(XENGINE_XLOGINFO* pSt_XLogInfo); 意思:是否成功 备注: *********************************************************************/ -extern "C" BOOL ModuleDatabase_XLog_Query(XENGINE_XLOGINFO*** pppSt_XLogInfo, int* pInt_ListCount, LPCTSTR lpszTableName, LPCTSTR lpszTimeStart, LPCTSTR lpszTimeEnd); +extern "C" bool ModuleDatabase_XLog_Query(XENGINE_XLOGINFO*** pppSt_XLogInfo, int* pInt_ListCount, LPCXSTR lpszTableName, LPCXSTR lpszTimeStart, LPCXSTR lpszTimeEnd); /******************************************************************** 函数名称:ModuleDatabase_XLog_Delete 函数功能:删除日志表 @@ -254,4 +254,72 @@ extern "C" BOOL ModuleDatabase_XLog_Query(XENGINE_XLOGINFO*** pppSt_XLogInfo, in 意思:是否成功 备注: *********************************************************************/ -extern "C" BOOL ModuleDatabase_XLog_Delete(LPCTSTR lpszTableName); \ No newline at end of file +extern "C" bool ModuleDatabase_XLog_Delete(LPCXSTR lpszTableName); +/************************************************************************/ +/* 导出的短连接数据库函数 */ +/************************************************************************/ +/******************************************************************** +函数名称:ModuleDatabase_ShortLink_Init +函数功能:初始化SQLITE文件系统 + 参数.一:pSt_DBConnector + In/Out:In + 类型:数据结构指针 + 可空:N + 意思:数据数据库信息 +返回值 + 类型:逻辑型 + 意思:是否成功 +备注: +*********************************************************************/ +extern "C" bool ModuleDatabase_ShortLink_Init(DATABASE_MYSQL_CONNECTINFO* pSt_DBConnector); +/******************************************************************** +函数名称:ModuleDatabase_ShortLink_Destory +函数功能:销毁 +返回值 + 类型:逻辑型 + 意思:是否成功 +备注: +*********************************************************************/ +extern "C" bool ModuleDatabase_ShortLink_Destory(); +/******************************************************************** +函数名称:ModuleDatabase_ShortLink_Insert +函数功能:插入一个短连接到数据库中 + 参数.一:pSt_SLinkInfo + In/Out:In + 类型:数据结构指针 + 可空:N + 意思:输入要插入的信息 +返回值 + 类型:逻辑型 + 意思:是否成功 +备注: +*********************************************************************/ +extern "C" bool ModuleDatabase_ShortLink_Insert(XENGINE_SHORTLINK* pSt_SLinkInfo); +/******************************************************************** +函数名称:ModuleDatabase_ShortLink_Query +函数功能:查询短连接 + 参数.一:pSt_SLinkInfo + In/Out:In/Out + 类型:数据结构指针 + 可空:N + 意思:输入查询的短连接,输出完整的连接 +返回值 + 类型:逻辑型 + 意思:是否成功 +备注: +*********************************************************************/ +extern "C" bool ModuleDatabase_ShortLink_Query(XENGINE_SHORTLINK* pSt_SLinkInfo); +/******************************************************************** +函数名称:ModuleDatabase_ShortLink_Delete +函数功能:删除短连接 + 参数.一:pSt_SLinkInfo + In/Out:In + 类型:数据结构指针 + 可空:N + 意思:输入要删除的短连接 +返回值 + 类型:逻辑型 + 意思:是否成功 +备注: +*********************************************************************/ +extern "C" bool ModuleDatabase_ShortLink_Delete(XENGINE_SHORTLINK* pSt_SLinkInfo); \ No newline at end of file diff --git a/XEngine_Source/XEngine_ModuleDatabase/ModuleDatabase_Bank/ModuleDatabase_Bank.cpp b/XEngine_Source/XEngine_ModuleDatabase/ModuleDatabase_Bank/ModuleDatabase_Bank.cpp index 3859d3572363083489dd0f82686d9e7d10bb4c82..0da876fbd4734a12a05477fd8d0e0ec15c92b49e 100644 --- a/XEngine_Source/XEngine_ModuleDatabase/ModuleDatabase_Bank/ModuleDatabase_Bank.cpp +++ b/XEngine_Source/XEngine_ModuleDatabase/ModuleDatabase_Bank/ModuleDatabase_Bank.cpp @@ -24,40 +24,35 @@ CModuleDatabase_Bank::~CModuleDatabase_Bank() /******************************************************************** 函数名称:ModuleDatabase_Bank_Init 函数功能:初始化SQLITE文件系统 - 参数.一:lpszSQLFile + 参数.一:pSt_DBConnector In/Out:In - 类型:常量字符指针 + 类型:数据结构指针 可空:N - 意思:输入要操作的SQL文件 + 意思:输入要操作的数据库 返回值 类型:逻辑型 意思:是否成功 备注: *********************************************************************/ -BOOL CModuleDatabase_Bank::ModuleDatabase_Bank_Init(DATABASE_MYSQL_CONNECTINFO* pSt_DBConnector) +bool CModuleDatabase_Bank::ModuleDatabase_Bank_Init(DATABASE_MYSQL_CONNECTINFO* pSt_DBConnector) { - DBModule_IsErrorOccur = FALSE; + DBModule_IsErrorOccur = false; if (NULL == pSt_DBConnector) { - DBModule_IsErrorOccur = TRUE; + DBModule_IsErrorOccur = true; DBModule_dwErrorCode = ERROR_APISERVICE_MODULE_DATABASE_PARAMENT; - return FALSE; + return false; } -#ifdef _WINDOWS - LPCTSTR lpszStrCharset = _T("gbk"); -#else - LPCTSTR lpszStrCharset = _T("utf8"); -#endif //连接数据库 - _tcscpy(pSt_DBConnector->tszDBName, _T("XEngine_APIInfo")); - if (!DataBase_MySQL_Connect(&xhDBSQL, pSt_DBConnector, 5, TRUE, lpszStrCharset)) + _tcsxcpy(pSt_DBConnector->tszDBName, _X("XEngine_APIInfo")); + if (!DataBase_MySQL_Connect(&xhDBSQL, pSt_DBConnector)) { - DBModule_IsErrorOccur = TRUE; + DBModule_IsErrorOccur = true; DBModule_dwErrorCode = DataBase_GetLastError(); - return FALSE; + return false; } - return TRUE; + return true; } /******************************************************************** 函数名称:ModuleDatabase_Bank_Destory @@ -67,12 +62,12 @@ BOOL CModuleDatabase_Bank::ModuleDatabase_Bank_Init(DATABASE_MYSQL_CONNECTINFO* 意思:是否成功 备注: *********************************************************************/ -BOOL CModuleDatabase_Bank::ModuleDatabase_Bank_Destory() +bool CModuleDatabase_Bank::ModuleDatabase_Bank_Destory() { - DBModule_IsErrorOccur = FALSE; + DBModule_IsErrorOccur = false; DataBase_MySQL_Close(xhDBSQL); - return TRUE; + return true; } /******************************************************************** 函数名称:ModuleDatabase_Bank_Query @@ -87,39 +82,39 @@ BOOL CModuleDatabase_Bank::ModuleDatabase_Bank_Destory() 意思:是否成功 备注: *********************************************************************/ -BOOL CModuleDatabase_Bank::ModuleDatabase_Bank_Query(XENGINE_BANKINFO* pSt_BankInfo) +bool CModuleDatabase_Bank::ModuleDatabase_Bank_Query(XENGINE_BANKINFO* pSt_BankInfo) { - DBModule_IsErrorOccur = FALSE; + DBModule_IsErrorOccur = false; if (NULL == pSt_BankInfo) { - DBModule_IsErrorOccur = TRUE; + DBModule_IsErrorOccur = true; DBModule_dwErrorCode = ERROR_APISERVICE_MODULE_DATABASE_PARAMENT; - return FALSE; + return false; } //查询 __int64u nLine = 0; __int64u nRow = 0; XNETHANDLE xhTable = 0; - TCHAR tszSQLStatement[1024]; + XCHAR tszSQLStatement[1024]; memset(tszSQLStatement, '\0', sizeof(tszSQLStatement)); - _stprintf(tszSQLStatement, _T("SELECT * FROM `BankList` WHERE tszBankAbridge = '%s'"), pSt_BankInfo->tszBankAbridge); + _xstprintf(tszSQLStatement, _X("SELECT * FROM `BankList` WHERE tszBankAbridge = '%s'"), pSt_BankInfo->tszBankAbridge); if (!DataBase_MySQL_ExecuteQuery(xhDBSQL, &xhTable, tszSQLStatement, &nLine, &nRow)) { - DBModule_IsErrorOccur = TRUE; + DBModule_IsErrorOccur = true; DBModule_dwErrorCode = DataBase_GetLastError(); - return FALSE; + return false; } if (nLine <= 0) { - DBModule_IsErrorOccur = TRUE; + DBModule_IsErrorOccur = true; DBModule_dwErrorCode = ERROR_APISERVICE_MODULE_DATABASE_NOTFOUND; - return FALSE; + return false; } - TCHAR** pptszResult = DataBase_MySQL_GetResult(xhDBSQL, xhTable); - _tcscpy(pSt_BankInfo->tszBankName, pptszResult[2]); + XCHAR** pptszResult = DataBase_MySQL_GetResult(xhDBSQL, xhTable); + _tcsxcpy(pSt_BankInfo->tszBankName, pptszResult[2]); DataBase_MySQL_FreeResult(xhDBSQL, xhTable); - return TRUE; + return true; } \ No newline at end of file diff --git a/XEngine_Source/XEngine_ModuleDatabase/ModuleDatabase_Bank/ModuleDatabase_Bank.h b/XEngine_Source/XEngine_ModuleDatabase/ModuleDatabase_Bank/ModuleDatabase_Bank.h index 1b6d108a4dcafabdd591ccdc2c0b0b2935de3695..6da6943e3da16215253f62b2307ba4803096f445 100644 --- a/XEngine_Source/XEngine_ModuleDatabase/ModuleDatabase_Bank/ModuleDatabase_Bank.h +++ b/XEngine_Source/XEngine_ModuleDatabase/ModuleDatabase_Bank/ModuleDatabase_Bank.h @@ -18,9 +18,9 @@ public: CModuleDatabase_Bank(); ~CModuleDatabase_Bank(); public: - BOOL ModuleDatabase_Bank_Init(DATABASE_MYSQL_CONNECTINFO* pSt_DBConnector); - BOOL ModuleDatabase_Bank_Destory(); - BOOL ModuleDatabase_Bank_Query(XENGINE_BANKINFO* pSt_BankInfo); + bool ModuleDatabase_Bank_Init(DATABASE_MYSQL_CONNECTINFO* pSt_DBConnector); + bool ModuleDatabase_Bank_Destory(); + bool ModuleDatabase_Bank_Query(XENGINE_BANKINFO* pSt_BankInfo); protected: private: XNETHANDLE xhDBSQL; diff --git a/XEngine_Source/XEngine_ModuleDatabase/ModuleDatabase_IDCard/ModuleDatabase_IDCard.cpp b/XEngine_Source/XEngine_ModuleDatabase/ModuleDatabase_IDCard/ModuleDatabase_IDCard.cpp index 2797f42db03c2204a241f18f2bc4cfa3cacaf59e..4acd167c1774bba29cceaf4294df909916184bbd 100644 --- a/XEngine_Source/XEngine_ModuleDatabase/ModuleDatabase_IDCard/ModuleDatabase_IDCard.cpp +++ b/XEngine_Source/XEngine_ModuleDatabase/ModuleDatabase_IDCard/ModuleDatabase_IDCard.cpp @@ -34,30 +34,25 @@ CModuleDatabase_IDCard::~CModuleDatabase_IDCard() 意思:是否成功 备注: *********************************************************************/ -BOOL CModuleDatabase_IDCard::ModuleDatabase_IDCard_Init(DATABASE_MYSQL_CONNECTINFO* pSt_DBConnector) +bool CModuleDatabase_IDCard::ModuleDatabase_IDCard_Init(DATABASE_MYSQL_CONNECTINFO* pSt_DBConnector) { - DBModule_IsErrorOccur = FALSE; + DBModule_IsErrorOccur = false; if (NULL == pSt_DBConnector) { - DBModule_IsErrorOccur = TRUE; + DBModule_IsErrorOccur = true; DBModule_dwErrorCode = ERROR_APISERVICE_MODULE_DATABASE_PARAMENT; - return FALSE; + return false; } -#ifdef _WINDOWS - LPCTSTR lpszStrCharset = _T("gbk"); -#else - LPCTSTR lpszStrCharset = _T("utf8"); -#endif //连接数据库 - _tcscpy(pSt_DBConnector->tszDBName, _T("XEngine_APIInfo")); - if (!DataBase_MySQL_Connect(&xhDBSQL, pSt_DBConnector, 5, TRUE, lpszStrCharset)) + _tcsxcpy(pSt_DBConnector->tszDBName, _X("XEngine_APIInfo")); + if (!DataBase_MySQL_Connect(&xhDBSQL, pSt_DBConnector)) { - DBModule_IsErrorOccur = TRUE; + DBModule_IsErrorOccur = true; DBModule_dwErrorCode = DataBase_GetLastError(); - return FALSE; + return false; } - return TRUE; + return true; } /******************************************************************** 函数名称:ModuleDatabase_IDCard_Destory @@ -67,12 +62,12 @@ BOOL CModuleDatabase_IDCard::ModuleDatabase_IDCard_Init(DATABASE_MYSQL_CONNECTIN 意思:是否成功 备注: *********************************************************************/ -BOOL CModuleDatabase_IDCard::ModuleDatabase_IDCard_Destory() +bool CModuleDatabase_IDCard::ModuleDatabase_IDCard_Destory() { - DBModule_IsErrorOccur = FALSE; + DBModule_IsErrorOccur = false; DataBase_MySQL_Close(xhDBSQL); - return TRUE; + return true; } /******************************************************************** 函数名称:ModuleDatabase_IDCard_QueryRegion @@ -92,14 +87,14 @@ BOOL CModuleDatabase_IDCard::ModuleDatabase_IDCard_Destory() 意思:是否成功 备注: *********************************************************************/ -BOOL CModuleDatabase_IDCard::ModuleDatabase_IDCard_QueryRegion(XENGINE_IDREGION* pSt_IDRegion, XENGINE_IDCARDINFO* pSt_IDInfo) +bool CModuleDatabase_IDCard::ModuleDatabase_IDCard_QueryRegion(XENGINE_IDREGION* pSt_IDRegion, XENGINE_IDCARDINFO* pSt_IDInfo) { - DBModule_IsErrorOccur = FALSE; + DBModule_IsErrorOccur = false; ModuleDatabase_IDCard_QueryProvincer(pSt_IDRegion, pSt_IDInfo); ModuleDatabase_IDCard_QueryCity(pSt_IDRegion, pSt_IDInfo); ModuleDatabase_IDCard_QueryCounty(pSt_IDRegion, pSt_IDInfo); - return TRUE; + return true; } /******************************************************************** 函数名称:ModuleDatabase_IDCard_QueryProvincer @@ -119,41 +114,41 @@ BOOL CModuleDatabase_IDCard::ModuleDatabase_IDCard_QueryRegion(XENGINE_IDREGION* 意思:是否成功 备注: *********************************************************************/ -BOOL CModuleDatabase_IDCard::ModuleDatabase_IDCard_QueryProvincer(XENGINE_IDREGION* pSt_IDRegion, XENGINE_IDCARDINFO* pSt_IDInfo) +bool CModuleDatabase_IDCard::ModuleDatabase_IDCard_QueryProvincer(XENGINE_IDREGION* pSt_IDRegion, XENGINE_IDCARDINFO* pSt_IDInfo) { - DBModule_IsErrorOccur = FALSE; + DBModule_IsErrorOccur = false; if ((NULL == pSt_IDRegion) || (NULL == pSt_IDInfo)) { - DBModule_IsErrorOccur = TRUE; + DBModule_IsErrorOccur = true; DBModule_dwErrorCode = ERROR_APISERVICE_MODULE_DATABASE_PARAMENT; - return FALSE; + return false; } //查询 __int64u nLine = 0; __int64u nRow = 0; XNETHANDLE xhTable = 0; - TCHAR tszSQLStatement[1024]; + XCHAR tszSQLStatement[1024]; memset(tszSQLStatement, '\0', sizeof(tszSQLStatement)); - _stprintf(tszSQLStatement, _T("SELECT * FROM `RegionID` WHERE code = '%02d0000'"), pSt_IDInfo->nIDProvince); + _xstprintf(tszSQLStatement, _X("SELECT * FROM `RegionID` WHERE code = '%02d0000'"), pSt_IDInfo->nIDProvince); if (!DataBase_MySQL_ExecuteQuery(xhDBSQL, &xhTable, tszSQLStatement, &nLine, &nRow)) { - DBModule_IsErrorOccur = TRUE; + DBModule_IsErrorOccur = true; DBModule_dwErrorCode = DataBase_GetLastError(); - return FALSE; + return false; } if (nLine <= 0) { - DBModule_IsErrorOccur = TRUE; + DBModule_IsErrorOccur = true; DBModule_dwErrorCode = ERROR_APISERVICE_MODULE_DATABASE_NOTFOUND; - return FALSE; + return false; } - TCHAR** pptszResult = DataBase_MySQL_GetResult(xhDBSQL, xhTable); - _tcscpy(pSt_IDRegion->tszProvincer, pptszResult[1]); + XCHAR** pptszResult = DataBase_MySQL_GetResult(xhDBSQL, xhTable); + _tcsxcpy(pSt_IDRegion->tszProvincer, pptszResult[1]); DataBase_MySQL_FreeResult(xhDBSQL, xhTable); - return TRUE; + return true; } /******************************************************************** 函数名称:ModuleDatabase_IDCard_QueryCity @@ -173,41 +168,41 @@ BOOL CModuleDatabase_IDCard::ModuleDatabase_IDCard_QueryProvincer(XENGINE_IDREGI 意思:是否成功 备注: *********************************************************************/ -BOOL CModuleDatabase_IDCard::ModuleDatabase_IDCard_QueryCity(XENGINE_IDREGION* pSt_IDRegion, XENGINE_IDCARDINFO* pSt_IDInfo) +bool CModuleDatabase_IDCard::ModuleDatabase_IDCard_QueryCity(XENGINE_IDREGION* pSt_IDRegion, XENGINE_IDCARDINFO* pSt_IDInfo) { - DBModule_IsErrorOccur = FALSE; + DBModule_IsErrorOccur = false; if ((NULL == pSt_IDRegion) || (NULL == pSt_IDInfo)) { - DBModule_IsErrorOccur = TRUE; + DBModule_IsErrorOccur = true; DBModule_dwErrorCode = ERROR_APISERVICE_MODULE_DATABASE_PARAMENT; - return FALSE; + return false; } //查询 __int64u nLine = 0; __int64u nRow = 0; XNETHANDLE xhTable = 0; - TCHAR tszSQLStatement[1024]; + XCHAR tszSQLStatement[1024]; memset(tszSQLStatement, '\0', sizeof(tszSQLStatement)); - _stprintf(tszSQLStatement, _T("SELECT * FROM `RegionID` WHERE code = '%02d%02d00'"), pSt_IDInfo->nIDProvince, pSt_IDInfo->nIDCity); + _xstprintf(tszSQLStatement, _X("SELECT * FROM `RegionID` WHERE code = '%02d%02d00'"), pSt_IDInfo->nIDProvince, pSt_IDInfo->nIDCity); if (!DataBase_MySQL_ExecuteQuery(xhDBSQL, &xhTable, tszSQLStatement, &nLine, &nRow)) { - DBModule_IsErrorOccur = TRUE; + DBModule_IsErrorOccur = true; DBModule_dwErrorCode = DataBase_GetLastError(); - return FALSE; + return false; } if (nLine <= 0) { - DBModule_IsErrorOccur = TRUE; + DBModule_IsErrorOccur = true; DBModule_dwErrorCode = ERROR_APISERVICE_MODULE_DATABASE_NOTFOUND; - return FALSE; + return false; } - TCHAR** pptszResult = DataBase_MySQL_GetResult(xhDBSQL, xhTable); - _tcscpy(pSt_IDRegion->tszCity, pptszResult[1]); + XCHAR** pptszResult = DataBase_MySQL_GetResult(xhDBSQL, xhTable); + _tcsxcpy(pSt_IDRegion->tszCity, pptszResult[1]); DataBase_MySQL_FreeResult(xhDBSQL, xhTable); - return TRUE; + return true; } /******************************************************************** 函数名称:ModuleDatabase_IDCard_QueryCounty @@ -227,39 +222,39 @@ BOOL CModuleDatabase_IDCard::ModuleDatabase_IDCard_QueryCity(XENGINE_IDREGION* p 意思:是否成功 备注: *********************************************************************/ -BOOL CModuleDatabase_IDCard::ModuleDatabase_IDCard_QueryCounty(XENGINE_IDREGION* pSt_IDRegion, XENGINE_IDCARDINFO* pSt_IDInfo) +bool CModuleDatabase_IDCard::ModuleDatabase_IDCard_QueryCounty(XENGINE_IDREGION* pSt_IDRegion, XENGINE_IDCARDINFO* pSt_IDInfo) { - DBModule_IsErrorOccur = FALSE; + DBModule_IsErrorOccur = false; if ((NULL == pSt_IDRegion) || (NULL == pSt_IDInfo)) { - DBModule_IsErrorOccur = TRUE; + DBModule_IsErrorOccur = true; DBModule_dwErrorCode = ERROR_APISERVICE_MODULE_DATABASE_PARAMENT; - return FALSE; + return false; } //查询 __int64u nLine = 0; __int64u nRow = 0; XNETHANDLE xhTable = 0; - TCHAR tszSQLStatement[1024]; + XCHAR tszSQLStatement[1024]; memset(tszSQLStatement, '\0', sizeof(tszSQLStatement)); - _stprintf(tszSQLStatement, _T("SELECT * FROM `RegionID` WHERE code = '%02d%02d%02d'"), pSt_IDInfo->nIDProvince, pSt_IDInfo->nIDCity, pSt_IDInfo->nIDCounty); + _xstprintf(tszSQLStatement, _X("SELECT * FROM `RegionID` WHERE code = '%02d%02d%02d'"), pSt_IDInfo->nIDProvince, pSt_IDInfo->nIDCity, pSt_IDInfo->nIDCounty); if (!DataBase_MySQL_ExecuteQuery(xhDBSQL, &xhTable, tszSQLStatement, &nLine, &nRow)) { - DBModule_IsErrorOccur = TRUE; + DBModule_IsErrorOccur = true; DBModule_dwErrorCode = DataBase_GetLastError(); - return FALSE; + return false; } if (nLine <= 0) { - DBModule_IsErrorOccur = TRUE; + DBModule_IsErrorOccur = true; DBModule_dwErrorCode = ERROR_APISERVICE_MODULE_DATABASE_NOTFOUND; - return FALSE; + return false; } - TCHAR** pptszResult = DataBase_MySQL_GetResult(xhDBSQL, xhTable); - _tcscpy(pSt_IDRegion->tszCounty, pptszResult[1]); + XCHAR** pptszResult = DataBase_MySQL_GetResult(xhDBSQL, xhTable); + _tcsxcpy(pSt_IDRegion->tszCounty, pptszResult[1]); DataBase_MySQL_FreeResult(xhDBSQL, xhTable); - return TRUE; + return true; } \ No newline at end of file diff --git a/XEngine_Source/XEngine_ModuleDatabase/ModuleDatabase_IDCard/ModuleDatabase_IDCard.h b/XEngine_Source/XEngine_ModuleDatabase/ModuleDatabase_IDCard/ModuleDatabase_IDCard.h index fbaaf3568f637fde6b4fe12e815d8b050c98281b..e75a7bb20cb63d10940e070eabc576ec81013807 100644 --- a/XEngine_Source/XEngine_ModuleDatabase/ModuleDatabase_IDCard/ModuleDatabase_IDCard.h +++ b/XEngine_Source/XEngine_ModuleDatabase/ModuleDatabase_IDCard/ModuleDatabase_IDCard.h @@ -18,13 +18,13 @@ public: CModuleDatabase_IDCard(); ~CModuleDatabase_IDCard(); public: - BOOL ModuleDatabase_IDCard_Init(DATABASE_MYSQL_CONNECTINFO* pSt_DBConnector); - BOOL ModuleDatabase_IDCard_Destory(); - BOOL ModuleDatabase_IDCard_QueryRegion(XENGINE_IDREGION* pSt_IDRegion, XENGINE_IDCARDINFO* pSt_IDInfo); + bool ModuleDatabase_IDCard_Init(DATABASE_MYSQL_CONNECTINFO* pSt_DBConnector); + bool ModuleDatabase_IDCard_Destory(); + bool ModuleDatabase_IDCard_QueryRegion(XENGINE_IDREGION* pSt_IDRegion, XENGINE_IDCARDINFO* pSt_IDInfo); protected: - BOOL ModuleDatabase_IDCard_QueryProvincer(XENGINE_IDREGION* pSt_IDRegion, XENGINE_IDCARDINFO* pSt_IDInfo); - BOOL ModuleDatabase_IDCard_QueryCity(XENGINE_IDREGION* pSt_IDRegion, XENGINE_IDCARDINFO* pSt_IDInfo); - BOOL ModuleDatabase_IDCard_QueryCounty(XENGINE_IDREGION* pSt_IDRegion, XENGINE_IDCARDINFO* pSt_IDInfo); + bool ModuleDatabase_IDCard_QueryProvincer(XENGINE_IDREGION* pSt_IDRegion, XENGINE_IDCARDINFO* pSt_IDInfo); + bool ModuleDatabase_IDCard_QueryCity(XENGINE_IDREGION* pSt_IDRegion, XENGINE_IDCARDINFO* pSt_IDInfo); + bool ModuleDatabase_IDCard_QueryCounty(XENGINE_IDREGION* pSt_IDRegion, XENGINE_IDCARDINFO* pSt_IDInfo); private: XNETHANDLE xhDBSQL; }; \ No newline at end of file diff --git a/XEngine_Source/XEngine_ModuleDatabase/ModuleDatabase_ShortLink/ModuleDatabase_ShortLink.cpp b/XEngine_Source/XEngine_ModuleDatabase/ModuleDatabase_ShortLink/ModuleDatabase_ShortLink.cpp new file mode 100644 index 0000000000000000000000000000000000000000..abdedf1d11ce7d1748ecc9aaa86dcacd9e0b13fe --- /dev/null +++ b/XEngine_Source/XEngine_ModuleDatabase/ModuleDatabase_ShortLink/ModuleDatabase_ShortLink.cpp @@ -0,0 +1,225 @@ +#include "pch.h" +#include "ModuleDatabase_ShortLink.h" +/******************************************************************** +// Created: 2023/04/11 10:36:45 +// File Name: D:\XEngine_APIService\XEngine_Source\XEngine_ModuleDatabase\ModuleDatabase_ShortLink\ModuleDatabase_ShortLink.cpp +// File Path: D:\XEngine_APIService\XEngine_Source\XEngine_ModuleDatabase\ModuleDatabase_ShortLink +// File Base: ModuleDatabase_ShortLink +// File Ext: cpp +// Project: XEngine(网络通信引擎) +// Author: qyt +// Purpose: 短连接数据库管理器 +// History: +*********************************************************************/ +CModuleDatabase_ShortLink::CModuleDatabase_ShortLink() +{ +} +CModuleDatabase_ShortLink::~CModuleDatabase_ShortLink() +{ + +} +////////////////////////////////////////////////////////////////////////// +// 公有函数 +////////////////////////////////////////////////////////////////////////// +/******************************************************************** +函数名称:ModuleDatabase_ShortLink_Init +函数功能:初始化SQLITE文件系统 + 参数.一:pSt_DBConnector + In/Out:In + 类型:数据结构指针 + 可空:N + 意思:数据数据库信息 +返回值 + 类型:逻辑型 + 意思:是否成功 +备注: +*********************************************************************/ +bool CModuleDatabase_ShortLink::ModuleDatabase_ShortLink_Init(DATABASE_MYSQL_CONNECTINFO* pSt_DBConnector) +{ + DBModule_IsErrorOccur = false; + + if (NULL == pSt_DBConnector) + { + DBModule_IsErrorOccur = true; + DBModule_dwErrorCode = ERROR_APISERVICE_MODULE_DATABASE_PARAMENT; + return false; + } + //连接数据库 + _tcsxcpy(pSt_DBConnector->tszDBName, _X("XEngine_APISLink")); + if (!DataBase_MySQL_Connect(&xhDBSQL, pSt_DBConnector)) + { + DBModule_IsErrorOccur = true; + DBModule_dwErrorCode = DataBase_GetLastError(); + return false; + } + return true; +} +/******************************************************************** +函数名称:ModuleDatabase_ShortLink_Destory +函数功能:销毁 +返回值 + 类型:逻辑型 + 意思:是否成功 +备注: +*********************************************************************/ +bool CModuleDatabase_ShortLink::ModuleDatabase_ShortLink_Destory() +{ + DBModule_IsErrorOccur = false; + + DataBase_MySQL_Close(xhDBSQL); + return true; +} +/******************************************************************** +函数名称:ModuleDatabase_ShortLink_Insert +函数功能:插入一个短连接到数据库中 + 参数.一:pSt_SLinkInfo + In/Out:In + 类型:数据结构指针 + 可空:N + 意思:输入要插入的信息 +返回值 + 类型:逻辑型 + 意思:是否成功 +备注: +*********************************************************************/ +bool CModuleDatabase_ShortLink::ModuleDatabase_ShortLink_Insert(XENGINE_SHORTLINK* pSt_SLinkInfo) +{ + DBModule_IsErrorOccur = false; + + if (NULL == pSt_SLinkInfo) + { + DBModule_IsErrorOccur = true; + DBModule_dwErrorCode = ERROR_APISERVICE_MODULE_DATABASE_PARAMENT; + return false; + } + XCHAR tszSQLStatement[2024]; + memset(tszSQLStatement, '\0', sizeof(tszSQLStatement)); + + _xstprintf(tszSQLStatement, _X("INSERT INTO `XEngine_ShortLink` (tszFullUrl,tszShortUrl,tszKeyUrl,tszMapUrl,tszCreateTime) VALUES('%s','%s','%s','%s','%s')"), pSt_SLinkInfo->tszFullUrl, pSt_SLinkInfo->tszShotUrl, pSt_SLinkInfo->tszKeyUrl, pSt_SLinkInfo->tszMapUrl, pSt_SLinkInfo->tszCreateTime); + if (!DataBase_MySQL_Execute(xhDBSQL, tszSQLStatement)) + { + DBModule_IsErrorOccur = true; + DBModule_dwErrorCode = DataBase_GetLastError(); + return false; + } + return true; +} +/******************************************************************** +函数名称:ModuleDatabase_ShortLink_Query +函数功能:查询短连接 + 参数.一:pSt_SLinkInfo + In/Out:In/Out + 类型:数据结构指针 + 可空:N + 意思:输入查询的短连接,输出完整的连接 +返回值 + 类型:逻辑型 + 意思:是否成功 +备注: +*********************************************************************/ +bool CModuleDatabase_ShortLink::ModuleDatabase_ShortLink_Query(XENGINE_SHORTLINK* pSt_SLinkInfo) +{ + DBModule_IsErrorOccur = false; + + if ((NULL == pSt_SLinkInfo)) + { + DBModule_IsErrorOccur = true; + DBModule_dwErrorCode = ERROR_APISERVICE_MODULE_DATABASE_PARAMENT; + return false; + } + //查询 + XNETHANDLE xhTable = 0; + __int64u nllLine = 0; + __int64u nllRow = 0; + + XCHAR tszSQLStatement[1024]; + memset(tszSQLStatement, '\0', sizeof(tszSQLStatement)); + //名称为,消息名为必填 + _xstprintf(tszSQLStatement, _X("SELECT * FROM `XEngine_ShortLink` WHERE tszMapUrl = '%s'"), pSt_SLinkInfo->tszMapUrl); + if (!DataBase_MySQL_ExecuteQuery(xhDBSQL, &xhTable, tszSQLStatement, &nllLine, &nllRow)) + { + DBModule_IsErrorOccur = true; + DBModule_dwErrorCode = DataBase_GetLastError(); + return false; + } + if (nllLine <= 0) + { + DBModule_IsErrorOccur = true; + DBModule_dwErrorCode = ERROR_APISERVICE_MODULE_DATABASE_NOTFOUND; + return false; + } + for (__int64u i = 0; i < nllLine; i++) + { + XCHAR** pptszResult = DataBase_MySQL_GetResult(xhDBSQL, xhTable); + + if (NULL != pptszResult[0]) + { + pSt_SLinkInfo->nID = _ttxoi(pptszResult[0]); + } + if (NULL != pptszResult[1]) + { + _tcsxcpy(pSt_SLinkInfo->tszFullUrl, pptszResult[1]); + } + if (NULL != pptszResult[2]) + { + _tcsxcpy(pSt_SLinkInfo->tszShotUrl, pptszResult[2]); + } + if (NULL != pptszResult[3]) + { + _tcsxcpy(pSt_SLinkInfo->tszKeyUrl, pptszResult[3]); + } + if (NULL != pptszResult[4]) + { + _tcsxcpy(pSt_SLinkInfo->tszMapUrl, pptszResult[4]); + } + if (NULL != pptszResult[5]) + { + _tcsxcpy(pSt_SLinkInfo->tszCreateTime, pptszResult[5]); + } + } + DataBase_MySQL_FreeResult(xhDBSQL, xhTable); + return true; +} +/******************************************************************** +函数名称:ModuleDatabase_ShortLink_Delete +函数功能:删除短连接 + 参数.一:pSt_SLinkInfo + In/Out:In + 类型:数据结构指针 + 可空:N + 意思:输入要删除的短连接 +返回值 + 类型:逻辑型 + 意思:是否成功 +备注: +*********************************************************************/ +bool CModuleDatabase_ShortLink::ModuleDatabase_ShortLink_Delete(XENGINE_SHORTLINK* pSt_SLinkInfo) +{ + DBModule_IsErrorOccur = false; + + if (NULL == pSt_SLinkInfo) + { + DBModule_IsErrorOccur = true; + DBModule_dwErrorCode = ERROR_APISERVICE_MODULE_DATABASE_PARAMENT; + return false; + } + XCHAR tszSQLStatement[1024]; + memset(tszSQLStatement, '\0', sizeof(tszSQLStatement)); + + if (_tcsxlen(pSt_SLinkInfo->tszFullUrl) > 0) + { + _xstprintf(tszSQLStatement, _X("DELETE FROM `XEngine_ShortLink` WHERE tszFullUrl = '%s'"), pSt_SLinkInfo->tszFullUrl); + } + else + { + _xstprintf(tszSQLStatement, _X("DELETE FROM `XEngine_ShortLink` WHERE tszMapUrl = '%s'"), pSt_SLinkInfo->tszMapUrl); + } + + if (!DataBase_MySQL_Execute(xhDBSQL, tszSQLStatement)) + { + DBModule_IsErrorOccur = true; + DBModule_dwErrorCode = DataBase_GetLastError(); + return false; + } + return true; +} \ No newline at end of file diff --git a/XEngine_Source/XEngine_ModuleDatabase/ModuleDatabase_ShortLink/ModuleDatabase_ShortLink.h b/XEngine_Source/XEngine_ModuleDatabase/ModuleDatabase_ShortLink/ModuleDatabase_ShortLink.h new file mode 100644 index 0000000000000000000000000000000000000000..7d17e60257d36516b66843814e251db8980bb6ed --- /dev/null +++ b/XEngine_Source/XEngine_ModuleDatabase/ModuleDatabase_ShortLink/ModuleDatabase_ShortLink.h @@ -0,0 +1,29 @@ +#pragma once +/******************************************************************** +// Created: 2023/04/11 10:36:06 +// File Name: D:\XEngine_APIService\XEngine_Source\XEngine_ModuleDatabase\ModuleDatabase_ShortLink\ModuleDatabase_ShortLink.h +// File Path: D:\XEngine_APIService\XEngine_Source\XEngine_ModuleDatabase\ModuleDatabase_ShortLink +// File Base: ModuleDatabase_ShortLink +// File Ext: h +// Project: XEngine(网络通信引擎) +// Author: qyt +// Purpose: 短连接数据库管理器 +// History: +*********************************************************************/ + + +class CModuleDatabase_ShortLink +{ +public: + CModuleDatabase_ShortLink(); + ~CModuleDatabase_ShortLink(); +public: + bool ModuleDatabase_ShortLink_Init(DATABASE_MYSQL_CONNECTINFO* pSt_DBConnector); + bool ModuleDatabase_ShortLink_Destory(); + bool ModuleDatabase_ShortLink_Insert(XENGINE_SHORTLINK* pSt_SLinkInfo); + bool ModuleDatabase_ShortLink_Query(XENGINE_SHORTLINK* pSt_SLinkInfo); + bool ModuleDatabase_ShortLink_Delete(XENGINE_SHORTLINK* pSt_SLinkInfo); +protected: +private: + XNETHANDLE xhDBSQL; +}; \ No newline at end of file diff --git a/XEngine_Source/XEngine_ModuleDatabase/ModuleDatabase_XLog/ModuleDatabase_XLog.cpp b/XEngine_Source/XEngine_ModuleDatabase/ModuleDatabase_XLog/ModuleDatabase_XLog.cpp index ff3596403e6e16ee6c9d14e6b2a228f46cd1b6e4..5ca75f6dfea20b01f6f0f5fbda28cdab531c0dcf 100644 --- a/XEngine_Source/XEngine_ModuleDatabase/ModuleDatabase_XLog/ModuleDatabase_XLog.cpp +++ b/XEngine_Source/XEngine_ModuleDatabase/ModuleDatabase_XLog/ModuleDatabase_XLog.cpp @@ -24,40 +24,35 @@ CModuleDatabase_XLog::~CModuleDatabase_XLog() /******************************************************************** 函数名称:ModuleDatabase_XLog_Init 函数功能:初始化SQLITE文件系统 - 参数.一:lpszSQLFile + 参数.一:pSt_DBConnector In/Out:In - 类型:常量字符指针 + 类型:数据结构指针 可空:N - 意思:输入要操作的SQL文件 + 意思:输入要操作的数据库 返回值 类型:逻辑型 意思:是否成功 备注: *********************************************************************/ -BOOL CModuleDatabase_XLog::ModuleDatabase_XLog_Init(DATABASE_MYSQL_CONNECTINFO* pSt_DBConnector) +bool CModuleDatabase_XLog::ModuleDatabase_XLog_Init(DATABASE_MYSQL_CONNECTINFO* pSt_DBConnector) { - DBModule_IsErrorOccur = FALSE; + DBModule_IsErrorOccur = false; if (NULL == pSt_DBConnector) { - DBModule_IsErrorOccur = TRUE; + DBModule_IsErrorOccur = true; DBModule_dwErrorCode = ERROR_APISERVICE_MODULE_DATABASE_PARAMENT; - return FALSE; + return false; } -#ifdef _WINDOWS - LPCTSTR lpszStrCharset = _T("gbk"); -#else - LPCTSTR lpszStrCharset = _T("utf8"); -#endif //连接数据库 - _tcscpy(pSt_DBConnector->tszDBName, _T("XEngine_APILog")); - if (!DataBase_MySQL_Connect(&xhDBSQL, pSt_DBConnector, 5, TRUE, lpszStrCharset)) + _tcsxcpy(pSt_DBConnector->tszDBName, _X("XEngine_APILog")); + if (!DataBase_MySQL_Connect(&xhDBSQL, pSt_DBConnector)) { - DBModule_IsErrorOccur = TRUE; + DBModule_IsErrorOccur = true; DBModule_dwErrorCode = DataBase_GetLastError(); - return FALSE; + return false; } - return TRUE; + return true; } /******************************************************************** 函数名称:ModuleDatabase_XLog_Destory @@ -67,12 +62,12 @@ BOOL CModuleDatabase_XLog::ModuleDatabase_XLog_Init(DATABASE_MYSQL_CONNECTINFO* 意思:是否成功 备注: *********************************************************************/ -BOOL CModuleDatabase_XLog::ModuleDatabase_XLog_Destory() +bool CModuleDatabase_XLog::ModuleDatabase_XLog_Destory() { - DBModule_IsErrorOccur = FALSE; + DBModule_IsErrorOccur = false; DataBase_MySQL_Close(xhDBSQL); - return TRUE; + return true; } /******************************************************************** 函数名称:ModuleDatabase_XLog_Create @@ -87,20 +82,20 @@ BOOL CModuleDatabase_XLog::ModuleDatabase_XLog_Destory() 意思:是否成功 备注: *********************************************************************/ -BOOL CModuleDatabase_XLog::ModuleDatabase_XLog_Create(LPCTSTR lpszTableName) +bool CModuleDatabase_XLog::ModuleDatabase_XLog_Create(LPCXSTR lpszTableName) { - DBModule_IsErrorOccur = FALSE; + DBModule_IsErrorOccur = false; if (NULL == lpszTableName) { - DBModule_IsErrorOccur = TRUE; + DBModule_IsErrorOccur = true; DBModule_dwErrorCode = ERROR_APISERVICE_MODULE_DATABASE_PARAMENT; - return FALSE; + return false; } - TCHAR tszSQLStatement[10240]; + XCHAR tszSQLStatement[10240]; memset(tszSQLStatement, '\0', sizeof(tszSQLStatement)); - _stprintf(tszSQLStatement, _T("CREATE TABLE IF NOT EXISTS `%s` (" + _xstprintf(tszSQLStatement, _X("CREATE TABLE IF NOT EXISTS `%s` (" "`ID` int NOT NULL AUTO_INCREMENT," "`tszFileName` varchar(255) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NULL DEFAULT NULL COMMENT '文件名'," "`tszFuncName` varchar(255) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NULL DEFAULT NULL COMMENT '函数名'," @@ -113,11 +108,11 @@ BOOL CModuleDatabase_XLog::ModuleDatabase_XLog_Create(LPCTSTR lpszTableName) if (!DataBase_MySQL_Execute(xhDBSQL, tszSQLStatement)) { - DBModule_IsErrorOccur = TRUE; + DBModule_IsErrorOccur = true; DBModule_dwErrorCode = DataBase_GetLastError(); - return FALSE; + return false; } - return TRUE; + return true; } /******************************************************************** 函数名称:ModuleDatabase_XLog_Insert @@ -132,27 +127,27 @@ BOOL CModuleDatabase_XLog::ModuleDatabase_XLog_Create(LPCTSTR lpszTableName) 意思:是否成功 备注: *********************************************************************/ -BOOL CModuleDatabase_XLog::ModuleDatabase_XLog_Insert(XENGINE_XLOGINFO* pSt_XLogInfo) +bool CModuleDatabase_XLog::ModuleDatabase_XLog_Insert(XENGINE_XLOGINFO* pSt_XLogInfo) { - DBModule_IsErrorOccur = FALSE; + DBModule_IsErrorOccur = false; if (NULL == pSt_XLogInfo) { - DBModule_IsErrorOccur = TRUE; + DBModule_IsErrorOccur = true; DBModule_dwErrorCode = ERROR_APISERVICE_MODULE_DATABASE_PARAMENT; - return FALSE; + return false; } - TCHAR tszSQLStatement[11240]; + XCHAR tszSQLStatement[11240]; memset(tszSQLStatement, '\0', sizeof(tszSQLStatement)); - _stprintf(tszSQLStatement, _T("INSERT INTO `%s` (tszFileName,tszFuncName,nLogLine,nLogLevel,tszLogBuffer,tszLogTime) VALUES('%s','%s',%d,%d,'%s','%s')"), pSt_XLogInfo->tszTableName, pSt_XLogInfo->st_ProtocolLog.tszFileName, pSt_XLogInfo->st_ProtocolLog.tszFuncName, pSt_XLogInfo->st_ProtocolLog.nLogLine, pSt_XLogInfo->st_ProtocolLog.nLogLevel, pSt_XLogInfo->tszLogBuffer, pSt_XLogInfo->st_ProtocolLog.tszLogTimer); + _xstprintf(tszSQLStatement, _X("INSERT INTO `%s` (tszFileName,tszFuncName,nLogLine,nLogLevel,tszLogBuffer,tszLogTime) VALUES('%s','%s',%d,%d,'%s','%s')"), pSt_XLogInfo->tszTableName, pSt_XLogInfo->st_ProtocolLog.tszFileName, pSt_XLogInfo->st_ProtocolLog.tszFuncName, pSt_XLogInfo->st_ProtocolLog.nLogLine, pSt_XLogInfo->st_ProtocolLog.nLogLevel, pSt_XLogInfo->tszLogBuffer, pSt_XLogInfo->st_ProtocolLog.tszLogTimer); if (!DataBase_MySQL_Execute(xhDBSQL, tszSQLStatement)) { - DBModule_IsErrorOccur = TRUE; + DBModule_IsErrorOccur = true; DBModule_dwErrorCode = DataBase_GetLastError(); - return FALSE; + return false; } - return TRUE; + return true; } /******************************************************************** 函数名称:ModuleDatabase_XLog_Query @@ -187,71 +182,71 @@ BOOL CModuleDatabase_XLog::ModuleDatabase_XLog_Insert(XENGINE_XLOGINFO* pSt_XLog 意思:是否成功 备注: *********************************************************************/ -BOOL CModuleDatabase_XLog::ModuleDatabase_XLog_Query(XENGINE_XLOGINFO*** pppSt_XLogInfo, int* pInt_ListCount, LPCTSTR lpszTableName, LPCTSTR lpszTimeStart, LPCTSTR lpszTimeEnd) +bool CModuleDatabase_XLog::ModuleDatabase_XLog_Query(XENGINE_XLOGINFO*** pppSt_XLogInfo, int* pInt_ListCount, LPCXSTR lpszTableName, LPCXSTR lpszTimeStart, LPCXSTR lpszTimeEnd) { - DBModule_IsErrorOccur = FALSE; + DBModule_IsErrorOccur = false; if ((NULL == lpszTableName) || (NULL == lpszTimeStart) || (NULL == lpszTimeEnd)) { - DBModule_IsErrorOccur = TRUE; + DBModule_IsErrorOccur = true; DBModule_dwErrorCode = ERROR_APISERVICE_MODULE_DATABASE_PARAMENT; - return FALSE; + return false; } //查询 XNETHANDLE xhTable = 0; __int64u nllLine = 0; __int64u nllRow = 0; - TCHAR tszSQLStatement[1024]; + XCHAR tszSQLStatement[1024]; memset(tszSQLStatement, '\0', sizeof(tszSQLStatement)); //名称为,消息名为必填 - _stprintf_s(tszSQLStatement, _T("SELECT * FROM `%s` WHERE tszLogTime BETWEEN '%s' AND '%s'"), lpszTableName, lpszTimeStart, lpszTimeEnd); + _xstprintf(tszSQLStatement, _X("SELECT * FROM `%s` WHERE tszLogTime BETWEEN '%s' AND '%s'"), lpszTableName, lpszTimeStart, lpszTimeEnd); if (!DataBase_MySQL_ExecuteQuery(xhDBSQL, &xhTable, tszSQLStatement, &nllLine, &nllRow)) { - DBModule_IsErrorOccur = TRUE; + DBModule_IsErrorOccur = true; DBModule_dwErrorCode = DataBase_GetLastError(); - return FALSE; + return false; } if (nllLine <= 0) { - DBModule_IsErrorOccur = TRUE; + DBModule_IsErrorOccur = true; DBModule_dwErrorCode = ERROR_APISERVICE_MODULE_DATABASE_NOTFOUND; - return FALSE; + return false; } *pInt_ListCount = (int)nllLine; BaseLib_OperatorMemory_Malloc((XPPPMEM)pppSt_XLogInfo, (int)nllLine, sizeof(XENGINE_XLOGINFO)); for (__int64u i = 0; i < nllLine; i++) { - TCHAR** pptszResult = DataBase_MySQL_GetResult(xhDBSQL, xhTable); + XCHAR** pptszResult = DataBase_MySQL_GetResult(xhDBSQL, xhTable); - _tcscpy((*pppSt_XLogInfo)[i]->tszTableName, lpszTableName); + _tcsxcpy((*pppSt_XLogInfo)[i]->tszTableName, lpszTableName); if (NULL != pptszResult[1]) { - _tcscpy((*pppSt_XLogInfo)[i]->st_ProtocolLog.tszFileName, pptszResult[1]); + _tcsxcpy((*pppSt_XLogInfo)[i]->st_ProtocolLog.tszFileName, pptszResult[1]); } if (NULL != pptszResult[2]) { - _tcscpy((*pppSt_XLogInfo)[i]->st_ProtocolLog.tszFuncName, pptszResult[2]); + _tcsxcpy((*pppSt_XLogInfo)[i]->st_ProtocolLog.tszFuncName, pptszResult[2]); } if (NULL != pptszResult[3]) { - (*pppSt_XLogInfo)[i]->st_ProtocolLog.nLogLine = _ttoi(pptszResult[3]); + (*pppSt_XLogInfo)[i]->st_ProtocolLog.nLogLine = _ttxoi(pptszResult[3]); } if (NULL != pptszResult[4]) { - (*pppSt_XLogInfo)[i]->st_ProtocolLog.nLogLevel = _ttoi(pptszResult[4]); + (*pppSt_XLogInfo)[i]->st_ProtocolLog.nLogLevel = _ttxoi(pptszResult[4]); } if (NULL != pptszResult[5]) { - _tcscpy((*pppSt_XLogInfo)[i]->tszLogBuffer, pptszResult[5]); + _tcsxcpy((*pppSt_XLogInfo)[i]->tszLogBuffer, pptszResult[5]); } if (NULL != pptszResult[6]) { - _tcscpy((*pppSt_XLogInfo)[i]->st_ProtocolLog.tszLogTimer, pptszResult[6]); + _tcsxcpy((*pppSt_XLogInfo)[i]->st_ProtocolLog.tszLogTimer, pptszResult[6]); } } DataBase_MySQL_FreeResult(xhDBSQL, xhTable); - return TRUE; + return true; } /******************************************************************** 函数名称:ModuleDatabase_XLog_Delete @@ -266,25 +261,25 @@ BOOL CModuleDatabase_XLog::ModuleDatabase_XLog_Query(XENGINE_XLOGINFO*** pppSt_X 意思:是否成功 备注: *********************************************************************/ -BOOL CModuleDatabase_XLog::ModuleDatabase_XLog_Delete(LPCTSTR lpszTableName) +bool CModuleDatabase_XLog::ModuleDatabase_XLog_Delete(LPCXSTR lpszTableName) { - DBModule_IsErrorOccur = FALSE; + DBModule_IsErrorOccur = false; if (NULL == lpszTableName) { - DBModule_IsErrorOccur = TRUE; + DBModule_IsErrorOccur = true; DBModule_dwErrorCode = ERROR_APISERVICE_MODULE_DATABASE_PARAMENT; - return FALSE; + return false; } - TCHAR tszSQLStatement[10240]; + XCHAR tszSQLStatement[10240]; memset(tszSQLStatement, '\0', sizeof(tszSQLStatement)); - _stprintf(tszSQLStatement, _T("DROP TABLE IF EXISTS `%s`;"), lpszTableName); + _xstprintf(tszSQLStatement, _X("DROP TABLE IF EXISTS '%s'"), lpszTableName); if (!DataBase_MySQL_Execute(xhDBSQL, tszSQLStatement)) { - DBModule_IsErrorOccur = TRUE; + DBModule_IsErrorOccur = true; DBModule_dwErrorCode = DataBase_GetLastError(); - return FALSE; + return false; } - return TRUE; + return true; } \ No newline at end of file diff --git a/XEngine_Source/XEngine_ModuleDatabase/ModuleDatabase_XLog/ModuleDatabase_XLog.h b/XEngine_Source/XEngine_ModuleDatabase/ModuleDatabase_XLog/ModuleDatabase_XLog.h index 070c0d1663e735417f5ed56bb0128db36e304f04..91eebf5b7a8a508a6fe763ee2d93764953647dfb 100644 --- a/XEngine_Source/XEngine_ModuleDatabase/ModuleDatabase_XLog/ModuleDatabase_XLog.h +++ b/XEngine_Source/XEngine_ModuleDatabase/ModuleDatabase_XLog/ModuleDatabase_XLog.h @@ -18,12 +18,12 @@ public: CModuleDatabase_XLog(); ~CModuleDatabase_XLog(); public: - BOOL ModuleDatabase_XLog_Init(DATABASE_MYSQL_CONNECTINFO* pSt_DBConnector); - BOOL ModuleDatabase_XLog_Destory(); - BOOL ModuleDatabase_XLog_Create(LPCTSTR lpszTableName); - BOOL ModuleDatabase_XLog_Insert(XENGINE_XLOGINFO* pSt_XLogInfo); - BOOL ModuleDatabase_XLog_Query(XENGINE_XLOGINFO*** pppSt_XLogInfo, int* pInt_ListCount, LPCTSTR lpszTableName, LPCTSTR lpszTimeStart, LPCTSTR lpszTimeEnd); - BOOL ModuleDatabase_XLog_Delete(LPCTSTR lpszTableName); + bool ModuleDatabase_XLog_Init(DATABASE_MYSQL_CONNECTINFO* pSt_DBConnector); + bool ModuleDatabase_XLog_Destory(); + bool ModuleDatabase_XLog_Create(LPCXSTR lpszTableName); + bool ModuleDatabase_XLog_Insert(XENGINE_XLOGINFO* pSt_XLogInfo); + bool ModuleDatabase_XLog_Query(XENGINE_XLOGINFO*** pppSt_XLogInfo, int* pInt_ListCount, LPCXSTR lpszTableName, LPCXSTR lpszTimeStart, LPCXSTR lpszTimeEnd); + bool ModuleDatabase_XLog_Delete(LPCXSTR lpszTableName); protected: private: XNETHANDLE xhDBSQL; diff --git a/XEngine_Source/XEngine_ModuleDatabase/ModuleDatabase_ZIPCode/ModuleDatabase_ZIPCode.cpp b/XEngine_Source/XEngine_ModuleDatabase/ModuleDatabase_ZIPCode/ModuleDatabase_ZIPCode.cpp index 584fa0a774f49faa78156ea5786e4393a587c3c5..bec66a7225c556b91ede4bd866e94c2097cb9408 100644 --- a/XEngine_Source/XEngine_ModuleDatabase/ModuleDatabase_ZIPCode/ModuleDatabase_ZIPCode.cpp +++ b/XEngine_Source/XEngine_ModuleDatabase/ModuleDatabase_ZIPCode/ModuleDatabase_ZIPCode.cpp @@ -34,30 +34,25 @@ CModuleDatabase_ZIPCode::~CModuleDatabase_ZIPCode() 意思:是否成功 备注: *********************************************************************/ -BOOL CModuleDatabase_ZIPCode::ModuleDatabase_ZIPCode_Init(DATABASE_MYSQL_CONNECTINFO* pSt_DBConnector) +bool CModuleDatabase_ZIPCode::ModuleDatabase_ZIPCode_Init(DATABASE_MYSQL_CONNECTINFO* pSt_DBConnector) { - DBModule_IsErrorOccur = FALSE; + DBModule_IsErrorOccur = false; if (NULL == pSt_DBConnector) { - DBModule_IsErrorOccur = TRUE; + DBModule_IsErrorOccur = true; DBModule_dwErrorCode = ERROR_APISERVICE_MODULE_DATABASE_PARAMENT; - return FALSE; + return false; } -#ifdef _WINDOWS - LPCTSTR lpszStrCharset = _T("gbk"); -#else - LPCTSTR lpszStrCharset = _T("utf8"); -#endif //连接数据库 - _tcscpy(pSt_DBConnector->tszDBName, _T("XEngine_APIInfo")); - if (!DataBase_MySQL_Connect(&xhDBSQL, pSt_DBConnector, 5, TRUE, lpszStrCharset)) + _tcsxcpy(pSt_DBConnector->tszDBName, _X("XEngine_APIInfo")); + if (!DataBase_MySQL_Connect(&xhDBSQL, pSt_DBConnector)) { - DBModule_IsErrorOccur = TRUE; + DBModule_IsErrorOccur = true; DBModule_dwErrorCode = DataBase_GetLastError(); - return FALSE; + return false; } - return TRUE; + return true; } /******************************************************************** 函数名称:ModuleDatabase_ZIPCode_Destory @@ -67,12 +62,12 @@ BOOL CModuleDatabase_ZIPCode::ModuleDatabase_ZIPCode_Init(DATABASE_MYSQL_CONNECT 意思:是否成功 备注: *********************************************************************/ -BOOL CModuleDatabase_ZIPCode::ModuleDatabase_ZIPCode_Destory() +bool CModuleDatabase_ZIPCode::ModuleDatabase_ZIPCode_Destory() { - DBModule_IsErrorOccur = FALSE; + DBModule_IsErrorOccur = false; DataBase_MySQL_Close(xhDBSQL); - return TRUE; + return true; } /******************************************************************** 函数名称:ModuleDatabase_ZIPCode_QueryZIPCode @@ -87,57 +82,57 @@ BOOL CModuleDatabase_ZIPCode::ModuleDatabase_ZIPCode_Destory() 意思:是否成功 备注: *********************************************************************/ -BOOL CModuleDatabase_ZIPCode::ModuleDatabase_ZIPCode_QueryZIPCode(XENGINE_ZIPINFO* pSt_ZIPInfo) +bool CModuleDatabase_ZIPCode::ModuleDatabase_ZIPCode_QueryZIPCode(XENGINE_ZIPINFO* pSt_ZIPInfo) { - DBModule_IsErrorOccur = FALSE; + DBModule_IsErrorOccur = false; //查询 __int64u nLine = 0; __int64u nRow = 0; XNETHANDLE xhTable = 0; - TCHAR tszSQLStatement[1024]; + XCHAR tszSQLStatement[1024]; memset(tszSQLStatement, '\0', sizeof(tszSQLStatement)); - _stprintf(tszSQLStatement, _T("SELECT * FROM `AdministrativeArea` WHERE zip_code = %d"), pSt_ZIPInfo->nZipCode); + _xstprintf(tszSQLStatement, _X("SELECT * FROM `AdministrativeArea` WHERE zip_code = %d"), pSt_ZIPInfo->nZipCode); if (!DataBase_MySQL_ExecuteQuery(xhDBSQL, &xhTable, tszSQLStatement, &nLine, &nRow)) { - DBModule_IsErrorOccur = TRUE; + DBModule_IsErrorOccur = true; DBModule_dwErrorCode = DataBase_GetLastError(); - return FALSE; + return false; } if (nLine <= 0) { - DBModule_IsErrorOccur = TRUE; + DBModule_IsErrorOccur = true; DBModule_dwErrorCode = ERROR_APISERVICE_MODULE_DATABASE_NOTFOUND; - return FALSE; + return false; } - TCHAR** pptszResult = DataBase_MySQL_GetResult(xhDBSQL, xhTable); + XCHAR** pptszResult = DataBase_MySQL_GetResult(xhDBSQL, xhTable); //三个级别 省->市->区/县 - _tcscpy(pSt_ZIPInfo->tszPinYin, pptszResult[6]); - pSt_ZIPInfo->nLevel = _ttoi(pptszResult[5]); - pSt_ZIPInfo->nAreaCode = _ttoi(pptszResult[7]); - pSt_ZIPInfo->dlLng = _ttof(pptszResult[10]); - pSt_ZIPInfo->dlLat = _ttof(pptszResult[11]); + _tcsxcpy(pSt_ZIPInfo->tszPinYin, pptszResult[6]); + pSt_ZIPInfo->nLevel = _ttxoi(pptszResult[5]); + pSt_ZIPInfo->nAreaCode = _ttxoi(pptszResult[7]); + pSt_ZIPInfo->dlLng = _ttxof(pptszResult[10]); + pSt_ZIPInfo->dlLat = _ttxof(pptszResult[11]); if (3 == pSt_ZIPInfo->nLevel) { //获取上级节点 int nParentID = 0; - _tcscpy(pSt_ZIPInfo->tszCounty, pptszResult[2]); - ModuleDatabase_ZIPCode_QueryParentByID(_ttoi(pptszResult[1]), pSt_ZIPInfo->tszCity, &nParentID); + _tcsxcpy(pSt_ZIPInfo->tszCounty, pptszResult[2]); + ModuleDatabase_ZIPCode_QueryParentByID(_ttxoi(pptszResult[1]), pSt_ZIPInfo->tszCity, &nParentID); ModuleDatabase_ZIPCode_QueryParentByID(nParentID, pSt_ZIPInfo->tszProvincer, &nParentID); } else if (2 == pSt_ZIPInfo->nLevel) { - _tcscpy(pSt_ZIPInfo->tszCity, pptszResult[2]); - ModuleDatabase_ZIPCode_QueryParentByID(_ttoi(pptszResult[1]), pSt_ZIPInfo->tszProvincer); + _tcsxcpy(pSt_ZIPInfo->tszCity, pptszResult[2]); + ModuleDatabase_ZIPCode_QueryParentByID(_ttxoi(pptszResult[1]), pSt_ZIPInfo->tszProvincer); } else { - _tcscpy(pSt_ZIPInfo->tszProvincer, pptszResult[2]); + _tcsxcpy(pSt_ZIPInfo->tszProvincer, pptszResult[2]); } DataBase_MySQL_FreeResult(xhDBSQL, xhTable); - return TRUE; + return true; } /******************************************************************** 函数名称:ModuleDatabase_ZIPCode_QueryName @@ -152,70 +147,70 @@ BOOL CModuleDatabase_ZIPCode::ModuleDatabase_ZIPCode_QueryZIPCode(XENGINE_ZIPINF 意思:是否成功 备注: *********************************************************************/ -BOOL CModuleDatabase_ZIPCode::ModuleDatabase_ZIPCode_QueryName(XENGINE_ZIPINFO* pSt_ZIPInfo) +bool CModuleDatabase_ZIPCode::ModuleDatabase_ZIPCode_QueryName(XENGINE_ZIPINFO* pSt_ZIPInfo) { - DBModule_IsErrorOccur = FALSE; + DBModule_IsErrorOccur = false; if (NULL == pSt_ZIPInfo) { - DBModule_IsErrorOccur = TRUE; + DBModule_IsErrorOccur = true; DBModule_dwErrorCode = ERROR_APISERVICE_MODULE_DATABASE_PARAMENT; - return FALSE; + return false; } //查询 __int64u nLine = 0; __int64u nRow = 0; XNETHANDLE xhTable = 0; - TCHAR tszSQLStatement[1024]; + XCHAR tszSQLStatement[1024]; memset(tszSQLStatement, '\0', sizeof(tszSQLStatement)); - if ((_tcslen(pSt_ZIPInfo->tszCounty) > 0) && (_tcslen(pSt_ZIPInfo->tszCity) == 0)) + if ((_tcsxlen(pSt_ZIPInfo->tszCounty) > 0) && (_tcsxlen(pSt_ZIPInfo->tszCity) == 0)) { int nParentID = 0; ModuleDatabase_ZIPCode_QueryParentByName(pSt_ZIPInfo->tszCounty, &nParentID); ModuleDatabase_ZIPCode_QueryParentByID(nParentID, pSt_ZIPInfo->tszCity, &nParentID); ModuleDatabase_ZIPCode_QueryParentByID(nParentID, pSt_ZIPInfo->tszProvincer, &nParentID); - _stprintf(tszSQLStatement, _T("SELECT * FROM `AdministrativeArea` WHERE name = '%s'"), pSt_ZIPInfo->tszCounty); + _xstprintf(tszSQLStatement, _X("SELECT * FROM `AdministrativeArea` WHERE name = '%s'"), pSt_ZIPInfo->tszCounty); } - else if ((_tcslen(pSt_ZIPInfo->tszCounty) == 0) && (_tcslen(pSt_ZIPInfo->tszCity) > 0)) + else if ((_tcsxlen(pSt_ZIPInfo->tszCounty) == 0) && (_tcsxlen(pSt_ZIPInfo->tszCity) > 0)) { int nParentID = 0; ModuleDatabase_ZIPCode_QueryParentByName(pSt_ZIPInfo->tszCity, &nParentID); ModuleDatabase_ZIPCode_QueryParentByID(nParentID, pSt_ZIPInfo->tszProvincer, &nParentID); - _stprintf(tszSQLStatement, _T("SELECT * FROM `AdministrativeArea` WHERE name = '%s'"), pSt_ZIPInfo->tszCity); + _xstprintf(tszSQLStatement, _X("SELECT * FROM `AdministrativeArea` WHERE name = '%s'"), pSt_ZIPInfo->tszCity); } else { - DBModule_IsErrorOccur = TRUE; + DBModule_IsErrorOccur = true; DBModule_dwErrorCode = ERROR_APISERVICE_MODULE_DATABASE_NOTSET; - return FALSE; + return false; } //查询内容 if (!DataBase_MySQL_ExecuteQuery(xhDBSQL, &xhTable, tszSQLStatement, &nLine, &nRow)) { - DBModule_IsErrorOccur = TRUE; + DBModule_IsErrorOccur = true; DBModule_dwErrorCode = DataBase_GetLastError(); - return FALSE; + return false; } if (nLine <= 0) { - DBModule_IsErrorOccur = TRUE; + DBModule_IsErrorOccur = true; DBModule_dwErrorCode = ERROR_APISERVICE_MODULE_DATABASE_NOTFOUND; - return FALSE; + return false; } - TCHAR** pptszResult = DataBase_MySQL_GetResult(xhDBSQL, xhTable); - pSt_ZIPInfo->nLevel = _ttoi(pptszResult[5]); - pSt_ZIPInfo->nAreaCode = _ttoi(pptszResult[7]); - pSt_ZIPInfo->nZipCode = _ttoi(pptszResult[8]); - pSt_ZIPInfo->dlLng = _ttof(pptszResult[10]); - pSt_ZIPInfo->dlLat = _ttof(pptszResult[11]); - _tcscpy(pSt_ZIPInfo->tszPinYin, pptszResult[6]); + XCHAR** pptszResult = DataBase_MySQL_GetResult(xhDBSQL, xhTable); + pSt_ZIPInfo->nLevel = _ttxoi(pptszResult[5]); + pSt_ZIPInfo->nAreaCode = _ttxoi(pptszResult[7]); + pSt_ZIPInfo->nZipCode = _ttxoi(pptszResult[8]); + pSt_ZIPInfo->dlLng = _ttxof(pptszResult[10]); + pSt_ZIPInfo->dlLat = _ttxof(pptszResult[11]); + _tcsxcpy(pSt_ZIPInfo->tszPinYin, pptszResult[6]); DataBase_MySQL_FreeResult(xhDBSQL, xhTable); - return TRUE; + return true; } ////////////////////////////////////////////////////////////////////////// // 保护函数 @@ -243,46 +238,46 @@ BOOL CModuleDatabase_ZIPCode::ModuleDatabase_ZIPCode_QueryName(XENGINE_ZIPINFO* 意思:是否成功 备注: *********************************************************************/ -BOOL CModuleDatabase_ZIPCode::ModuleDatabase_ZIPCode_QueryParentByID(int nParentID, TCHAR* ptszParentStr, int* pInt_ParentID /* = NULL */) +bool CModuleDatabase_ZIPCode::ModuleDatabase_ZIPCode_QueryParentByID(int nParentID, XCHAR* ptszParentStr, int* pInt_ParentID /* = NULL */) { - DBModule_IsErrorOccur = FALSE; + DBModule_IsErrorOccur = false; if (NULL == ptszParentStr) { - DBModule_IsErrorOccur = TRUE; + DBModule_IsErrorOccur = true; DBModule_dwErrorCode = ERROR_APISERVICE_MODULE_DATABASE_PARAMENT; - return FALSE; + return false; } //查询 __int64u nLine = 0; __int64u nRow = 0; XNETHANDLE xhTable = 0; - TCHAR tszSQLStatement[1024]; + XCHAR tszSQLStatement[1024]; memset(tszSQLStatement, '\0', sizeof(tszSQLStatement)); - _stprintf(tszSQLStatement, _T("SELECT * FROM `AdministrativeArea` WHERE id = %d"), nParentID); + _xstprintf(tszSQLStatement, _X("SELECT * FROM `AdministrativeArea` WHERE id = %d"), nParentID); if (!DataBase_MySQL_ExecuteQuery(xhDBSQL, &xhTable, tszSQLStatement, &nLine, &nRow)) { - DBModule_IsErrorOccur = TRUE; + DBModule_IsErrorOccur = true; DBModule_dwErrorCode = DataBase_GetLastError(); - return FALSE; + return false; } if (nLine <= 0) { - DBModule_IsErrorOccur = TRUE; + DBModule_IsErrorOccur = true; DBModule_dwErrorCode = ERROR_APISERVICE_MODULE_DATABASE_NOTFOUND; - return FALSE; + return false; } - TCHAR** pptszResult = DataBase_MySQL_GetResult(xhDBSQL, xhTable); + XCHAR** pptszResult = DataBase_MySQL_GetResult(xhDBSQL, xhTable); if (NULL != pInt_ParentID) { - *pInt_ParentID = _ttoi(pptszResult[1]); + *pInt_ParentID = _ttxoi(pptszResult[1]); } - _tcscpy(ptszParentStr, pptszResult[3]); + _tcsxcpy(ptszParentStr, pptszResult[3]); DataBase_MySQL_FreeResult(xhDBSQL, xhTable); - return TRUE; + return true; } /******************************************************************** 函数名称:ModuleDatabase_ZIPCode_QueryParentByName @@ -302,41 +297,41 @@ BOOL CModuleDatabase_ZIPCode::ModuleDatabase_ZIPCode_QueryParentByID(int nParent 意思:是否成功 备注: *********************************************************************/ -BOOL CModuleDatabase_ZIPCode::ModuleDatabase_ZIPCode_QueryParentByName(LPCTSTR lpszName, int* pInt_ParentID /* = NULL */) +bool CModuleDatabase_ZIPCode::ModuleDatabase_ZIPCode_QueryParentByName(LPCXSTR lpszName, int* pInt_ParentID /* = NULL */) { - DBModule_IsErrorOccur = FALSE; + DBModule_IsErrorOccur = false; if (NULL == lpszName) { - DBModule_IsErrorOccur = TRUE; + DBModule_IsErrorOccur = true; DBModule_dwErrorCode = ERROR_APISERVICE_MODULE_DATABASE_PARAMENT; - return FALSE; + return false; } //查询 __int64u nLine = 0; __int64u nRow = 0; XNETHANDLE xhTable = 0; - TCHAR tszSQLStatement[1024]; + XCHAR tszSQLStatement[1024]; memset(tszSQLStatement, '\0', sizeof(tszSQLStatement)); - _stprintf(tszSQLStatement, _T("SELECT * FROM `AdministrativeArea` WHERE name = '%s'"), lpszName); + _xstprintf(tszSQLStatement, _X("SELECT * FROM `AdministrativeArea` WHERE name = '%s'"), lpszName); if (!DataBase_MySQL_ExecuteQuery(xhDBSQL, &xhTable, tszSQLStatement, &nLine, &nRow)) { - DBModule_IsErrorOccur = TRUE; + DBModule_IsErrorOccur = true; DBModule_dwErrorCode = DataBase_GetLastError(); - return FALSE; + return false; } if (nLine <= 0) { - DBModule_IsErrorOccur = TRUE; + DBModule_IsErrorOccur = true; DBModule_dwErrorCode = ERROR_APISERVICE_MODULE_DATABASE_NOTFOUND; - return FALSE; + return false; } - TCHAR** pptszResult = DataBase_MySQL_GetResult(xhDBSQL, xhTable); + XCHAR** pptszResult = DataBase_MySQL_GetResult(xhDBSQL, xhTable); if (NULL != pInt_ParentID) { - *pInt_ParentID = _ttoi(pptszResult[1]); + *pInt_ParentID = _ttxoi(pptszResult[1]); } DataBase_MySQL_FreeResult(xhDBSQL, xhTable); - return TRUE; + return true; } \ No newline at end of file diff --git a/XEngine_Source/XEngine_ModuleDatabase/ModuleDatabase_ZIPCode/ModuleDatabase_ZIPCode.h b/XEngine_Source/XEngine_ModuleDatabase/ModuleDatabase_ZIPCode/ModuleDatabase_ZIPCode.h index c44cd2a68a6ab3f271b97b28e262942fe8625338..68e79b5d01efa524d733c0014f6246b24113bb75 100644 --- a/XEngine_Source/XEngine_ModuleDatabase/ModuleDatabase_ZIPCode/ModuleDatabase_ZIPCode.h +++ b/XEngine_Source/XEngine_ModuleDatabase/ModuleDatabase_ZIPCode/ModuleDatabase_ZIPCode.h @@ -18,13 +18,13 @@ public: CModuleDatabase_ZIPCode(); ~CModuleDatabase_ZIPCode(); public: - BOOL ModuleDatabase_ZIPCode_Init(DATABASE_MYSQL_CONNECTINFO* pSt_DBConnector); - BOOL ModuleDatabase_ZIPCode_Destory(); - BOOL ModuleDatabase_ZIPCode_QueryZIPCode(XENGINE_ZIPINFO* pSt_ZIPInfo); - BOOL ModuleDatabase_ZIPCode_QueryName(XENGINE_ZIPINFO* pSt_ZIPInfo); + bool ModuleDatabase_ZIPCode_Init(DATABASE_MYSQL_CONNECTINFO* pSt_DBConnector); + bool ModuleDatabase_ZIPCode_Destory(); + bool ModuleDatabase_ZIPCode_QueryZIPCode(XENGINE_ZIPINFO* pSt_ZIPInfo); + bool ModuleDatabase_ZIPCode_QueryName(XENGINE_ZIPINFO* pSt_ZIPInfo); protected: - BOOL ModuleDatabase_ZIPCode_QueryParentByID(int nParentID, TCHAR* ptszParentStr, int* pInt_ParentID = NULL); - BOOL ModuleDatabase_ZIPCode_QueryParentByName(LPCTSTR lpszName, int* pInt_ParentID = NULL); + bool ModuleDatabase_ZIPCode_QueryParentByID(int nParentID, XCHAR* ptszParentStr, int* pInt_ParentID = NULL); + bool ModuleDatabase_ZIPCode_QueryParentByName(LPCXSTR lpszName, int* pInt_ParentID = NULL); private: XNETHANDLE xhDBSQL; }; \ No newline at end of file diff --git a/XEngine_Source/XEngine_ModuleDatabase/XEngine_ModuleDatabase.def b/XEngine_Source/XEngine_ModuleDatabase/XEngine_ModuleDatabase.def index 63e77738230900d28979f0a43d7349af4c8c0b61..65e6cdb80e05d290902a87a25a2a850b4103b91f 100644 --- a/XEngine_Source/XEngine_ModuleDatabase/XEngine_ModuleDatabase.def +++ b/XEngine_Source/XEngine_ModuleDatabase/XEngine_ModuleDatabase.def @@ -21,4 +21,10 @@ EXPORTS ModuleDatabase_XLog_Create ModuleDatabase_XLog_Insert ModuleDatabase_XLog_Query - ModuleDatabase_XLog_Delete \ No newline at end of file + ModuleDatabase_XLog_Delete + + ModuleDatabase_ShortLink_Init + ModuleDatabase_ShortLink_Destory + ModuleDatabase_ShortLink_Insert + ModuleDatabase_ShortLink_Query + ModuleDatabase_ShortLink_Delete \ No newline at end of file diff --git a/XEngine_Source/XEngine_ModuleDatabase/XEngine_ModuleDatabase.vcxproj b/XEngine_Source/XEngine_ModuleDatabase/XEngine_ModuleDatabase.vcxproj index 399ff797bcf692216eeaed41c3343f13b9ce50be..e511582dbc2da3ff8d13a90c4d91df2bee782fbf 100644 --- a/XEngine_Source/XEngine_ModuleDatabase/XEngine_ModuleDatabase.vcxproj +++ b/XEngine_Source/XEngine_ModuleDatabase/XEngine_ModuleDatabase.vcxproj @@ -30,27 +30,27 @@ DynamicLibrary true v143 - MultiByte + Unicode DynamicLibrary false v143 true - MultiByte + Unicode DynamicLibrary true v143 - MultiByte + Unicode DynamicLibrary false v143 true - MultiByte + Unicode @@ -166,6 +166,7 @@ + @@ -176,6 +177,7 @@ + diff --git a/XEngine_Source/XEngine_ModuleDatabase/XEngine_ModuleDatabase.vcxproj.filters b/XEngine_Source/XEngine_ModuleDatabase/XEngine_ModuleDatabase.vcxproj.filters index 0e2456cde46e811f1d9fcc6b74ed388075e0fd91..568540c788cee61d0e41b3572508d987cded4e55 100644 --- a/XEngine_Source/XEngine_ModuleDatabase/XEngine_ModuleDatabase.vcxproj.filters +++ b/XEngine_Source/XEngine_ModuleDatabase/XEngine_ModuleDatabase.vcxproj.filters @@ -37,6 +37,12 @@ {a88dc16d-2168-4784-9f3b-8c2e924f49f3} + + {092178a8-793e-4724-9249-09912b3e6cba} + + + {358aae26-1704-4e1e-bca3-b48c05449281} + @@ -63,6 +69,9 @@ 头文件\ModuleDatabase_XLog + + 头文件\ModuleDatabase_ShortLink + @@ -83,6 +92,9 @@ 源文件\ModuleDatabase_XLog + + 源文件\ModuleDatabase_ShortLink + diff --git a/XEngine_Source/XEngine_ModuleDatabase/dllmain.cpp b/XEngine_Source/XEngine_ModuleDatabase/dllmain.cpp index daed8c8f7ac50ca1466016a0529648d18125a7e7..594ff2123d474b129bb2014fb572f03c9741bf0b 100644 --- a/XEngine_Source/XEngine_ModuleDatabase/dllmain.cpp +++ b/XEngine_Source/XEngine_ModuleDatabase/dllmain.cpp @@ -1,9 +1,9 @@ // dllmain.cpp : 定义 DLL 应用程序的入口点。 #include "pch.h" -BOOL APIENTRY DllMain( HMODULE hModule, - DWORD ul_reason_for_call, - LPVOID lpReserved +bool APIENTRY DllMain( HMODULE hModule, + XLONG ul_reason_for_call, + XPVOID lpReserved ) { switch (ul_reason_for_call) @@ -14,6 +14,6 @@ BOOL APIENTRY DllMain( HMODULE hModule, case DLL_PROCESS_DETACH: break; } - return TRUE; + return true; } diff --git a/XEngine_Source/XEngine_ModuleDatabase/pch.cpp b/XEngine_Source/XEngine_ModuleDatabase/pch.cpp index 4c372662b2082faeebda00b9d193b0364d1ea38e..8d822a56dc2e18bf3016e2183ea0e1f176727f44 100644 --- a/XEngine_Source/XEngine_ModuleDatabase/pch.cpp +++ b/XEngine_Source/XEngine_ModuleDatabase/pch.cpp @@ -3,6 +3,7 @@ #include "ModuleDatabase_Bank/ModuleDatabase_Bank.h" #include "ModuleDatabase_ZIPCode/ModuleDatabase_ZIPCode.h" #include "ModuleDatabase_XLog/ModuleDatabase_XLog.h" +#include "ModuleDatabase_ShortLink/ModuleDatabase_ShortLink.h" /******************************************************************** // Created: 2022/02/28 13:26:15 // File Name: D:\XEngine_IPInfo\XEngine_Source\XEngine_ModuleDatabase\pch.cpp @@ -14,17 +15,18 @@ // Purpose: 导出函数实现 // History: *********************************************************************/ -DWORD DBModule_IsErrorOccur = FALSE; -BOOL DBModule_dwErrorCode = 0; +bool DBModule_IsErrorOccur = false; +XLONG DBModule_dwErrorCode = 0; ////////////////////////////////////////////////////////////////////////// CModuleDatabase_IDCard m_IDCard; CModuleDatabase_Bank m_Bank; CModuleDatabase_ZIPCode m_ZIPCode; CModuleDatabase_XLog m_XLog; +CModuleDatabase_ShortLink m_ShortLink; ////////////////////////////////////////////////////////////////////////// /// 导出的函数 ////////////////////////////////////////////////////////////////////////// -extern "C" DWORD ModuleDB_GetLastError(int* pInt_SysError) +extern "C" XLONG ModuleDB_GetLastError(int* pInt_SysError) { if (NULL != pInt_SysError) { @@ -35,76 +37,99 @@ extern "C" DWORD ModuleDB_GetLastError(int* pInt_SysError) /************************************************************************/ /* 导出的身份证地址操作函数 */ /************************************************************************/ -extern "C" BOOL ModuleDatabase_IDCard_Init(DATABASE_MYSQL_CONNECTINFO * pSt_DBConnector) +extern "C" bool ModuleDatabase_IDCard_Init(DATABASE_MYSQL_CONNECTINFO * pSt_DBConnector) { return m_IDCard.ModuleDatabase_IDCard_Init(pSt_DBConnector); } -extern "C" BOOL ModuleDatabase_IDCard_Destory() +extern "C" bool ModuleDatabase_IDCard_Destory() { return m_IDCard.ModuleDatabase_IDCard_Destory(); } -extern "C" BOOL ModuleDatabase_IDCard_QueryRegion(XENGINE_IDREGION * pSt_IDRegion, XENGINE_IDCARDINFO * pSt_IDInfo) +extern "C" bool ModuleDatabase_IDCard_QueryRegion(XENGINE_IDREGION * pSt_IDRegion, XENGINE_IDCARDINFO * pSt_IDInfo) { return m_IDCard.ModuleDatabase_IDCard_QueryRegion(pSt_IDRegion, pSt_IDInfo); } /************************************************************************/ /* 导出的银行卡信息函数 */ /************************************************************************/ -extern "C" BOOL ModuleDatabase_Bank_Init(DATABASE_MYSQL_CONNECTINFO * pSt_DBConnector) +extern "C" bool ModuleDatabase_Bank_Init(DATABASE_MYSQL_CONNECTINFO * pSt_DBConnector) { return m_Bank.ModuleDatabase_Bank_Init(pSt_DBConnector); } -extern "C" BOOL ModuleDatabase_Bank_Destory() +extern "C" bool ModuleDatabase_Bank_Destory() { return m_Bank.ModuleDatabase_Bank_Destory(); } -extern "C" BOOL ModuleDatabase_Bank_Query(XENGINE_BANKINFO * pSt_BankInfo) +extern "C" bool ModuleDatabase_Bank_Query(XENGINE_BANKINFO * pSt_BankInfo) { return m_Bank.ModuleDatabase_Bank_Query(pSt_BankInfo); } /************************************************************************/ /* 导出的邮编行政信息函数 */ /************************************************************************/ -extern "C" BOOL ModuleDatabase_ZIPCode_Init(DATABASE_MYSQL_CONNECTINFO * pSt_DBConnector) +extern "C" bool ModuleDatabase_ZIPCode_Init(DATABASE_MYSQL_CONNECTINFO * pSt_DBConnector) { return m_ZIPCode.ModuleDatabase_ZIPCode_Init(pSt_DBConnector); } -extern "C" BOOL ModuleDatabase_ZIPCode_Destory() +extern "C" bool ModuleDatabase_ZIPCode_Destory() { return m_ZIPCode.ModuleDatabase_ZIPCode_Destory(); } -extern "C" BOOL ModuleDatabase_ZIPCode_QueryZIPCode(XENGINE_ZIPINFO * pSt_ZIPInfo) +extern "C" bool ModuleDatabase_ZIPCode_QueryZIPCode(XENGINE_ZIPINFO * pSt_ZIPInfo) { return m_ZIPCode.ModuleDatabase_ZIPCode_QueryZIPCode(pSt_ZIPInfo); } -extern "C" BOOL ModuleDatabase_ZIPCode_QueryName(XENGINE_ZIPINFO * pSt_ZIPInfo) +extern "C" bool ModuleDatabase_ZIPCode_QueryName(XENGINE_ZIPINFO * pSt_ZIPInfo) { return m_ZIPCode.ModuleDatabase_ZIPCode_QueryName(pSt_ZIPInfo); } /************************************************************************/ /* 导出的日志服务数据库函数 */ /************************************************************************/ -extern "C" BOOL ModuleDatabase_XLog_Init(DATABASE_MYSQL_CONNECTINFO * pSt_DBConnector) +extern "C" bool ModuleDatabase_XLog_Init(DATABASE_MYSQL_CONNECTINFO * pSt_DBConnector) { return m_XLog.ModuleDatabase_XLog_Init(pSt_DBConnector); } -extern "C" BOOL ModuleDatabase_XLog_Destory() +extern "C" bool ModuleDatabase_XLog_Destory() { return m_XLog.ModuleDatabase_XLog_Destory(); } -extern "C" BOOL ModuleDatabase_XLog_Create(LPCTSTR lpszTableName) +extern "C" bool ModuleDatabase_XLog_Create(LPCXSTR lpszTableName) { return m_XLog.ModuleDatabase_XLog_Create(lpszTableName); } -extern "C" BOOL ModuleDatabase_XLog_Insert(XENGINE_XLOGINFO * pSt_XLogInfo) +extern "C" bool ModuleDatabase_XLog_Insert(XENGINE_XLOGINFO * pSt_XLogInfo) { return m_XLog.ModuleDatabase_XLog_Insert(pSt_XLogInfo); } -extern "C" BOOL ModuleDatabase_XLog_Query(XENGINE_XLOGINFO * **pppSt_XLogInfo, int* pInt_ListCount, LPCTSTR lpszTableName, LPCTSTR lpszTimeStart, LPCTSTR lpszTimeEnd) +extern "C" bool ModuleDatabase_XLog_Query(XENGINE_XLOGINFO * **pppSt_XLogInfo, int* pInt_ListCount, LPCXSTR lpszTableName, LPCXSTR lpszTimeStart, LPCXSTR lpszTimeEnd) { return m_XLog.ModuleDatabase_XLog_Query(pppSt_XLogInfo, pInt_ListCount, lpszTableName, lpszTimeStart, lpszTimeEnd); } -extern "C" BOOL ModuleDatabase_XLog_Delete(LPCTSTR lpszTableName) +extern "C" bool ModuleDatabase_XLog_Delete(LPCXSTR lpszTableName) { return m_XLog.ModuleDatabase_XLog_Delete(lpszTableName); +} +/************************************************************************/ +/* 导出的短连接数据库函数 */ +/************************************************************************/ +extern "C" bool ModuleDatabase_ShortLink_Init(DATABASE_MYSQL_CONNECTINFO * pSt_DBConnector) +{ + return m_ShortLink.ModuleDatabase_ShortLink_Init(pSt_DBConnector); +} +extern "C" bool ModuleDatabase_ShortLink_Destory() +{ + return m_ShortLink.ModuleDatabase_ShortLink_Destory(); +} +extern "C" bool ModuleDatabase_ShortLink_Insert(XENGINE_SHORTLINK * pSt_SLinkInfo) +{ + return m_ShortLink.ModuleDatabase_ShortLink_Insert(pSt_SLinkInfo); +} +extern "C" bool ModuleDatabase_ShortLink_Query(XENGINE_SHORTLINK * pSt_SLinkInfo) +{ + return m_ShortLink.ModuleDatabase_ShortLink_Query(pSt_SLinkInfo); +} +extern "C" bool ModuleDatabase_ShortLink_Delete(XENGINE_SHORTLINK * pSt_SLinkInfo) +{ + return m_ShortLink.ModuleDatabase_ShortLink_Delete(pSt_SLinkInfo); } \ No newline at end of file diff --git a/XEngine_Source/XEngine_ModuleDatabase/pch.h b/XEngine_Source/XEngine_ModuleDatabase/pch.h index b9b7143af94690b69b231dca46c17972f63125a7..3587ed1fea884eb81ddf89b98baf66000b2c32d0 100644 --- a/XEngine_Source/XEngine_ModuleDatabase/pch.h +++ b/XEngine_Source/XEngine_ModuleDatabase/pch.h @@ -43,8 +43,8 @@ // Purpose: // History: *********************************************************************/ -extern DWORD DBModule_IsErrorOccur; -extern BOOL DBModule_dwErrorCode; +extern bool DBModule_IsErrorOccur; +extern XLONG DBModule_dwErrorCode; #ifdef _MSC_BUILD #pragma comment(lib,"Ws2_32") diff --git a/XEngine_Source/XEngine_ModuleHelp/Makefile b/XEngine_Source/XEngine_ModuleHelp/Makefile index 1300a6024c8046d287d51737c5af9bba7d64241f..c9e80dae959fd6e2f6632201fc557ce96cb3a49a 100644 --- a/XEngine_Source/XEngine_ModuleHelp/Makefile +++ b/XEngine_Source/XEngine_ModuleHelp/Makefile @@ -1,44 +1,24 @@ -CC = g++ -Wall -std=c++17 -fPIC -Wno-deprecated-declarations -SHAREFLAG = -shared -SHAREDLL = so +CC = g++ -Wall -std=c++17 -fPIC +PLATFORM = linux +PLATVER = +PLATDIR = +FILEEXT = +LIBFLAG = RELEASE = 0 UNICODE = 0 -INCLUDE = -I ./ -I /usr/include/opencv4 -LOADBIN = -L /usr/local/lib/XEngine_Release/XEngine_BaseLib -L /usr/local/lib/XEngine_Release/XEngine_Client -LIB = -lXEngine_BaseLib -lXClient_Socket -lopencc -LIBEX = -ldl -lpthread -LOADSO = -Wl,-rpath=./,--disable-new-dtags -LIBINCLUDE = ModuleHelp_IDCard.o ModuleHelp_Language.o ModuleHelp_P2PClient.o ModuleHelp_Locker.o ModuleHelp_QRCode.o ModuleHelp_SocketTest.o pch.o +LOADHDR = -I ./ -I /usr/include/opencv4 +LOADSO = -L /usr/local/lib/XEngine_Release/XEngine_BaseLib -L /usr/local/lib/XEngine_Release/XEngine_Client +LIB = -lXEngine_BaseLib -lXClient_Socket -lopencc -llzma -lpng16 -lopencv_core -lopencv_imgcodecs -lopencv_imgproc -ltiff +LIBEX = +OBJECTS = ModuleHelp_IDCard.o ModuleHelp_Language.o ModuleHelp_P2PClient.o ModuleHelp_Locker.o ModuleHelp_QRCode.o ModuleHelp_SocketTest.o pch.o -ifeq ($(OS),Windows_NT) - PLATFORM="Windows" -else - ifeq ($(shell uname),Darwin) - PLATFORM="MacOS" - else - ifeq ($(FILECENTOS), $(wildcard $(FILECENTOS))) -# LIB += -lopencv_core -lopencv_imgcodecs -lopencv_imgproc - else -# LIB += -llzma -lpng16 -lopencv_core -lopencv_imgcodecs -lopencv_imgproc -ltiff - endif - endif -endif - -ifeq ($(shell uname),Darwin) - SHAREDLL = dylib - SHAREFLAG = -dynamiclib - LOADSO = -else - SHAREDLL = so - SHAREFLAG = -shared -endif ifeq ($(RELEASE),1) -FLAGS = -c -O2 +FLAGS = -c DEBUG = else -FLAGS = -c -DEBUG = -g +FLAGS = -c -lc_p +DEBUG = -g -pg endif ifeq ($(UNICODE),1) @@ -47,34 +27,56 @@ else UNICODE = endif +ifeq ($(PLATFORM),linux) + ifeq (/etc/redhat-release,$(wildcard /etc/redhat-release)) + PLATVER = -D __CENTOS__ + PLATDIR = XEngine_Linux/Centos + else + PLATVER = -D __UBUNTU__ + PLATDIR = XEngine_Linux/Ubuntu + endif + FILEEXT = so + LIBFLAG = -shared + LIBEX = -lpthread -lrt -ldl + LOADBIN = -Wl,-rpath=./,--disable-new-dtags +else ifeq ($(PLATFORM),mac) + CC += -Wno-deprecated-declarations + PLATVER = -D __MACOS__ + PLATDIR = XEngine_Mac + FILEEXT = dylib + LIBFLAG = -dynamiclib + LIBEX = -lpthread -ldl + LOADBIN = -Wl,-rpath,@loader_path/./ +endif + -all:$(LIBINCLUDE) - $(CC) $(DEBUG) $(LIBINCLUDE) -o libXEngine_ModuleHelp.$(SHAREDLL) $(SHAREFLAG) -fPIC $(LOADBIN) $(LIB) $(LIBEX) $(LOADSO) +all:$(OBJECTS) + $(CC) $(DEBUG) $(OBJECTS) -o libXEngine_ModuleHelp.$(FILEEXT) $(LIBFLAG) $(LIB) $(LIBEX) $(LOADSO) $(LOADBIN) ModuleHelp_IDCard.o:./ModuleHelp_IDCard/ModuleHelp_IDCard.cpp - $(CC) $(DEBUG) $(FLAGS) $(UNICODE) $(INCLUDE) ./ModuleHelp_IDCard/ModuleHelp_IDCard.cpp + $(CC) $(DEBUG) $(FLAGS) $(UNICODE) $(PLATVER) $(LOADHDR) ./ModuleHelp_IDCard/ModuleHelp_IDCard.cpp ModuleHelp_Language.o:./ModuleHelp_Language/ModuleHelp_Language.cpp - $(CC) $(DEBUG) $(FLAGS) $(UNICODE) $(INCLUDE) ./ModuleHelp_Language/ModuleHelp_Language.cpp + $(CC) $(DEBUG) $(FLAGS) $(UNICODE) $(PLATVER) $(LOADHDR) ./ModuleHelp_Language/ModuleHelp_Language.cpp ModuleHelp_P2PClient.o:./ModuleHelp_P2PClient/ModuleHelp_P2PClient.cpp - $(CC) $(DEBUG) $(FLAGS) $(UNICODE) $(INCLUDE) ./ModuleHelp_P2PClient/ModuleHelp_P2PClient.cpp + $(CC) $(DEBUG) $(FLAGS) $(UNICODE) $(PLATVER) $(LOADHDR) ./ModuleHelp_P2PClient/ModuleHelp_P2PClient.cpp ModuleHelp_Locker.o:./ModuleHelp_Locker/ModuleHelp_Locker.cpp - $(CC) $(DEBUG) $(FLAGS) $(UNICODE) $(INCLUDE) ./ModuleHelp_Locker/ModuleHelp_Locker.cpp + $(CC) $(DEBUG) $(FLAGS) $(UNICODE) $(PLATVER) $(LOADHDR) ./ModuleHelp_Locker/ModuleHelp_Locker.cpp ModuleHelp_QRCode.o:./ModuleHelp_QRCode/ModuleHelp_QRCode.cpp - $(CC) $(DEBUG) $(FLAGS) $(UNICODE) $(INCLUDE) ./ModuleHelp_QRCode/ModuleHelp_QRCode.cpp + $(CC) $(DEBUG) $(FLAGS) $(UNICODE) $(PLATVER) $(LOADHDR) ./ModuleHelp_QRCode/ModuleHelp_QRCode.cpp ModuleHelp_SocketTest.o:./ModuleHelp_SocketTest/ModuleHelp_SocketTest.cpp - $(CC) $(DEBUG) $(FLAGS) $(UNICODE) $(INCLUDE) ./ModuleHelp_SocketTest/ModuleHelp_SocketTest.cpp + $(CC) $(DEBUG) $(FLAGS) $(UNICODE) $(PLATVER) $(LOADHDR) ./ModuleHelp_SocketTest/ModuleHelp_SocketTest.cpp pch.o:./pch.cpp - $(CC) $(DEBUG) $(FLAGS) $(UNICODE) $(INCLUDE) ./pch.cpp + $(CC) $(DEBUG) $(FLAGS) $(UNICODE) $(PLATVER) $(LOADHDR) ./pch.cpp InstallAll:InstallSo -InstallSo:./libXEngine_ModuleHelp.$(SHAREDLL) - cp ./libXEngine_ModuleHelp.$(SHAREDLL) ../../XEngine_Release/libXEngine_ModuleHelp.$(SHAREDLL) +InstallSo:./libXEngine_ModuleHelp.$(FILEEXT) + cp ./libXEngine_ModuleHelp.$(FILEEXT) ../../XEngine_Release/libXEngine_ModuleHelp.$(FILEEXT) CleanAll:CleanObj CleanMk CleanObj: rm *.o CleanMk: - rm *.$(SHAREDLL) \ No newline at end of file + rm *.$(FILEEXT) \ No newline at end of file diff --git a/XEngine_Source/XEngine_ModuleHelp/ModuleHelp_Define.h b/XEngine_Source/XEngine_ModuleHelp/ModuleHelp_Define.h index 8b3938b69a56bb461db855746a53985b0ce45098..af2ea75a52bd2af3f8cb2b226532a1bb82d4f428 100644 --- a/XEngine_Source/XEngine_ModuleHelp/ModuleHelp_Define.h +++ b/XEngine_Source/XEngine_ModuleHelp/ModuleHelp_Define.h @@ -13,9 +13,9 @@ ////////////////////////////////////////////////////////////////////////// // 导出回调函数 ////////////////////////////////////////////////////////////////////////// -typedef void(CALLBACK* CALLBACK_APISERVICE_MODULE_HELP_P2PCLIENT)(XENGINE_P2XPPEER_PROTOCOL* pSt_P2PProtocol, LPVOID lParam); +typedef void(CALLBACK* CALLBACK_APISERVICE_MODULE_HELP_P2PCLIENT)(XENGINE_P2XPPEER_PROTOCOL* pSt_P2PProtocol, XPVOID lParam); //套接字测试回调:测试句柄,测试的服务器地址,测试的端口,当前测试次数,失败次数,成功次数,状态:0成功报告,1失败报告,2结束报告,自定义参数 -typedef void(CALLBACK* CALLBACK_APISERVICE_MODULE_HELP_SOCKETTEST)(XNETHANDLE xhToken, LPCSTR lpszAddr, int nPort, __int64x nNumber, __int64x nFailed, __int64x nSuccess, int nStatus, LPVOID lParam); +typedef void(CALLBACK* CALLBACK_APISERVICE_MODULE_HELP_SOCKETTEST)(XNETHANDLE xhToken, LPCXSTR lpszAddr, int nPort, __int64x nNumber, __int64x nFailed, __int64x nSuccess, int nStatus, XPVOID lParam); ////////////////////////////////////////////////////////////////////////// // 导出数据结构 ////////////////////////////////////////////////////////////////////////// @@ -32,12 +32,12 @@ typedef struct { XENGINE_P2XPPEER_PROTOCOL st_PeerAddr; //P2P通信的时候使用的地址(客户方使用) P2XP_TIMER_INFOMATION st_PeerTimer; //节点时间信息 - BOOL bIsLogin; + bool bIsLogin; }XENGINE_P2XP_PEERINFO, * LPNETENGINE_P2XP_PEERINFO; ////////////////////////////////////////////////////////////////////////// /// 导出的函数 ////////////////////////////////////////////////////////////////////////// -extern "C" DWORD ModuleHelp_GetLastError(int *pInt_SysError = NULL); +extern "C" XLONG ModuleHelp_GetLastError(int *pInt_SysError = NULL); /************************************************************************/ /* 导出的身份证帮助函数 */ /************************************************************************/ @@ -54,7 +54,7 @@ extern "C" DWORD ModuleHelp_GetLastError(int *pInt_SysError = NULL); 意思:是否成功 备注: *********************************************************************/ -extern "C" BOOL ModuleHelp_IDCard_CheckBirth(XENGINE_IDCARDINFO* pSt_IDInfo); +extern "C" bool ModuleHelp_IDCard_CheckBirth(XENGINE_IDCARDINFO* pSt_IDInfo); /******************************************************************** 函数名称:ModuleHelp_IDCard_CheckBirth 函数功能:检查身份证的校验码是否正确 @@ -68,7 +68,7 @@ extern "C" BOOL ModuleHelp_IDCard_CheckBirth(XENGINE_IDCARDINFO* pSt_IDInfo); 意思:是否成功 备注: *********************************************************************/ -extern "C" BOOL ModuleHelp_IDCard_CheckSum(XENGINE_IDCARDINFO* pSt_IDInfo); +extern "C" bool ModuleHelp_IDCard_CheckSum(XENGINE_IDCARDINFO* pSt_IDInfo); /************************************************************************/ /* 导出的语言转换帮助函数 */ /************************************************************************/ @@ -95,7 +95,7 @@ extern "C" BOOL ModuleHelp_IDCard_CheckSum(XENGINE_IDCARDINFO* pSt_IDInfo); 意思:是否成功 备注: *********************************************************************/ -extern "C" BOOL ModuleHelp_Language_ConvertZh(LPCTSTR lpszJsonFile, LPCTSTR lpszSourceStr, TCHAR* ptszDestStr); +extern "C" bool ModuleHelp_Language_ConvertZh(LPCXSTR lpszJsonFile, LPCXSTR lpszSourceStr, XCHAR* ptszDestStr); /******************************************************************** 函数名称:ModuleHelp_Translation_Convert 函数功能:翻译类型转换 @@ -114,7 +114,7 @@ extern "C" BOOL ModuleHelp_Language_ConvertZh(LPCTSTR lpszJsonFile, LPCTSTR lpsz 意思:是否成功 备注: *********************************************************************/ -extern "C" BOOL ModuleHelp_Translation_Convert(ENUM_XENGINE_APISERVICE_TRANSLATION_TYPE enTranslationType, TCHAR* ptszTranslationType); +extern "C" bool ModuleHelp_Translation_Convert(ENUM_XENGINE_APISERVICE_TRANSLATION_TYPE enTranslationType, XCHAR* ptszTranslationType); /************************************************************************/ /* 节点管理器导出函数 */ /************************************************************************/ @@ -141,7 +141,7 @@ extern "C" BOOL ModuleHelp_Translation_Convert(ENUM_XENGINE_APISERVICE_TRANSLATI 意思:是否成功 备注: *********************************************************************/ -extern "C" BOOL ModuleHelp_P2PClient_Init(int nTimeout, CALLBACK_APISERVICE_MODULE_HELP_P2PCLIENT fpCall_P2PClient, LPVOID lParam = NULL); +extern "C" bool ModuleHelp_P2PClient_Init(int nTimeout, CALLBACK_APISERVICE_MODULE_HELP_P2PCLIENT fpCall_P2PClient, XPVOID lParam = NULL); /******************************************************************** 函数名称:ModuleHelp_P2PClient_Destory 函数功能:销毁 @@ -150,7 +150,7 @@ extern "C" BOOL ModuleHelp_P2PClient_Init(int nTimeout, CALLBACK_APISERVICE_MODU 意思:是否成功 备注: *********************************************************************/ -extern "C" BOOL ModuleHelp_P2PClient_Destory(); +extern "C" bool ModuleHelp_P2PClient_Destory(); /******************************************************************** 函数名称:ModuleHelp_P2PClient_Add 函数功能:添加一个客户到一个节点信息 @@ -164,7 +164,7 @@ extern "C" BOOL ModuleHelp_P2PClient_Destory(); 意思:是否添加成功 备注: *********************************************************************/ -extern "C" BOOL ModuleHelp_P2PClient_Add(XENGINE_P2XP_PEERINFO * pSt_PeerInfo); +extern "C" bool ModuleHelp_P2PClient_Add(XENGINE_P2XP_PEERINFO * pSt_PeerInfo); /******************************************************************** 函数名称:ModuleHelp_P2PClient_Get 函数功能:获取P2P节点对应信息 @@ -183,7 +183,7 @@ extern "C" BOOL ModuleHelp_P2PClient_Add(XENGINE_P2XP_PEERINFO * pSt_PeerInfo); 意思:是否查找成功 备注: *********************************************************************/ -extern "C" BOOL ModuleHelp_P2PClient_Get(XENGINE_P2XPPEER_PROTOCOL * pSt_P2PProtocol, XENGINE_P2XP_PEERINFO * pSt_PeerInfo = NULL); +extern "C" bool ModuleHelp_P2PClient_Get(XENGINE_P2XPPEER_PROTOCOL * pSt_P2PProtocol, XENGINE_P2XP_PEERINFO * pSt_PeerInfo = NULL); /******************************************************************** 函数名称:ModuleHelp_P2PClient_GetLan 函数功能:获取局域网IP地址列表 @@ -207,7 +207,7 @@ extern "C" BOOL ModuleHelp_P2PClient_Get(XENGINE_P2XPPEER_PROTOCOL * pSt_P2PProt 意思:是否成功 备注:参数二需要调用基础库的BaseLib_OperatorMemory_Free函数进行内存释放 *********************************************************************/ -extern "C" BOOL ModuleHelp_P2PClient_GetLan(XENGINE_P2XPPEER_PROTOCOL * pSt_P2PProtocol, XENGINE_P2XPPEER_PROTOCOL * **pppSt_P2XPClient, int* pInt_ListCount); +extern "C" bool ModuleHelp_P2PClient_GetLan(XENGINE_P2XPPEER_PROTOCOL * pSt_P2PProtocol, XENGINE_P2XPPEER_PROTOCOL * **pppSt_P2XPClient, int* pInt_ListCount); /******************************************************************** 函数名称:ModuleHelp_P2PClient_GetLList 函数功能:获取同一公网下所有局域网主IP列表 @@ -231,7 +231,7 @@ extern "C" BOOL ModuleHelp_P2PClient_GetLan(XENGINE_P2XPPEER_PROTOCOL * pSt_P2PP 意思:是否成功 备注:参数二需要调用基础库的BaseLib_OperatorMemory_Free函数进行内存释放 *********************************************************************/ -extern "C" BOOL ModuleHelp_P2PClient_GetLList(LPCSTR lpszPubAddr, CHAR * **pppszP2XPClient, int* pInt_ListCount); +extern "C" bool ModuleHelp_P2PClient_GetLList(LPCXSTR lpszPubAddr, XCHAR * **pppszP2XPClient, int* pInt_ListCount); /******************************************************************** 函数名称:ModuleHelp_P2PClient_GetWList 函数功能:获取所有连接到的公网地址列表 @@ -250,7 +250,7 @@ extern "C" BOOL ModuleHelp_P2PClient_GetLList(LPCSTR lpszPubAddr, CHAR * **pppsz 意思:是否成功 备注: *********************************************************************/ -extern "C" BOOL ModuleHelp_P2PClient_GetWList(CHAR * **pppszP2XPClient, int* pInt_ListCount); +extern "C" bool ModuleHelp_P2PClient_GetWList(XCHAR * **pppszP2XPClient, int* pInt_ListCount); /******************************************************************** 函数名称:ModuleHelp_P2PClient_Delete 函数功能:删除一个指定的节点 @@ -264,7 +264,7 @@ extern "C" BOOL ModuleHelp_P2PClient_GetWList(CHAR * **pppszP2XPClient, int* pIn 意思:是否成功删除 备注: *********************************************************************/ -extern "C" BOOL ModuleHelp_P2PClient_Delete(XENGINE_P2XPPEER_PROTOCOL * pSt_P2PProtocol); +extern "C" bool ModuleHelp_P2PClient_Delete(XENGINE_P2XPPEER_PROTOCOL * pSt_P2PProtocol); /******************************************************************** 函数名称:ModuleHelp_P2PClient_DelAll 函数功能:清空节点列表数据 @@ -273,7 +273,7 @@ extern "C" BOOL ModuleHelp_P2PClient_Delete(XENGINE_P2XPPEER_PROTOCOL * pSt_P2PP 意思:是否成功 备注: *********************************************************************/ -extern "C" BOOL ModuleHelp_P2PClient_DelAll(); +extern "C" bool ModuleHelp_P2PClient_DelAll(); /******************************************************************** 函数名称:ModuleHelp_P2PClient_Heart 函数功能:触发一次心跳 @@ -287,7 +287,7 @@ extern "C" BOOL ModuleHelp_P2PClient_DelAll(); 意思:是否成功 备注: *********************************************************************/ -extern "C" BOOL ModuleHelp_P2PClient_Heart(XENGINE_P2XPPEER_PROTOCOL* pSt_P2PProtocol); +extern "C" bool ModuleHelp_P2PClient_Heart(XENGINE_P2XPPEER_PROTOCOL* pSt_P2PProtocol); /************************************************************************/ /* 分布式锁导出函数 */ /************************************************************************/ @@ -304,7 +304,7 @@ extern "C" BOOL ModuleHelp_P2PClient_Heart(XENGINE_P2XPPEER_PROTOCOL* pSt_P2PPro 意思:是否成功 备注: *********************************************************************/ -extern "C" BOOL ModuleHelp_Locker_Create(XNETHANDLE* pxhToken); +extern "C" bool ModuleHelp_Locker_Create(XNETHANDLE* pxhToken); /******************************************************************** 函数名称:ModuleHelp_Locker_OPen 函数功能:打开一个锁 @@ -318,7 +318,7 @@ extern "C" BOOL ModuleHelp_Locker_Create(XNETHANDLE* pxhToken); 意思:是否成功 备注: *********************************************************************/ -extern "C" BOOL ModuleHelp_Locker_OPen(XNETHANDLE xhToken); +extern "C" bool ModuleHelp_Locker_OPen(XNETHANDLE xhToken); /******************************************************************** 函数名称:ModuleHelp_Locker_ReadLock 函数功能:读加锁 @@ -332,7 +332,7 @@ extern "C" BOOL ModuleHelp_Locker_OPen(XNETHANDLE xhToken); 意思:是否成功 备注: *********************************************************************/ -extern "C" BOOL ModuleHelp_Locker_ReadLock(XNETHANDLE xhToken); +extern "C" bool ModuleHelp_Locker_ReadLock(XNETHANDLE xhToken); /******************************************************************** 函数名称:ModuleHelp_Locker_ReadUNLock 函数功能:读解锁 @@ -346,7 +346,7 @@ extern "C" BOOL ModuleHelp_Locker_ReadLock(XNETHANDLE xhToken); 意思:是否成功 备注: *********************************************************************/ -extern "C" BOOL ModuleHelp_Locker_ReadUNLock(XNETHANDLE xhToken); +extern "C" bool ModuleHelp_Locker_ReadUNLock(XNETHANDLE xhToken); /******************************************************************** 函数名称:ModuleHelp_Locker_WriteLock 函数功能:写加锁 @@ -360,7 +360,7 @@ extern "C" BOOL ModuleHelp_Locker_ReadUNLock(XNETHANDLE xhToken); 意思:是否成功 备注: *********************************************************************/ -extern "C" BOOL ModuleHelp_Locker_WriteLock(XNETHANDLE xhToken); +extern "C" bool ModuleHelp_Locker_WriteLock(XNETHANDLE xhToken); /******************************************************************** 函数名称:ModuleHelp_Locker_WriteUNLock 函数功能:写解锁 @@ -374,7 +374,7 @@ extern "C" BOOL ModuleHelp_Locker_WriteLock(XNETHANDLE xhToken); 意思:是否成功 备注: *********************************************************************/ -extern "C" BOOL ModuleHelp_Locker_WriteUNLock(XNETHANDLE xhToken); +extern "C" bool ModuleHelp_Locker_WriteUNLock(XNETHANDLE xhToken); /******************************************************************** 函数名称:ModuleHelp_Locker_Close 函数功能:关闭锁 @@ -388,7 +388,7 @@ extern "C" BOOL ModuleHelp_Locker_WriteUNLock(XNETHANDLE xhToken); 意思:是否成功 备注: *********************************************************************/ -extern "C" BOOL ModuleHelp_Locker_Close(XNETHANDLE xhToken); +extern "C" bool ModuleHelp_Locker_Close(XNETHANDLE xhToken); /************************************************************************/ /* 二维码导出函数 */ /************************************************************************/ @@ -410,7 +410,7 @@ extern "C" BOOL ModuleHelp_Locker_Close(XNETHANDLE xhToken); 意思:是否成功 备注: *********************************************************************/ -extern "C" BOOL ModuleHelp_QRCode_QREncodecFile(LPCTSTR lpszFileName, LPCTSTR lpszMsgBuffer); +extern "C" bool ModuleHelp_QRCode_QREncodecFile(LPCXSTR lpszFileName, LPCXSTR lpszMsgBuffer); /******************************************************************** 函数名称:ModuleHelp_QRCode_QREncodecMemory 函数功能:编码数据为二维码格式PNG图片 @@ -440,7 +440,7 @@ extern "C" BOOL ModuleHelp_QRCode_QREncodecFile(LPCTSTR lpszFileName, LPCTSTR lp 意思:是否成功 备注: *********************************************************************/ -extern "C" BOOL ModuleHelp_QRCode_QREncodecMemory(LPCTSTR lpszMsgBuffer, TCHAR* ptszMsgBuffer, int* pInt_MsgLen, LPCTSTR lpszFmt); +extern "C" bool ModuleHelp_QRCode_QREncodecMemory(LPCXSTR lpszMsgBuffer, XCHAR* ptszMsgBuffer, int* pInt_MsgLen, LPCXSTR lpszFmt); /******************************************************************** 函数名称:ModuleHelp_QRCode_QRDecodecFile 函数功能:从文件解码二维码 @@ -479,7 +479,7 @@ extern "C" BOOL ModuleHelp_QRCode_QREncodecMemory(LPCTSTR lpszMsgBuffer, TCHAR* 意思:是否成功 备注: *********************************************************************/ -extern "C" BOOL ModuleHelp_QRCode_QRDecodecFile(LPCTSTR lpszFileName, TCHAR* ptszMsgBuffer, LPCTSTR lpszDetectProto, LPCTSTR lpszDetectModel, LPCTSTR lpszSrProto, LPCTSTR lpszSrModel); +extern "C" bool ModuleHelp_QRCode_QRDecodecFile(LPCXSTR lpszFileName, XCHAR* ptszMsgBuffer, LPCXSTR lpszDetectProto, LPCXSTR lpszDetectModel, LPCXSTR lpszSrProto, LPCXSTR lpszSrModel); /******************************************************************** 函数名称:ModuleHelp_QRCode_QRDecodecMemory 函数功能:从内存解析二维码 @@ -523,7 +523,7 @@ extern "C" BOOL ModuleHelp_QRCode_QRDecodecFile(LPCTSTR lpszFileName, TCHAR* pts 意思:是否成功 备注: *********************************************************************/ -extern "C" BOOL ModuleHelp_QRCode_QRDecodecMemory(LPCSTR lpszMsgBuffer, int nMsgLen, TCHAR* ptszMsgBuffer, LPCTSTR lpszDetectProto, LPCTSTR lpszDetectModel, LPCTSTR lpszSrProto, LPCTSTR lpszSrModel); +extern "C" bool ModuleHelp_QRCode_QRDecodecMemory(LPCXSTR lpszMsgBuffer, int nMsgLen, XCHAR* ptszMsgBuffer, LPCXSTR lpszDetectProto, LPCXSTR lpszDetectModel, LPCXSTR lpszSrProto, LPCXSTR lpszSrModel); /************************************************************************/ /* 网络测试导出函数 */ /************************************************************************/ @@ -555,7 +555,7 @@ extern "C" BOOL ModuleHelp_QRCode_QRDecodecMemory(LPCSTR lpszMsgBuffer, int nMsg 意思:成功返回连接的句柄,失败返回NULL 备注:链接测试函数,链接一次后就关闭 *********************************************************************/ -extern "C" BOOL ModuleHelp_SocketTest_StartConnect(XNETHANDLE* pxhToken, MODULEHELP_SOCKETTEST_RECONNECT* pSt_ReConnect, CALLBACK_APISERVICE_MODULE_HELP_SOCKETTEST fpCall_ReConnect, LPVOID lParam = NULL); +extern "C" bool ModuleHelp_SocketTest_StartConnect(XNETHANDLE* pxhToken, MODULEHELP_SOCKETTEST_RECONNECT* pSt_ReConnect, CALLBACK_APISERVICE_MODULE_HELP_SOCKETTEST fpCall_ReConnect, XPVOID lParam = NULL); /******************************************************************** 函数名称:ModuleHelp_SocketTest_GetConnect 函数功能:获取是否在处理中 @@ -574,7 +574,7 @@ extern "C" BOOL ModuleHelp_SocketTest_StartConnect(XNETHANDLE* pxhToken, MODULEH 意思:是否成功 备注: *********************************************************************/ -extern "C" BOOL ModuleHelp_SocketTest_GetConnect(XNETHANDLE xhToken, BOOL* pbRun); +extern "C" bool ModuleHelp_SocketTest_GetConnect(XNETHANDLE xhToken, bool* pbRun); /******************************************************************** 函数名称:ModuleHelp_SocketTest_StopConnect 函数功能:停止短连接测试 @@ -588,7 +588,7 @@ extern "C" BOOL ModuleHelp_SocketTest_GetConnect(XNETHANDLE xhToken, BOOL* pbRun 意思:是否成功 备注: *********************************************************************/ -extern "C" BOOL ModuleHelp_SocketTest_StopConnect(XNETHANDLE xhToken); +extern "C" bool ModuleHelp_SocketTest_StopConnect(XNETHANDLE xhToken); /******************************************************************** 函数名称:ModuleHelp_SocketTest_StartDatas 函数功能:数据包测试函数 @@ -617,7 +617,7 @@ extern "C" BOOL ModuleHelp_SocketTest_StopConnect(XNETHANDLE xhToken); 意思:是否成功 备注: *********************************************************************/ -extern "C" BOOL ModuleHelp_SocketTest_StartDatas(XNETHANDLE* pxhToken, MODULEHELP_SOCKETTEST_DATAS* pSt_SocketDatas, CALLBACK_APISERVICE_MODULE_HELP_SOCKETTEST fpCall_DataTest, BOOL bTCP = TRUE, LPVOID lParam = NULL); +extern "C" bool ModuleHelp_SocketTest_StartDatas(XNETHANDLE* pxhToken, MODULEHELP_SOCKETTEST_DATAS* pSt_SocketDatas, CALLBACK_APISERVICE_MODULE_HELP_SOCKETTEST fpCall_DataTest, bool bTCP = true, XPVOID lParam = NULL); /******************************************************************** 函数名称:ModuleHelp_SocketTest_GetDatas 函数功能:获取是否在处理中 @@ -636,7 +636,7 @@ extern "C" BOOL ModuleHelp_SocketTest_StartDatas(XNETHANDLE* pxhToken, MODULEHEL 意思:是否成功 备注: *********************************************************************/ -extern "C" BOOL ModuleHelp_SocketTest_GetDatas(XNETHANDLE xhToken, BOOL* pbRun); +extern "C" bool ModuleHelp_SocketTest_GetDatas(XNETHANDLE xhToken, bool* pbRun); /************************************************************************ 函数名称:ModuleHelp_SocketTest_DatasStop 函数功能:停止大数据包测试 @@ -650,4 +650,4 @@ extern "C" BOOL ModuleHelp_SocketTest_GetDatas(XNETHANDLE xhToken, BOOL* pbRun); 意思:是否成功 备注: ************************************************************************/ -extern "C" BOOL ModuleHelp_SocketTest_StopDatas(XNETHANDLE xhToken); \ No newline at end of file +extern "C" bool ModuleHelp_SocketTest_StopDatas(XNETHANDLE xhToken); \ No newline at end of file diff --git a/XEngine_Source/XEngine_ModuleHelp/ModuleHelp_IDCard/ModuleHelp_IDCard.cpp b/XEngine_Source/XEngine_ModuleHelp/ModuleHelp_IDCard/ModuleHelp_IDCard.cpp index a5fc306e87464a86a4d20c03f0e8a2554440e84f..b1617d516fcf60854896fa7040bd46c50c4b1ed2 100644 --- a/XEngine_Source/XEngine_ModuleHelp/ModuleHelp_IDCard/ModuleHelp_IDCard.cpp +++ b/XEngine_Source/XEngine_ModuleHelp/ModuleHelp_IDCard/ModuleHelp_IDCard.cpp @@ -34,35 +34,35 @@ CModuleHelp_IDCard::~CModuleHelp_IDCard() 意思:是否成功 备注: *********************************************************************/ -BOOL CModuleHelp_IDCard::ModuleHelp_IDCard_CheckBirth(XENGINE_IDCARDINFO *pSt_IDInfo) +bool CModuleHelp_IDCard::ModuleHelp_IDCard_CheckBirth(XENGINE_IDCARDINFO *pSt_IDInfo) { - ModuleHelp_IsErrorOccur = FALSE; + ModuleHelp_IsErrorOccur = false; if (NULL == pSt_IDInfo) { - ModuleHelp_IsErrorOccur = TRUE; + ModuleHelp_IsErrorOccur = true; ModuleHelp_dwErrorCode = ERROR_XENGINE_APISERVICE_MODULE_HELP_IDCARD_PARAMENT; - return FALSE; + return false; } if (pSt_IDInfo->nBirthYear < 1949 || pSt_IDInfo->nBirthYear > 2999) { - ModuleHelp_IsErrorOccur = TRUE; + ModuleHelp_IsErrorOccur = true; ModuleHelp_dwErrorCode = ERROR_XENGINE_APISERVICE_MODULE_HELP_IDCARD_FMT; - return FALSE; + return false; } if (pSt_IDInfo->nBirthMonth < 1 || pSt_IDInfo->nBirthMonth > 12) { - ModuleHelp_IsErrorOccur = TRUE; + ModuleHelp_IsErrorOccur = true; ModuleHelp_dwErrorCode = ERROR_XENGINE_APISERVICE_MODULE_HELP_IDCARD_FMT; - return FALSE; + return false; } if (pSt_IDInfo->nBirthDay < 1 || pSt_IDInfo->nBirthDay > 31) { - ModuleHelp_IsErrorOccur = TRUE; + ModuleHelp_IsErrorOccur = true; ModuleHelp_dwErrorCode = ERROR_XENGINE_APISERVICE_MODULE_HELP_IDCARD_FMT; - return FALSE; + return false; } - return TRUE; + return true; } /******************************************************************** 函数名称:ModuleHelp_IDCard_CheckBirth @@ -77,15 +77,15 @@ BOOL CModuleHelp_IDCard::ModuleHelp_IDCard_CheckBirth(XENGINE_IDCARDINFO *pSt_ID 意思:是否成功 备注: *********************************************************************/ -BOOL CModuleHelp_IDCard::ModuleHelp_IDCard_CheckSum(XENGINE_IDCARDINFO* pSt_IDInfo) +bool CModuleHelp_IDCard::ModuleHelp_IDCard_CheckSum(XENGINE_IDCARDINFO* pSt_IDInfo) { - ModuleHelp_IsErrorOccur = FALSE; + ModuleHelp_IsErrorOccur = false; if (NULL == pSt_IDInfo) { - ModuleHelp_IsErrorOccur = TRUE; + ModuleHelp_IsErrorOccur = true; ModuleHelp_dwErrorCode = ERROR_XENGINE_APISERVICE_MODULE_HELP_IDCARD_PARAMENT; - return FALSE; + return false; } int nCheck = 0; int nIDArray[18]; @@ -103,9 +103,9 @@ BOOL CModuleHelp_IDCard::ModuleHelp_IDCard_CheckSum(XENGINE_IDCARDINFO* pSt_IDIn } if ((nIDArray[17] != nTable[nCheck % 11]) && (pSt_IDInfo->nCheck != 'x' || nTable[nCheck % 11] != 2)) { - ModuleHelp_IsErrorOccur = TRUE; + ModuleHelp_IsErrorOccur = true; ModuleHelp_dwErrorCode = ERROR_XENGINE_APISERVICE_MODULE_HELP_IDCARD_SUM; - return FALSE; + return false; } - return TRUE; + return true; } \ No newline at end of file diff --git a/XEngine_Source/XEngine_ModuleHelp/ModuleHelp_IDCard/ModuleHelp_IDCard.h b/XEngine_Source/XEngine_ModuleHelp/ModuleHelp_IDCard/ModuleHelp_IDCard.h index a06d7c3115cb6e40882e7520a332484e063f3288..f816401287599c1245ff22d5ed62c918d72659db 100644 --- a/XEngine_Source/XEngine_ModuleHelp/ModuleHelp_IDCard/ModuleHelp_IDCard.h +++ b/XEngine_Source/XEngine_ModuleHelp/ModuleHelp_IDCard/ModuleHelp_IDCard.h @@ -18,7 +18,7 @@ public: CModuleHelp_IDCard(); ~CModuleHelp_IDCard(); public: - BOOL ModuleHelp_IDCard_CheckBirth(XENGINE_IDCARDINFO* pSt_IDInfo); - BOOL ModuleHelp_IDCard_CheckSum(XENGINE_IDCARDINFO* pSt_IDInfo); + bool ModuleHelp_IDCard_CheckBirth(XENGINE_IDCARDINFO* pSt_IDInfo); + bool ModuleHelp_IDCard_CheckSum(XENGINE_IDCARDINFO* pSt_IDInfo); private: }; \ No newline at end of file diff --git a/XEngine_Source/XEngine_ModuleHelp/ModuleHelp_Language/ModuleHelp_Language.cpp b/XEngine_Source/XEngine_ModuleHelp/ModuleHelp_Language/ModuleHelp_Language.cpp index 9326dbd43c47fc133cb8bb2ceb81f5c2330cbedc..0c95e617a820e926d22cfc3c9993bb8d4d928f4b 100644 --- a/XEngine_Source/XEngine_ModuleHelp/ModuleHelp_Language/ModuleHelp_Language.cpp +++ b/XEngine_Source/XEngine_ModuleHelp/ModuleHelp_Language/ModuleHelp_Language.cpp @@ -44,32 +44,32 @@ CModuleHelp_Language::~CModuleHelp_Language() 意思:是否成功 备注: *********************************************************************/ -BOOL CModuleHelp_Language::ModuleHelp_Language_ConvertZh(LPCTSTR lpszJsonFile, LPCTSTR lpszSourceStr, TCHAR* ptszDestStr) +bool CModuleHelp_Language::ModuleHelp_Language_ConvertZh(LPCXSTR lpszJsonFile, LPCXSTR lpszSourceStr, XCHAR* ptszDestStr) { - ModuleHelp_IsErrorOccur = FALSE; + ModuleHelp_IsErrorOccur = false; if ((NULL == lpszJsonFile) || (NULL == lpszSourceStr) || (NULL == ptszDestStr)) { - ModuleHelp_IsErrorOccur = TRUE; + ModuleHelp_IsErrorOccur = true; ModuleHelp_dwErrorCode = ERROR_XENGINE_APISERVICE_MODULE_HELP_LANGUAGE_PARAMENT; - return FALSE; + return false; } opencc_t m_OPencc = opencc_open(lpszJsonFile); if ((opencc_t)-1 == m_OPencc) { - ModuleHelp_IsErrorOccur = TRUE; + ModuleHelp_IsErrorOccur = true; ModuleHelp_dwErrorCode = ERROR_XENGINE_APISERVICE_MODULE_HELP_LANGUAGE_FAILED; - return FALSE; + return false; } if ((size_t)-1 == opencc_convert_utf8_to_buffer(m_OPencc, lpszSourceStr, strlen(lpszSourceStr), ptszDestStr)) { - ModuleHelp_IsErrorOccur = TRUE; + ModuleHelp_IsErrorOccur = true; ModuleHelp_dwErrorCode = ERROR_XENGINE_APISERVICE_MODULE_HELP_LANGUAGE_NOTSUPPORT; - return FALSE; + return false; } opencc_close(m_OPencc); - return TRUE; + return true; } /******************************************************************** 函数名称:ModuleHelp_Translation_Convert @@ -89,74 +89,74 @@ BOOL CModuleHelp_Language::ModuleHelp_Language_ConvertZh(LPCTSTR lpszJsonFile, L 意思:是否成功 备注: *********************************************************************/ -BOOL CModuleHelp_Language::ModuleHelp_Translation_Convert(ENUM_XENGINE_APISERVICE_TRANSLATION_TYPE enTranslationType, TCHAR* ptszTranslationType) +bool CModuleHelp_Language::ModuleHelp_Translation_Convert(ENUM_XENGINE_APISERVICE_TRANSLATION_TYPE enTranslationType, XCHAR* ptszTranslationType) { - ModuleHelp_IsErrorOccur = FALSE; + ModuleHelp_IsErrorOccur = false; if (NULL == ptszTranslationType) { - ModuleHelp_IsErrorOccur = TRUE; + ModuleHelp_IsErrorOccur = true; ModuleHelp_dwErrorCode = ERROR_XENGINE_APISERVICE_MODULE_HELP_LANGUAGE_PARAMENT; - return FALSE; + return false; } //转换为服务需要的类型 if (ENUM_XENGINE_APISERVICE_TRANSLATION_TYPE_AUTO == enTranslationType) { - _tcscpy(ptszTranslationType, _T("auto")); + _tcsxcpy(ptszTranslationType, _X("auto")); } else if (ENUM_XENGINE_APISERVICE_TRANSLATION_TYPE_ZH_CN2EN == enTranslationType) { - _tcscpy(ptszTranslationType, _T("ZH_CN2EN")); + _tcsxcpy(ptszTranslationType, _X("ZH_CN2EN")); } else if (ENUM_XENGINE_APISERVICE_TRANSLATION_TYPE_ZH_CN2JA == enTranslationType) { - _tcscpy(ptszTranslationType, _T("ZH_CN2JA")); + _tcsxcpy(ptszTranslationType, _X("ZH_CN2JA")); } else if (ENUM_XENGINE_APISERVICE_TRANSLATION_TYPE_ZH_CN2KR == enTranslationType) { - _tcscpy(ptszTranslationType, _T("ZH_CN2KR")); + _tcsxcpy(ptszTranslationType, _X("ZH_CN2KR")); } else if (ENUM_XENGINE_APISERVICE_TRANSLATION_TYPE_ZH_CN2FR == enTranslationType) { - _tcscpy(ptszTranslationType, _T("ZH_CN2FR")); + _tcsxcpy(ptszTranslationType, _X("ZH_CN2FR")); } else if (ENUM_XENGINE_APISERVICE_TRANSLATION_TYPE_ZH_CN2RU == enTranslationType) { - _tcscpy(ptszTranslationType, _T("ZH_CN2RU")); + _tcsxcpy(ptszTranslationType, _X("ZH_CN2RU")); } else if (ENUM_XENGINE_APISERVICE_TRANSLATION_TYPE_ZH_CN2SP == enTranslationType) { - _tcscpy(ptszTranslationType, _T("ZH_CN2SP")); + _tcsxcpy(ptszTranslationType, _X("ZH_CN2SP")); } else if (ENUM_XENGINE_APISERVICE_TRANSLATION_TYPE_EN2ZH_CN == enTranslationType) { - _tcscpy(ptszTranslationType, _T("EN2ZH_CN")); + _tcsxcpy(ptszTranslationType, _X("EN2ZH_CN")); } else if (ENUM_XENGINE_APISERVICE_TRANSLATION_TYPE_JA2ZH_CN == enTranslationType) { - _tcscpy(ptszTranslationType, _T("JA2ZH_CN")); + _tcsxcpy(ptszTranslationType, _X("JA2ZH_CN")); } else if (ENUM_XENGINE_APISERVICE_TRANSLATION_TYPE_KR2ZH_CN == enTranslationType) { - _tcscpy(ptszTranslationType, _T("KR2ZH_CN")); + _tcsxcpy(ptszTranslationType, _X("KR2ZH_CN")); } else if (ENUM_XENGINE_APISERVICE_TRANSLATION_TYPE_FR2ZH_CN == enTranslationType) { - _tcscpy(ptszTranslationType, _T("FR2ZH_CN")); + _tcsxcpy(ptszTranslationType, _X("FR2ZH_CN")); } else if (ENUM_XENGINE_APISERVICE_TRANSLATION_TYPE_RU2ZH_CN == enTranslationType) { - _tcscpy(ptszTranslationType, _T("RU2ZH_CN")); + _tcsxcpy(ptszTranslationType, _X("RU2ZH_CN")); } else if (ENUM_XENGINE_APISERVICE_TRANSLATION_TYPE_SP2ZH_CN == enTranslationType) { - _tcscpy(ptszTranslationType, _T("SP2ZH_CN")); + _tcsxcpy(ptszTranslationType, _X("SP2ZH_CN")); } else { - ModuleHelp_IsErrorOccur = TRUE; + ModuleHelp_IsErrorOccur = true; ModuleHelp_dwErrorCode = ERROR_XENGINE_APISERVICE_MODULE_HELP_LANGUAGE_NOTSUPPORT; - return FALSE; + return false; } - return TRUE; + return true; } \ No newline at end of file diff --git a/XEngine_Source/XEngine_ModuleHelp/ModuleHelp_Language/ModuleHelp_Language.h b/XEngine_Source/XEngine_ModuleHelp/ModuleHelp_Language/ModuleHelp_Language.h index 6c1b2978812eeab3cce8f534cd73f0cb05ee47d9..f42bc0524c294a53e2e31793a2476d5d53764c96 100644 --- a/XEngine_Source/XEngine_ModuleHelp/ModuleHelp_Language/ModuleHelp_Language.h +++ b/XEngine_Source/XEngine_ModuleHelp/ModuleHelp_Language/ModuleHelp_Language.h @@ -17,7 +17,7 @@ public: CModuleHelp_Language(); ~CModuleHelp_Language(); public: - BOOL ModuleHelp_Language_ConvertZh(LPCTSTR lpszJsonFile, LPCTSTR lpszSourceStr, TCHAR* ptszDestStr); - BOOL ModuleHelp_Translation_Convert(ENUM_XENGINE_APISERVICE_TRANSLATION_TYPE enTranslationType, TCHAR* ptszTranslationType); + bool ModuleHelp_Language_ConvertZh(LPCXSTR lpszJsonFile, LPCXSTR lpszSourceStr, XCHAR* ptszDestStr); + bool ModuleHelp_Translation_Convert(ENUM_XENGINE_APISERVICE_TRANSLATION_TYPE enTranslationType, XCHAR* ptszTranslationType); private: }; \ No newline at end of file diff --git a/XEngine_Source/XEngine_ModuleHelp/ModuleHelp_Locker/ModuleHelp_Locker.cpp b/XEngine_Source/XEngine_ModuleHelp/ModuleHelp_Locker/ModuleHelp_Locker.cpp index 2323ba648449a3778acde68b0f43a0b988ee15a1..60e8a5ad66e4fff1af31708b5ed72a7a3400b795 100644 --- a/XEngine_Source/XEngine_ModuleHelp/ModuleHelp_Locker/ModuleHelp_Locker.cpp +++ b/XEngine_Source/XEngine_ModuleHelp/ModuleHelp_Locker/ModuleHelp_Locker.cpp @@ -34,22 +34,22 @@ CModuleHelp_Locker::~CModuleHelp_Locker() 意思:是否成功 备注: *********************************************************************/ -BOOL CModuleHelp_Locker::ModuleHelp_Locker_Create(XNETHANDLE* pxhToken) +bool CModuleHelp_Locker::ModuleHelp_Locker_Create(XNETHANDLE* pxhToken) { - ModuleHelp_IsErrorOccur = FALSE; + ModuleHelp_IsErrorOccur = false; if (NULL == pxhToken) { - ModuleHelp_IsErrorOccur = TRUE; + ModuleHelp_IsErrorOccur = true; ModuleHelp_dwErrorCode = ERROR_XENGINE_APISERVICE_MODULE_HELP_LOCK_PARAMENT; - return FALSE; + return false; } MODULEHELP_LOCKINFO *pSt_LockInfo = new MODULEHELP_LOCKINFO; if (NULL == pSt_LockInfo) { - ModuleHelp_IsErrorOccur = TRUE; + ModuleHelp_IsErrorOccur = true; ModuleHelp_dwErrorCode = ERROR_XENGINE_APISERVICE_MODULE_HELP_LOCK_MALLOC; - return FALSE; + return false; } pSt_LockInfo->enLockStatus = ENUM_MODULEHELP_LOCKSTATUS_NOTUSED; @@ -58,7 +58,7 @@ BOOL CModuleHelp_Locker::ModuleHelp_Locker_Create(XNETHANDLE* pxhToken) st_Locker.lock(); stl_MapLocker.insert(make_pair(*pxhToken, pSt_LockInfo)); st_Locker.unlock(); - return TRUE; + return true; } /******************************************************************** 函数名称:ModuleHelp_Locker_OPen @@ -73,35 +73,35 @@ BOOL CModuleHelp_Locker::ModuleHelp_Locker_Create(XNETHANDLE* pxhToken) 意思:是否成功 备注: *********************************************************************/ -BOOL CModuleHelp_Locker::ModuleHelp_Locker_OPen(XNETHANDLE xhToken) +bool CModuleHelp_Locker::ModuleHelp_Locker_OPen(XNETHANDLE xhToken) { - ModuleHelp_IsErrorOccur = FALSE; + ModuleHelp_IsErrorOccur = false; //看看存在不存在 st_Locker.lock_shared(); auto stl_MapIterator = stl_MapLocker.find(xhToken); if (stl_MapIterator != stl_MapLocker.end()) { - ModuleHelp_IsErrorOccur = TRUE; + ModuleHelp_IsErrorOccur = true; ModuleHelp_dwErrorCode = ERROR_XENGINE_APISERVICE_MODULE_HELP_LOCK_EXIST; st_Locker.unlock_shared(); - return FALSE; + return false; } st_Locker.unlock_shared(); //不存在插入 MODULEHELP_LOCKINFO* pSt_LockInfo = new MODULEHELP_LOCKINFO; if (NULL == pSt_LockInfo) { - ModuleHelp_IsErrorOccur = TRUE; + ModuleHelp_IsErrorOccur = true; ModuleHelp_dwErrorCode = ERROR_XENGINE_APISERVICE_MODULE_HELP_LOCK_MALLOC; - return FALSE; + return false; } pSt_LockInfo->enLockStatus = ENUM_MODULEHELP_LOCKSTATUS_NOTUSED; st_Locker.lock(); stl_MapLocker.insert(make_pair(xhToken, pSt_LockInfo)); st_Locker.unlock(); - return TRUE; + return true; } /******************************************************************** 函数名称:ModuleHelp_Locker_ReadLock @@ -116,33 +116,33 @@ BOOL CModuleHelp_Locker::ModuleHelp_Locker_OPen(XNETHANDLE xhToken) 意思:是否成功 备注: *********************************************************************/ -BOOL CModuleHelp_Locker::ModuleHelp_Locker_ReadLock(XNETHANDLE xhToken) +bool CModuleHelp_Locker::ModuleHelp_Locker_ReadLock(XNETHANDLE xhToken) { - ModuleHelp_IsErrorOccur = FALSE; + ModuleHelp_IsErrorOccur = false; //看看存在不存在 st_Locker.lock_shared(); auto stl_MapIterator = stl_MapLocker.find(xhToken); if (stl_MapIterator == stl_MapLocker.end()) { - ModuleHelp_IsErrorOccur = TRUE; + ModuleHelp_IsErrorOccur = true; ModuleHelp_dwErrorCode = ERROR_XENGINE_APISERVICE_MODULE_HELP_LOCK_NOTFOUND; st_Locker.unlock_shared(); - return FALSE; + return false; } //判断锁状态,如果是写,返回错误 if (ENUM_MODULEHELP_LOCKSTATUS_WRITE == stl_MapIterator->second->enLockStatus) { - ModuleHelp_IsErrorOccur = TRUE; + ModuleHelp_IsErrorOccur = true; ModuleHelp_dwErrorCode = ERROR_XENGINE_APISERVICE_MODULE_HELP_LOCK_LOCKED; st_Locker.unlock_shared(); - return FALSE; + return false; } //没有加锁,开始加锁 stl_MapIterator->second->enLockStatus = ENUM_MODULEHELP_LOCKSTATUS_READ; st_Locker.unlock_shared(); - return TRUE; + return true; } /******************************************************************** 函数名称:ModuleHelp_Locker_ReadUNLock @@ -157,32 +157,32 @@ BOOL CModuleHelp_Locker::ModuleHelp_Locker_ReadLock(XNETHANDLE xhToken) 意思:是否成功 备注: *********************************************************************/ -BOOL CModuleHelp_Locker::ModuleHelp_Locker_ReadUNLock(XNETHANDLE xhToken) +bool CModuleHelp_Locker::ModuleHelp_Locker_ReadUNLock(XNETHANDLE xhToken) { - ModuleHelp_IsErrorOccur = FALSE; + ModuleHelp_IsErrorOccur = false; //看看存在不存在 st_Locker.lock_shared(); auto stl_MapIterator = stl_MapLocker.find(xhToken); if (stl_MapIterator == stl_MapLocker.end()) { - ModuleHelp_IsErrorOccur = TRUE; + ModuleHelp_IsErrorOccur = true; ModuleHelp_dwErrorCode = ERROR_XENGINE_APISERVICE_MODULE_HELP_LOCK_NOTFOUND; st_Locker.unlock_shared(); - return FALSE; + return false; } //是不是READ锁定,不是返回错误 if (ENUM_MODULEHELP_LOCKSTATUS_READ != stl_MapIterator->second->enLockStatus) { - ModuleHelp_IsErrorOccur = TRUE; + ModuleHelp_IsErrorOccur = true; ModuleHelp_dwErrorCode = ERROR_XENGINE_APISERVICE_MODULE_HELP_LOCK_STATUS; st_Locker.unlock_shared(); - return FALSE; + return false; } stl_MapIterator->second->enLockStatus = ENUM_MODULEHELP_LOCKSTATUS_NOTUSED; st_Locker.unlock_shared(); - return TRUE; + return true; } /******************************************************************** 函数名称:ModuleHelp_Locker_WriteLock @@ -197,32 +197,32 @@ BOOL CModuleHelp_Locker::ModuleHelp_Locker_ReadUNLock(XNETHANDLE xhToken) 意思:是否成功 备注: *********************************************************************/ -BOOL CModuleHelp_Locker::ModuleHelp_Locker_WriteLock(XNETHANDLE xhToken) +bool CModuleHelp_Locker::ModuleHelp_Locker_WriteLock(XNETHANDLE xhToken) { - ModuleHelp_IsErrorOccur = FALSE; + ModuleHelp_IsErrorOccur = false; //看看存在不存在 st_Locker.lock_shared(); auto stl_MapIterator = stl_MapLocker.find(xhToken); if (stl_MapIterator == stl_MapLocker.end()) { - ModuleHelp_IsErrorOccur = TRUE; + ModuleHelp_IsErrorOccur = true; ModuleHelp_dwErrorCode = ERROR_XENGINE_APISERVICE_MODULE_HELP_LOCK_NOTFOUND; st_Locker.unlock_shared(); - return FALSE; + return false; } //有没有锁定状态 if ((ENUM_MODULEHELP_LOCKSTATUS_READ == stl_MapIterator->second->enLockStatus) || (ENUM_MODULEHELP_LOCKSTATUS_WRITE == stl_MapIterator->second->enLockStatus)) { - ModuleHelp_IsErrorOccur = TRUE; + ModuleHelp_IsErrorOccur = true; ModuleHelp_dwErrorCode = ERROR_XENGINE_APISERVICE_MODULE_HELP_LOCK_LOCKED; st_Locker.unlock_shared(); - return FALSE; + return false; } stl_MapIterator->second->enLockStatus = ENUM_MODULEHELP_LOCKSTATUS_WRITE; st_Locker.unlock_shared(); - return TRUE; + return true; } /******************************************************************** 函数名称:ModuleHelp_Locker_WriteUNLock @@ -237,32 +237,32 @@ BOOL CModuleHelp_Locker::ModuleHelp_Locker_WriteLock(XNETHANDLE xhToken) 意思:是否成功 备注: *********************************************************************/ -BOOL CModuleHelp_Locker::ModuleHelp_Locker_WriteUNLock(XNETHANDLE xhToken) +bool CModuleHelp_Locker::ModuleHelp_Locker_WriteUNLock(XNETHANDLE xhToken) { - ModuleHelp_IsErrorOccur = FALSE; + ModuleHelp_IsErrorOccur = false; //看看存在不存在 st_Locker.lock_shared(); auto stl_MapIterator = stl_MapLocker.find(xhToken); if (stl_MapIterator == stl_MapLocker.end()) { - ModuleHelp_IsErrorOccur = TRUE; + ModuleHelp_IsErrorOccur = true; ModuleHelp_dwErrorCode = ERROR_XENGINE_APISERVICE_MODULE_HELP_LOCK_NOTFOUND; st_Locker.unlock_shared(); - return FALSE; + return false; } //有没有锁定状态 if (ENUM_MODULEHELP_LOCKSTATUS_WRITE == stl_MapIterator->second->enLockStatus) { - ModuleHelp_IsErrorOccur = TRUE; + ModuleHelp_IsErrorOccur = true; ModuleHelp_dwErrorCode = ERROR_XENGINE_APISERVICE_MODULE_HELP_LOCK_STATUS; st_Locker.unlock_shared(); - return FALSE; + return false; } stl_MapIterator->second->enLockStatus = ENUM_MODULEHELP_LOCKSTATUS_NOTUSED; st_Locker.unlock_shared(); - return TRUE; + return true; } /******************************************************************** 函数名称:ModuleHelp_Locker_Close @@ -277,9 +277,9 @@ BOOL CModuleHelp_Locker::ModuleHelp_Locker_WriteUNLock(XNETHANDLE xhToken) 意思:是否成功 备注: *********************************************************************/ -BOOL CModuleHelp_Locker::ModuleHelp_Locker_Close(XNETHANDLE xhToken) +bool CModuleHelp_Locker::ModuleHelp_Locker_Close(XNETHANDLE xhToken) { - ModuleHelp_IsErrorOccur = FALSE; + ModuleHelp_IsErrorOccur = false; //看看存在不存在 st_Locker.lock(); @@ -291,5 +291,5 @@ BOOL CModuleHelp_Locker::ModuleHelp_Locker_Close(XNETHANDLE xhToken) stl_MapLocker.erase(stl_MapIterator); } st_Locker.unlock(); - return TRUE; + return true; } \ No newline at end of file diff --git a/XEngine_Source/XEngine_ModuleHelp/ModuleHelp_Locker/ModuleHelp_Locker.h b/XEngine_Source/XEngine_ModuleHelp/ModuleHelp_Locker/ModuleHelp_Locker.h index e43366b2602efde12fd3c5e3bd0b705c38ae01a9..4b97beb0fd7fbe7f8239db78136d11c2c2a6eaac 100644 --- a/XEngine_Source/XEngine_ModuleHelp/ModuleHelp_Locker/ModuleHelp_Locker.h +++ b/XEngine_Source/XEngine_ModuleHelp/ModuleHelp_Locker/ModuleHelp_Locker.h @@ -29,13 +29,13 @@ public: CModuleHelp_Locker(); ~CModuleHelp_Locker(); public: - BOOL ModuleHelp_Locker_Create(XNETHANDLE* pxhToken); - BOOL ModuleHelp_Locker_OPen(XNETHANDLE xhToken); - BOOL ModuleHelp_Locker_ReadLock(XNETHANDLE xhToken); - BOOL ModuleHelp_Locker_ReadUNLock(XNETHANDLE xhToken); - BOOL ModuleHelp_Locker_WriteLock(XNETHANDLE xhToken); - BOOL ModuleHelp_Locker_WriteUNLock(XNETHANDLE xhToken); - BOOL ModuleHelp_Locker_Close(XNETHANDLE xhToken); + bool ModuleHelp_Locker_Create(XNETHANDLE* pxhToken); + bool ModuleHelp_Locker_OPen(XNETHANDLE xhToken); + bool ModuleHelp_Locker_ReadLock(XNETHANDLE xhToken); + bool ModuleHelp_Locker_ReadUNLock(XNETHANDLE xhToken); + bool ModuleHelp_Locker_WriteLock(XNETHANDLE xhToken); + bool ModuleHelp_Locker_WriteUNLock(XNETHANDLE xhToken); + bool ModuleHelp_Locker_Close(XNETHANDLE xhToken); private: shared_mutex st_Locker; private: diff --git a/XEngine_Source/XEngine_ModuleHelp/ModuleHelp_P2PClient/ModuleHelp_P2PClient.cpp b/XEngine_Source/XEngine_ModuleHelp/ModuleHelp_P2PClient/ModuleHelp_P2PClient.cpp index 058a81f30c49053b80d2f041f55edfd0f08257b2..5dacd2ac4ec5d6f805067cb56134a08d04c36b2e 100644 --- a/XEngine_Source/XEngine_ModuleHelp/ModuleHelp_P2PClient/ModuleHelp_P2PClient.cpp +++ b/XEngine_Source/XEngine_ModuleHelp/ModuleHelp_P2PClient/ModuleHelp_P2PClient.cpp @@ -43,11 +43,11 @@ CModuleHelp_P2PClient::~CModuleHelp_P2PClient() 意思:是否成功 备注: *********************************************************************/ -BOOL CModuleHelp_P2PClient::ModuleHelp_P2PClient_Init(int nTimeout, CALLBACK_APISERVICE_MODULE_HELP_P2PCLIENT fpCall_P2PClient, LPVOID lParam /* = NULL */) +bool CModuleHelp_P2PClient::ModuleHelp_P2PClient_Init(int nTimeout, CALLBACK_APISERVICE_MODULE_HELP_P2PCLIENT fpCall_P2PClient, XPVOID lParam /* = NULL */) { - ModuleHelp_IsErrorOccur = FALSE; + ModuleHelp_IsErrorOccur = false; - m_bIsRun = TRUE; + m_bIsRun = true; m_nTimeout = nTimeout; m_lParam = lParam; lpCall_P2PClient = fpCall_P2PClient; @@ -55,11 +55,11 @@ BOOL CModuleHelp_P2PClient::ModuleHelp_P2PClient_Init(int nTimeout, CALLBACK_API pSTDThread = make_shared(ModuleHelp_P2PClient_Thread, this); if (NULL == pSTDThread) { - ModuleHelp_IsErrorOccur = TRUE; + ModuleHelp_IsErrorOccur = true; ModuleHelp_dwErrorCode = ERROR_XENGINE_APISERVICE_MODULE_HELP_P2P_THREAD; - return FALSE; + return false; } - return TRUE; + return true; } /******************************************************************** 函数名称:ModuleHelp_P2PClient_Destory @@ -69,19 +69,19 @@ BOOL CModuleHelp_P2PClient::ModuleHelp_P2PClient_Init(int nTimeout, CALLBACK_API 意思:是否成功 备注: *********************************************************************/ -BOOL CModuleHelp_P2PClient::ModuleHelp_P2PClient_Destory() +bool CModuleHelp_P2PClient::ModuleHelp_P2PClient_Destory() { - ModuleHelp_IsErrorOccur = FALSE; + ModuleHelp_IsErrorOccur = false; if (m_bIsRun) { - m_bIsRun = FALSE; + m_bIsRun = false; if (pSTDThread->joinable()) { pSTDThread->join(); } } - return TRUE; + return true; } /******************************************************************** 函数名称:ModuleHelp_P2PClient_Add @@ -96,9 +96,9 @@ BOOL CModuleHelp_P2PClient::ModuleHelp_P2PClient_Destory() 意思:是否添加成功 备注: *********************************************************************/ -BOOL CModuleHelp_P2PClient::ModuleHelp_P2PClient_Add(XENGINE_P2XP_PEERINFO* pSt_PeerInfo) +bool CModuleHelp_P2PClient::ModuleHelp_P2PClient_Add(XENGINE_P2XP_PEERINFO* pSt_PeerInfo) { - ModuleHelp_IsErrorOccur = FALSE; + ModuleHelp_IsErrorOccur = false; st_Locker.lock(); unordered_map > >::iterator stl_MapIteratorAddr = stl_MapClients.find(pSt_PeerInfo->st_PeerAddr.tszPublicAddr); @@ -109,18 +109,18 @@ BOOL CModuleHelp_P2PClient::ModuleHelp_P2PClient_Add(XENGINE_P2XP_PEERINFO* pSt_ stl_MapPrivate.insert(make_pair(pSt_PeerInfo->st_PeerAddr.tszConnectAddr, *pSt_PeerInfo)); //获取私有网络的路由地址 XENGINE_LIBADDR st_LibAddr; - TCHAR tszPrivateAddr[64]; + XCHAR tszPrivateAddr[64]; memset(tszPrivateAddr, '\0', sizeof(tszPrivateAddr)); memset(&st_LibAddr, '\0', sizeof(XENGINE_LIBADDR)); if (!BaseLib_OperatorIPAddr_IsIPV4Addr(pSt_PeerInfo->st_PeerAddr.tszPrivateAddr, &st_LibAddr)) { //没有内网地址不加入. - ModuleHelp_IsErrorOccur = TRUE; + ModuleHelp_IsErrorOccur = true; ModuleHelp_dwErrorCode = BaseLib_GetLastError(); - return FALSE; + return false; } - _stprintf_s(tszPrivateAddr, _T("%d.%d.%d"), st_LibAddr.nIPAddr1, st_LibAddr.nIPAddr2, st_LibAddr.nIPAddr3); + _xstprintf(tszPrivateAddr, _X("%d.%d.%d"), st_LibAddr.nIPAddr1, st_LibAddr.nIPAddr2, st_LibAddr.nIPAddr3); //然后加入到私网地址 unordered_map > stl_MapPriAddr; stl_MapPriAddr.insert(make_pair(tszPrivateAddr, stl_MapPrivate)); @@ -131,7 +131,7 @@ BOOL CModuleHelp_P2PClient::ModuleHelp_P2PClient_Add(XENGINE_P2XP_PEERINFO* pSt_ { //找到了这个公网的地址 XENGINE_LIBADDR st_LibAddr; - TCHAR tszPrivateAddr[64]; + XCHAR tszPrivateAddr[64]; memset(tszPrivateAddr, '\0', sizeof(tszPrivateAddr)); memset(&st_LibAddr, '\0', sizeof(XENGINE_LIBADDR)); @@ -139,12 +139,12 @@ BOOL CModuleHelp_P2PClient::ModuleHelp_P2PClient_Add(XENGINE_P2XP_PEERINFO* pSt_ if (!BaseLib_OperatorIPAddr_IsIPV4Addr(pSt_PeerInfo->st_PeerAddr.tszPrivateAddr, &st_LibAddr)) { //没有内网地址不加入. - ModuleHelp_IsErrorOccur = TRUE; + ModuleHelp_IsErrorOccur = true; ModuleHelp_dwErrorCode = BaseLib_GetLastError(); - return FALSE; + return false; } //内网地址192.168.1.2 内网出口192.168.1.1 链接地址10.0.1.0:13444 - _stprintf_s(tszPrivateAddr, _T("%d.%d.%d"), st_LibAddr.nIPAddr1, st_LibAddr.nIPAddr2, st_LibAddr.nIPAddr3); + _xstprintf(tszPrivateAddr, _X("%d.%d.%d"), st_LibAddr.nIPAddr1, st_LibAddr.nIPAddr2, st_LibAddr.nIPAddr3); unordered_map >::iterator stl_MapPriIteartor = stl_MapIteratorAddr->second.find(tszPrivateAddr); if (stl_MapPriIteartor == stl_MapIteratorAddr->second.end()) { @@ -166,7 +166,7 @@ BOOL CModuleHelp_P2PClient::ModuleHelp_P2PClient_Add(XENGINE_P2XP_PEERINFO* pSt_ } } st_Locker.unlock(); - return TRUE; + return true; } /******************************************************************** 函数名称:ModuleHelp_P2PClient_Get @@ -186,51 +186,51 @@ BOOL CModuleHelp_P2PClient::ModuleHelp_P2PClient_Add(XENGINE_P2XP_PEERINFO* pSt_ 意思:是否查找成功 备注: *********************************************************************/ -BOOL CModuleHelp_P2PClient::ModuleHelp_P2PClient_Get(XENGINE_P2XPPEER_PROTOCOL *pSt_P2PProtocol, XENGINE_P2XP_PEERINFO* pSt_PeerInfo /* = NULL */) +bool CModuleHelp_P2PClient::ModuleHelp_P2PClient_Get(XENGINE_P2XPPEER_PROTOCOL *pSt_P2PProtocol, XENGINE_P2XP_PEERINFO* pSt_PeerInfo /* = NULL */) { - ModuleHelp_IsErrorOccur = FALSE; + ModuleHelp_IsErrorOccur = false; if (NULL == pSt_P2PProtocol) { - ModuleHelp_IsErrorOccur = TRUE; + ModuleHelp_IsErrorOccur = true; ModuleHelp_dwErrorCode = ERROR_XENGINE_APISERVICE_MODULE_HELP_P2P_PARAMENT; - return FALSE; + return false; } //查找元素 st_Locker.lock_shared(); unordered_map > >::const_iterator stl_MapPubIterator = stl_MapClients.find(pSt_P2PProtocol->tszPublicAddr); if (stl_MapPubIterator == stl_MapClients.end()) { - ModuleHelp_IsErrorOccur = TRUE; + ModuleHelp_IsErrorOccur = true; ModuleHelp_dwErrorCode = ERROR_XENGINE_APISERVICE_MODULE_HELP_P2P_NOTFOUND; st_Locker.unlock_shared(); - return FALSE; + return false; } //转换地址 XENGINE_LIBADDR st_LibAddr; - TCHAR tszPrivateAddr[64]; + XCHAR tszPrivateAddr[64]; memset(tszPrivateAddr, '\0', sizeof(tszPrivateAddr)); memset(&st_LibAddr, '\0', sizeof(XENGINE_LIBADDR)); //获取私有网络的路由地址 BaseLib_OperatorIPAddr_IsIPV4Addr(pSt_P2PProtocol->tszPrivateAddr, &st_LibAddr); - _stprintf_s(tszPrivateAddr, _T("%d.%d.%d"), st_LibAddr.nIPAddr1, st_LibAddr.nIPAddr2, st_LibAddr.nIPAddr3); + _xstprintf(tszPrivateAddr, _X("%d.%d.%d"), st_LibAddr.nIPAddr1, st_LibAddr.nIPAddr2, st_LibAddr.nIPAddr3); unordered_map >::const_iterator stl_MapPriIterator = stl_MapPubIterator->second.find(tszPrivateAddr); if (stl_MapPriIterator == stl_MapPubIterator->second.end()) { - ModuleHelp_IsErrorOccur = TRUE; + ModuleHelp_IsErrorOccur = true; ModuleHelp_dwErrorCode = ERROR_XENGINE_APISERVICE_MODULE_HELP_P2P_NOTFOUND; st_Locker.unlock_shared(); - return FALSE; + return false; } unordered_map::const_iterator stl_MapConnIterator = stl_MapPriIterator->second.find(pSt_P2PProtocol->tszConnectAddr); if (stl_MapConnIterator == stl_MapPriIterator->second.end()) { - ModuleHelp_IsErrorOccur = TRUE; + ModuleHelp_IsErrorOccur = true; ModuleHelp_dwErrorCode = ERROR_XENGINE_APISERVICE_MODULE_HELP_P2P_NOTFOUND; st_Locker.unlock_shared(); - return FALSE; + return false; } //判断是否导出节点信息 if (NULL != pSt_PeerInfo) @@ -238,7 +238,7 @@ BOOL CModuleHelp_P2PClient::ModuleHelp_P2PClient_Get(XENGINE_P2XPPEER_PROTOCOL * *pSt_PeerInfo = stl_MapConnIterator->second; } st_Locker.unlock_shared(); - return TRUE; + return true; } /******************************************************************** 函数名称:ModuleHelp_P2PClient_GetLan @@ -263,49 +263,49 @@ BOOL CModuleHelp_P2PClient::ModuleHelp_P2PClient_Get(XENGINE_P2XPPEER_PROTOCOL * 意思:是否成功 备注:参数二需要调用基础库的BaseLib_OperatorMemory_Free函数进行内存释放 *********************************************************************/ -BOOL CModuleHelp_P2PClient::ModuleHelp_P2PClient_GetLan(XENGINE_P2XPPEER_PROTOCOL* pSt_P2PProtocol, XENGINE_P2XPPEER_PROTOCOL*** pppSt_P2XPClient, int* pInt_ListCount) +bool CModuleHelp_P2PClient::ModuleHelp_P2PClient_GetLan(XENGINE_P2XPPEER_PROTOCOL* pSt_P2PProtocol, XENGINE_P2XPPEER_PROTOCOL*** pppSt_P2XPClient, int* pInt_ListCount) { - ModuleHelp_IsErrorOccur = FALSE; + ModuleHelp_IsErrorOccur = false; if ((NULL == pSt_P2PProtocol) || (NULL == pppSt_P2XPClient) || (NULL == pInt_ListCount)) { - ModuleHelp_IsErrorOccur = TRUE; + ModuleHelp_IsErrorOccur = true; ModuleHelp_dwErrorCode = ERROR_XENGINE_APISERVICE_MODULE_HELP_P2P_PARAMENT; - return FALSE; + return false; } //查找公网IP地址 st_Locker.lock_shared(); unordered_map > >::const_iterator stl_MapPubIterator = stl_MapClients.find(pSt_P2PProtocol->tszPublicAddr); if (stl_MapPubIterator == stl_MapClients.end()) { - ModuleHelp_IsErrorOccur = TRUE; + ModuleHelp_IsErrorOccur = true; ModuleHelp_dwErrorCode = ERROR_XENGINE_APISERVICE_MODULE_HELP_P2P_NOTPUBADDRR; st_Locker.unlock_shared(); - return FALSE; + return false; } XENGINE_LIBADDR st_LibAddr; - TCHAR tszPrivateAddr[64]; + XCHAR tszPrivateAddr[64]; memset(tszPrivateAddr, '\0', sizeof(tszPrivateAddr)); memset(&st_LibAddr, '\0', sizeof(XENGINE_LIBADDR)); //如果输入的是192.168.1.1 IP,就我们自己分割,否则认为输入的是 192.168.1 if (BaseLib_OperatorIPAddr_IsIPV4Addr(pSt_P2PProtocol->tszPrivateAddr, &st_LibAddr)) { - _stprintf_s(tszPrivateAddr, _T("%d.%d.%d"), st_LibAddr.nIPAddr1, st_LibAddr.nIPAddr2, st_LibAddr.nIPAddr3); + _xstprintf(tszPrivateAddr, _X("%d.%d.%d"), st_LibAddr.nIPAddr1, st_LibAddr.nIPAddr2, st_LibAddr.nIPAddr3); unordered_map >::const_iterator stl_MapPriIterator = stl_MapPubIterator->second.find(tszPrivateAddr); if (stl_MapPriIterator == stl_MapPubIterator->second.end()) { - ModuleHelp_IsErrorOccur = TRUE; + ModuleHelp_IsErrorOccur = true; ModuleHelp_dwErrorCode = ERROR_XENGINE_APISERVICE_MODULE_HELP_P2P_NOTPRIADDR; st_Locker.unlock_shared(); - return FALSE; + return false; } if (stl_MapPriIterator->second.empty()) { - ModuleHelp_IsErrorOccur = TRUE; + ModuleHelp_IsErrorOccur = true; ModuleHelp_dwErrorCode = ERROR_XENGINE_APISERVICE_MODULE_HELP_P2P_NOLIST; st_Locker.unlock_shared(); - return FALSE; + return false; } BaseLib_OperatorMemory_Malloc((XPPPMEM)pppSt_P2XPClient, stl_MapPriIterator->second.size(), sizeof(XENGINE_P2XPPEER_PROTOCOL)); unordered_map::const_iterator stl_MapConnIterator = stl_MapPriIterator->second.begin(); @@ -320,17 +320,17 @@ BOOL CModuleHelp_P2PClient::ModuleHelp_P2PClient_GetLan(XENGINE_P2XPPEER_PROTOCO unordered_map >::const_iterator stl_MapPriIterator = stl_MapPubIterator->second.find(pSt_P2PProtocol->tszPrivateAddr); if (stl_MapPriIterator == stl_MapPubIterator->second.end()) { - ModuleHelp_IsErrorOccur = TRUE; + ModuleHelp_IsErrorOccur = true; ModuleHelp_dwErrorCode = ERROR_XENGINE_APISERVICE_MODULE_HELP_P2P_NOTPRIADDR; st_Locker.unlock_shared(); - return FALSE; + return false; } if (stl_MapPriIterator->second.empty()) { - ModuleHelp_IsErrorOccur = TRUE; + ModuleHelp_IsErrorOccur = true; ModuleHelp_dwErrorCode = ERROR_XENGINE_APISERVICE_MODULE_HELP_P2P_NOLIST; st_Locker.unlock_shared(); - return FALSE; + return false; } BaseLib_OperatorMemory_Malloc((XPPPMEM)pppSt_P2XPClient, stl_MapPriIterator->second.size(), sizeof(XENGINE_P2XPPEER_PROTOCOL)); unordered_map::const_iterator stl_MapConnIterator = stl_MapPriIterator->second.begin(); @@ -341,7 +341,7 @@ BOOL CModuleHelp_P2PClient::ModuleHelp_P2PClient_GetLan(XENGINE_P2XPPEER_PROTOCO *pInt_ListCount = stl_MapPriIterator->second.size(); } st_Locker.unlock_shared(); - return TRUE; + return true; } /******************************************************************** 函数名称:ModuleHelp_P2PClient_GetLList @@ -366,34 +366,34 @@ BOOL CModuleHelp_P2PClient::ModuleHelp_P2PClient_GetLan(XENGINE_P2XPPEER_PROTOCO 意思:是否成功 备注:参数二需要调用基础库的BaseLib_OperatorMemory_Free函数进行内存释放 *********************************************************************/ -BOOL CModuleHelp_P2PClient::ModuleHelp_P2PClient_GetLList(LPCTSTR lpszPubAddr, TCHAR*** pppszP2XPClient, int* pInt_ListCount) +bool CModuleHelp_P2PClient::ModuleHelp_P2PClient_GetLList(LPCXSTR lpszPubAddr, XCHAR*** pppszP2XPClient, int* pInt_ListCount) { - ModuleHelp_IsErrorOccur = FALSE; + ModuleHelp_IsErrorOccur = false; if ((NULL == lpszPubAddr) || (NULL == pppszP2XPClient) || (NULL == pInt_ListCount)) { - ModuleHelp_IsErrorOccur = TRUE; + ModuleHelp_IsErrorOccur = true; ModuleHelp_dwErrorCode = ERROR_XENGINE_APISERVICE_MODULE_HELP_P2P_PARAMENT; - return FALSE; + return false; } st_Locker.lock_shared(); unordered_map > >::const_iterator stl_MapPubIterator = stl_MapClients.find(lpszPubAddr); if (stl_MapPubIterator == stl_MapClients.end()) { - ModuleHelp_IsErrorOccur = TRUE; + ModuleHelp_IsErrorOccur = true; ModuleHelp_dwErrorCode = ERROR_XENGINE_APISERVICE_MODULE_HELP_P2P_NOTFOUND; st_Locker.unlock_shared(); - return FALSE; + return false; } BaseLib_OperatorMemory_Malloc((XPPPMEM)pppszP2XPClient, stl_MapPubIterator->second.size(), 128); unordered_map >::const_iterator stl_MapPriIterator = stl_MapPubIterator->second.begin(); for (int i = 0; stl_MapPriIterator != stl_MapPubIterator->second.end(); stl_MapPriIterator++, i++) { - _tcscpy((*pppszP2XPClient)[i], stl_MapPriIterator->first.c_str()); + _tcsxcpy((*pppszP2XPClient)[i], stl_MapPriIterator->first.c_str()); } *pInt_ListCount = stl_MapPubIterator->second.size(); st_Locker.unlock_shared(); - return TRUE; + return true; } /******************************************************************** 函数名称:ModuleHelp_P2PClient_GetWList @@ -413,21 +413,21 @@ BOOL CModuleHelp_P2PClient::ModuleHelp_P2PClient_GetLList(LPCTSTR lpszPubAddr, T 意思:是否成功 备注: *********************************************************************/ -BOOL CModuleHelp_P2PClient::ModuleHelp_P2PClient_GetWList(TCHAR*** pppszP2XPClient, int* pInt_ListCount) +bool CModuleHelp_P2PClient::ModuleHelp_P2PClient_GetWList(XCHAR*** pppszP2XPClient, int* pInt_ListCount) { - ModuleHelp_IsErrorOccur = FALSE; + ModuleHelp_IsErrorOccur = false; if ((NULL == pppszP2XPClient) || (NULL == pInt_ListCount)) { - ModuleHelp_IsErrorOccur = TRUE; + ModuleHelp_IsErrorOccur = true; ModuleHelp_dwErrorCode = ERROR_XENGINE_APISERVICE_MODULE_HELP_P2P_PARAMENT; - return FALSE; + return false; } if (stl_MapClients.size() <= 0) { - ModuleHelp_IsErrorOccur = TRUE; + ModuleHelp_IsErrorOccur = true; ModuleHelp_dwErrorCode = ERROR_XENGINE_APISERVICE_MODULE_HELP_P2P_NOTFOUND; - return FALSE; + return false; } BaseLib_OperatorMemory_Malloc((XPPPMEM)pppszP2XPClient, stl_MapClients.size(), 128); @@ -435,11 +435,11 @@ BOOL CModuleHelp_P2PClient::ModuleHelp_P2PClient_GetWList(TCHAR*** pppszP2XPClie unordered_map > >::const_iterator stl_MapIterator = stl_MapClients.begin(); for (int i = 0; stl_MapIterator != stl_MapClients.end(); stl_MapIterator++, i++) { - _tcscpy((*pppszP2XPClient)[i], stl_MapIterator->first.c_str()); + _tcsxcpy((*pppszP2XPClient)[i], stl_MapIterator->first.c_str()); } *pInt_ListCount = stl_MapClients.size(); st_Locker.unlock_shared(); - return TRUE; + return true; } /******************************************************************** 函数名称:ModuleHelp_P2PClient_Delete @@ -454,21 +454,21 @@ BOOL CModuleHelp_P2PClient::ModuleHelp_P2PClient_GetWList(TCHAR*** pppszP2XPClie 意思:是否成功删除 备注: *********************************************************************/ -BOOL CModuleHelp_P2PClient::ModuleHelp_P2PClient_Delete(XENGINE_P2XPPEER_PROTOCOL* pSt_P2PProtocol) +bool CModuleHelp_P2PClient::ModuleHelp_P2PClient_Delete(XENGINE_P2XPPEER_PROTOCOL* pSt_P2PProtocol) { - ModuleHelp_IsErrorOccur = FALSE; + ModuleHelp_IsErrorOccur = false; //查找公网地址 unordered_map > >::iterator stl_MapPubIteartor = stl_MapClients.find(pSt_P2PProtocol->tszPublicAddr); if (stl_MapPubIteartor != stl_MapClients.end()) { XENGINE_LIBADDR st_LibAddr; - TCHAR tszPrivateAddr[64]; + XCHAR tszPrivateAddr[64]; memset(tszPrivateAddr, '\0', sizeof(tszPrivateAddr)); memset(&st_LibAddr, '\0', sizeof(XENGINE_LIBADDR)); if (BaseLib_OperatorIPAddr_IsIPV4Addr(pSt_P2PProtocol->tszPrivateAddr, &st_LibAddr)) { - _stprintf_s(tszPrivateAddr, _T("%d.%d.%d"), st_LibAddr.nIPAddr1, st_LibAddr.nIPAddr2, st_LibAddr.nIPAddr3); + _xstprintf(tszPrivateAddr, _X("%d.%d.%d"), st_LibAddr.nIPAddr1, st_LibAddr.nIPAddr2, st_LibAddr.nIPAddr3); //查找私有路由地址 unordered_map >::iterator stl_MapPriIterator = stl_MapPubIteartor->second.find(tszPrivateAddr); if (stl_MapPriIterator != stl_MapPubIteartor->second.end()) @@ -492,7 +492,7 @@ BOOL CModuleHelp_P2PClient::ModuleHelp_P2PClient_Delete(XENGINE_P2XPPEER_PROTOCO stl_MapClients.erase(stl_MapPubIteartor); //如果这个公有网络IP地址列表为空,那么就删除他. } } - return TRUE; + return true; } /******************************************************************** 函数名称:ModuleHelp_P2PClient_DelAll @@ -502,15 +502,15 @@ BOOL CModuleHelp_P2PClient::ModuleHelp_P2PClient_Delete(XENGINE_P2XPPEER_PROTOCO 意思:是否成功 备注: *********************************************************************/ -BOOL CModuleHelp_P2PClient::ModuleHelp_P2PClient_DelAll() +bool CModuleHelp_P2PClient::ModuleHelp_P2PClient_DelAll() { - ModuleHelp_IsErrorOccur = FALSE; + ModuleHelp_IsErrorOccur = false; st_Locker.lock(); stl_MapClients.clear(); st_Locker.unlock(); - return TRUE; + return true; } /******************************************************************** 函数名称:ModuleHelp_P2PClient_Heart @@ -525,60 +525,60 @@ BOOL CModuleHelp_P2PClient::ModuleHelp_P2PClient_DelAll() 意思:是否成功 备注: *********************************************************************/ -BOOL CModuleHelp_P2PClient::ModuleHelp_P2PClient_Heart(XENGINE_P2XPPEER_PROTOCOL* pSt_P2PProtocol) +bool CModuleHelp_P2PClient::ModuleHelp_P2PClient_Heart(XENGINE_P2XPPEER_PROTOCOL* pSt_P2PProtocol) { - ModuleHelp_IsErrorOccur = FALSE; + ModuleHelp_IsErrorOccur = false; if (NULL == pSt_P2PProtocol) { - ModuleHelp_IsErrorOccur = TRUE; + ModuleHelp_IsErrorOccur = true; ModuleHelp_dwErrorCode = ERROR_XENGINE_APISERVICE_MODULE_HELP_P2P_PARAMENT; - return FALSE; + return false; } //查找元素 st_Locker.lock_shared(); unordered_map > >::iterator stl_MapPubIterator = stl_MapClients.find(pSt_P2PProtocol->tszPublicAddr); if (stl_MapPubIterator == stl_MapClients.end()) { - ModuleHelp_IsErrorOccur = TRUE; + ModuleHelp_IsErrorOccur = true; ModuleHelp_dwErrorCode = ERROR_XENGINE_APISERVICE_MODULE_HELP_P2P_NOTFOUND; st_Locker.unlock_shared(); - return FALSE; + return false; } //转换地址 XENGINE_LIBADDR st_LibAddr; - TCHAR tszPrivateAddr[64]; + XCHAR tszPrivateAddr[64]; memset(tszPrivateAddr, '\0', sizeof(tszPrivateAddr)); memset(&st_LibAddr, '\0', sizeof(XENGINE_LIBADDR)); //获取私有网络的路由地址 BaseLib_OperatorIPAddr_IsIPV4Addr(pSt_P2PProtocol->tszPrivateAddr, &st_LibAddr); - _stprintf_s(tszPrivateAddr, _T("%d.%d.%d"), st_LibAddr.nIPAddr1, st_LibAddr.nIPAddr2, st_LibAddr.nIPAddr3); + _xstprintf(tszPrivateAddr, _X("%d.%d.%d"), st_LibAddr.nIPAddr1, st_LibAddr.nIPAddr2, st_LibAddr.nIPAddr3); unordered_map >::iterator stl_MapPriIterator = stl_MapPubIterator->second.find(tszPrivateAddr); if (stl_MapPriIterator == stl_MapPubIterator->second.end()) { - ModuleHelp_IsErrorOccur = TRUE; + ModuleHelp_IsErrorOccur = true; ModuleHelp_dwErrorCode = ERROR_XENGINE_APISERVICE_MODULE_HELP_P2P_NOTFOUND; st_Locker.unlock_shared(); - return FALSE; + return false; } unordered_map::iterator stl_MapConnIterator = stl_MapPriIterator->second.find(pSt_P2PProtocol->tszConnectAddr); if (stl_MapConnIterator == stl_MapPriIterator->second.end()) { - ModuleHelp_IsErrorOccur = TRUE; + ModuleHelp_IsErrorOccur = true; ModuleHelp_dwErrorCode = ERROR_XENGINE_APISERVICE_MODULE_HELP_P2P_NOTFOUND; st_Locker.unlock_shared(); - return FALSE; + return false; } stl_MapConnIterator->second.st_PeerTimer.dwUserTime = time(NULL); st_Locker.unlock_shared(); - return TRUE; + return true; } ////////////////////////////////////////////////////////////////////////// // 保护函数 ////////////////////////////////////////////////////////////////////////// -XHTHREAD CALLBACK CModuleHelp_P2PClient::ModuleHelp_P2PClient_Thread(LPVOID lParam) +XHTHREAD CALLBACK CModuleHelp_P2PClient::ModuleHelp_P2PClient_Thread(XPVOID lParam) { CModuleHelp_P2PClient* pClass_This = (CModuleHelp_P2PClient*)lParam; list stl_ListRemove; diff --git a/XEngine_Source/XEngine_ModuleHelp/ModuleHelp_P2PClient/ModuleHelp_P2PClient.h b/XEngine_Source/XEngine_ModuleHelp/ModuleHelp_P2PClient/ModuleHelp_P2PClient.h index f2ba48ae1071781a16b578ce98e4799488dbc329..285675008b2751f0116053d869644569418847a1 100644 --- a/XEngine_Source/XEngine_ModuleHelp/ModuleHelp_P2PClient/ModuleHelp_P2PClient.h +++ b/XEngine_Source/XEngine_ModuleHelp/ModuleHelp_P2PClient/ModuleHelp_P2PClient.h @@ -16,22 +16,22 @@ public: CModuleHelp_P2PClient(); ~CModuleHelp_P2PClient(); public: - BOOL ModuleHelp_P2PClient_Init(int nTimeout, CALLBACK_APISERVICE_MODULE_HELP_P2PCLIENT fpCall_P2PClient, LPVOID lParam = NULL); - BOOL ModuleHelp_P2PClient_Destory(); - BOOL ModuleHelp_P2PClient_Add(XENGINE_P2XP_PEERINFO* pSt_PeerInfo); - BOOL ModuleHelp_P2PClient_Get(XENGINE_P2XPPEER_PROTOCOL* pSt_P2PProtocol, XENGINE_P2XP_PEERINFO* pSt_PeerInfo = NULL); - BOOL ModuleHelp_P2PClient_GetLan(XENGINE_P2XPPEER_PROTOCOL* pSt_P2PProtocol, XENGINE_P2XPPEER_PROTOCOL*** pppSt_P2XPClient, int* pInt_ListCount); - BOOL ModuleHelp_P2PClient_GetLList(LPCTSTR lpszPubAddr, TCHAR*** pppszP2XPClient, int* pInt_ListCount); - BOOL ModuleHelp_P2PClient_GetWList(TCHAR*** pppszP2XPClient, int* pInt_ListCount); - BOOL ModuleHelp_P2PClient_Delete(XENGINE_P2XPPEER_PROTOCOL* pSt_P2PProtocol); - BOOL ModuleHelp_P2PClient_DelAll(); - BOOL ModuleHelp_P2PClient_Heart(XENGINE_P2XPPEER_PROTOCOL* pSt_P2PProtocol); + bool ModuleHelp_P2PClient_Init(int nTimeout, CALLBACK_APISERVICE_MODULE_HELP_P2PCLIENT fpCall_P2PClient, XPVOID lParam = NULL); + bool ModuleHelp_P2PClient_Destory(); + bool ModuleHelp_P2PClient_Add(XENGINE_P2XP_PEERINFO* pSt_PeerInfo); + bool ModuleHelp_P2PClient_Get(XENGINE_P2XPPEER_PROTOCOL* pSt_P2PProtocol, XENGINE_P2XP_PEERINFO* pSt_PeerInfo = NULL); + bool ModuleHelp_P2PClient_GetLan(XENGINE_P2XPPEER_PROTOCOL* pSt_P2PProtocol, XENGINE_P2XPPEER_PROTOCOL*** pppSt_P2XPClient, int* pInt_ListCount); + bool ModuleHelp_P2PClient_GetLList(LPCXSTR lpszPubAddr, XCHAR*** pppszP2XPClient, int* pInt_ListCount); + bool ModuleHelp_P2PClient_GetWList(XCHAR*** pppszP2XPClient, int* pInt_ListCount); + bool ModuleHelp_P2PClient_Delete(XENGINE_P2XPPEER_PROTOCOL* pSt_P2PProtocol); + bool ModuleHelp_P2PClient_DelAll(); + bool ModuleHelp_P2PClient_Heart(XENGINE_P2XPPEER_PROTOCOL* pSt_P2PProtocol); protected: - static XHTHREAD CALLBACK ModuleHelp_P2PClient_Thread(LPVOID lParam); + static XHTHREAD CALLBACK ModuleHelp_P2PClient_Thread(XPVOID lParam); private: - BOOL m_bIsRun; + bool m_bIsRun; int m_nTimeout; - LPVOID m_lParam; + XPVOID m_lParam; CALLBACK_APISERVICE_MODULE_HELP_P2PCLIENT lpCall_P2PClient; private: shared_mutex st_Locker; diff --git a/XEngine_Source/XEngine_ModuleHelp/ModuleHelp_QRCode/ModuleHelp_QRCode.cpp b/XEngine_Source/XEngine_ModuleHelp/ModuleHelp_QRCode/ModuleHelp_QRCode.cpp index 89442ed3ac1123e3799d1c318a63a226fa13c7e9..f9fbdf3868c59ecdaf588fdd7b6588201d1e036e 100644 --- a/XEngine_Source/XEngine_ModuleHelp/ModuleHelp_QRCode/ModuleHelp_QRCode.cpp +++ b/XEngine_Source/XEngine_ModuleHelp/ModuleHelp_QRCode/ModuleHelp_QRCode.cpp @@ -41,29 +41,24 @@ CModuleHelp_QRCode::~CModuleHelp_QRCode() 意思:是否成功 备注: *********************************************************************/ -BOOL CModuleHelp_QRCode::ModuleHelp_QRCode_QREncodecFile(LPCTSTR lpszFileName, LPCTSTR lpszMsgBuffer) +bool CModuleHelp_QRCode::ModuleHelp_QRCode_QREncodecFile(LPCXSTR lpszFileName, LPCXSTR lpszMsgBuffer) { - ModuleHelp_IsErrorOccur = FALSE; + ModuleHelp_IsErrorOccur = false; if ((NULL == lpszFileName) || (NULL == lpszMsgBuffer)) { - ModuleHelp_IsErrorOccur = TRUE; + ModuleHelp_IsErrorOccur = true; ModuleHelp_dwErrorCode = ERROR_XENGINE_APISERVICE_MODULE_HELP_QRCODE_PARAMENT; - return FALSE; + return false; } #ifdef _MSC_BUILD //使用qrencode进行字符串编码 -#ifdef _UNICODE - USES_CONVERSION; - QRcode* pSt_QRCodec = QRcode_encodeString(W2A(lpszMsgBuffer), 0, QR_ECLEVEL_H, QR_MODE_8, 1); -#else QRcode* pSt_QRCodec = QRcode_encodeString(lpszMsgBuffer, 0, QR_ECLEVEL_H, QR_MODE_8, 1); -#endif if (NULL == pSt_QRCodec) { - ModuleHelp_IsErrorOccur = TRUE; + ModuleHelp_IsErrorOccur = true; ModuleHelp_dwErrorCode = ERROR_XENGINE_APISERVICE_MODULE_HELP_QRCODE_FAILED; - return FALSE; + return false; } cv::Mat m_SrcFrame; //转换数据 @@ -79,23 +74,18 @@ BOOL CModuleHelp_QRCode::ModuleHelp_QRCode_QREncodecFile(LPCTSTR lpszFileName, L cv::resize(m_SrcFrame, m_SrcFrame, cv::Size(m_SrcFrame.rows * 10, m_SrcFrame.cols * 10), 0, 0, cv::INTER_NEAREST); //转换成彩色 cv::cvtColor(m_SrcFrame, m_SrcFrame, cv::COLOR_GRAY2BGR); -#ifdef _UNICODE - //USES_CONVERSION; - if (!cv::imwrite(W2A(lpszFileName), m_SrcFrame)) -#else if (!cv::imwrite(lpszFileName, m_SrcFrame)) -#endif { - ModuleHelp_IsErrorOccur = TRUE; + ModuleHelp_IsErrorOccur = true; ModuleHelp_dwErrorCode = ERROR_XENGINE_APISERVICE_MODULE_HELP_QRCODE_WRITE; - return FALSE; + return false; } #else - ModuleHelp_IsErrorOccur = TRUE; + ModuleHelp_IsErrorOccur = true; ModuleHelp_dwErrorCode = ERROR_XENGINE_APISERVICE_MODULE_HELP_QRCODE_NOTSUPPORT; - return FALSE; + return false; #endif - return TRUE; + return true; } /******************************************************************** 函数名称:ModuleHelp_QRCode_QREncodecMemory @@ -125,29 +115,24 @@ BOOL CModuleHelp_QRCode::ModuleHelp_QRCode_QREncodecFile(LPCTSTR lpszFileName, L 意思:是否成功 备注: *********************************************************************/ -BOOL CModuleHelp_QRCode::ModuleHelp_QRCode_QREncodecMemory(LPCTSTR lpszMsgBuffer, TCHAR* ptszMsgBuffer, int* pInt_MsgLen, LPCTSTR lpszFmt) +bool CModuleHelp_QRCode::ModuleHelp_QRCode_QREncodecMemory(LPCXSTR lpszMsgBuffer, XCHAR* ptszMsgBuffer, int* pInt_MsgLen, LPCXSTR lpszFmt) { - ModuleHelp_IsErrorOccur = FALSE; + ModuleHelp_IsErrorOccur = false; if ((NULL == lpszMsgBuffer) || (NULL == ptszMsgBuffer)) { - ModuleHelp_IsErrorOccur = TRUE; + ModuleHelp_IsErrorOccur = true; ModuleHelp_dwErrorCode = ERROR_XENGINE_APISERVICE_MODULE_HELP_QRCODE_PARAMENT; - return FALSE; + return false; } #ifdef _MSC_BUILD //使用qrencode进行字符串编码 -#ifdef _UNICODE - USES_CONVERSION; - QRcode* pSt_QRCodec = QRcode_encodeString(W2A(lpszMsgBuffer), 0, QR_ECLEVEL_H, QR_MODE_8, 1); -#else QRcode* pSt_QRCodec = QRcode_encodeString(lpszMsgBuffer, 0, QR_ECLEVEL_H, QR_MODE_8, 1); -#endif if (NULL == pSt_QRCodec) { - ModuleHelp_IsErrorOccur = TRUE; + ModuleHelp_IsErrorOccur = true; ModuleHelp_dwErrorCode = ERROR_XENGINE_APISERVICE_MODULE_HELP_QRCODE_FAILED; - return FALSE; + return false; } cv::Mat m_SrcFrame; vector stl_VecImg; @@ -167,9 +152,9 @@ BOOL CModuleHelp_QRCode::ModuleHelp_QRCode_QREncodecMemory(LPCTSTR lpszMsgBuffer //是否成功 if (!cv::imencode(lpszFmt, m_SrcFrame, stl_VecImg)) { - ModuleHelp_IsErrorOccur = TRUE; + ModuleHelp_IsErrorOccur = true; ModuleHelp_dwErrorCode = ERROR_XENGINE_APISERVICE_MODULE_HELP_QRCODE_FAILED; - return FALSE; + return false; } *pInt_MsgLen = stl_VecImg.size(); for (int i = 0; i < (*pInt_MsgLen); i++) @@ -177,11 +162,11 @@ BOOL CModuleHelp_QRCode::ModuleHelp_QRCode_QREncodecMemory(LPCTSTR lpszMsgBuffer ptszMsgBuffer[i] = stl_VecImg[i]; } #else - ModuleHelp_IsErrorOccur = TRUE; + ModuleHelp_IsErrorOccur = true; ModuleHelp_dwErrorCode = ERROR_XENGINE_APISERVICE_MODULE_HELP_QRCODE_NOTSUPPORT; - return FALSE; + return false; #endif - return TRUE; + return true; } /******************************************************************** 函数名称:ModuleHelp_QRCode_QRDecodecFile @@ -221,58 +206,44 @@ BOOL CModuleHelp_QRCode::ModuleHelp_QRCode_QREncodecMemory(LPCTSTR lpszMsgBuffer 意思:是否成功 备注: *********************************************************************/ -BOOL CModuleHelp_QRCode::ModuleHelp_QRCode_QRDecodecFile(LPCTSTR lpszFileName, TCHAR* ptszMsgBuffer, LPCTSTR lpszDetectProto, LPCTSTR lpszDetectModel, LPCTSTR lpszSrProto, LPCTSTR lpszSrModel) +bool CModuleHelp_QRCode::ModuleHelp_QRCode_QRDecodecFile(LPCXSTR lpszFileName, XCHAR* ptszMsgBuffer, LPCXSTR lpszDetectProto, LPCXSTR lpszDetectModel, LPCXSTR lpszSrProto, LPCXSTR lpszSrModel) { - ModuleHelp_IsErrorOccur = FALSE; + ModuleHelp_IsErrorOccur = false; if ((NULL == lpszFileName) || (NULL == ptszMsgBuffer)) { - ModuleHelp_IsErrorOccur = TRUE; + ModuleHelp_IsErrorOccur = true; ModuleHelp_dwErrorCode = ERROR_XENGINE_APISERVICE_MODULE_HELP_QRCODE_PARAMENT; - return FALSE; + return false; } #ifdef _MSC_BUILD cv::Mat m_Frame; vector m_MatPoint; cv::Ptr m_QRDetector; - -#ifdef _UNICODE - USES_CONVERSION; - m_Frame = cv::imread(W2A(lpszFileName)); -#else m_Frame = cv::imread(lpszFileName); -#endif // _UNICODE //是否成功 if (m_Frame.empty()) { - ModuleHelp_IsErrorOccur = TRUE; + ModuleHelp_IsErrorOccur = true; ModuleHelp_dwErrorCode = ERROR_XENGINE_APISERVICE_MODULE_HELP_QRCODE_EMPTY; - return FALSE; + return false; } -#ifdef _UNICODE - m_QRDetector = cv::makePtr(W2A(lpszDetectProto), W2A(lpszDetectModel), W2A(lpszSrProto), W2A(lpszSrModel)); -#else m_QRDetector = cv::makePtr(lpszDetectProto, lpszDetectModel, lpszSrProto, lpszSrModel); -#endif vector stl_VectorQRList = m_QRDetector->detectAndDecode(m_Frame, m_MatPoint); if (stl_VectorQRList.empty()) { - ModuleHelp_IsErrorOccur = TRUE; + ModuleHelp_IsErrorOccur = true; ModuleHelp_dwErrorCode = ERROR_XENGINE_APISERVICE_MODULE_HELP_QRCODE_NOTQR; - return FALSE; + return false; } -#ifdef _UNICODE - wcscpy(ptszMsgBuffer, A2W(stl_VectorQRList[0].c_str())); -#else strcpy(ptszMsgBuffer, stl_VectorQRList[0].c_str()); -#endif #else - ModuleHelp_IsErrorOccur = TRUE; + ModuleHelp_IsErrorOccur = true; ModuleHelp_dwErrorCode = ERROR_XENGINE_APISERVICE_MODULE_HELP_QRCODE_NOTSUPPORT; - return FALSE; + return false; #endif - return TRUE; + return true; } /******************************************************************** 函数名称:ModuleHelp_QRCode_QRDecodecMemory @@ -317,15 +288,15 @@ BOOL CModuleHelp_QRCode::ModuleHelp_QRCode_QRDecodecFile(LPCTSTR lpszFileName, T 意思:是否成功 备注: *********************************************************************/ -BOOL CModuleHelp_QRCode::ModuleHelp_QRCode_QRDecodecMemory(LPCSTR lpszMsgBuffer, int nMsgLen, TCHAR* ptszMsgBuffer, LPCTSTR lpszDetectProto, LPCTSTR lpszDetectModel, LPCTSTR lpszSrProto, LPCTSTR lpszSrModel) +bool CModuleHelp_QRCode::ModuleHelp_QRCode_QRDecodecMemory(LPCXSTR lpszMsgBuffer, int nMsgLen, XCHAR* ptszMsgBuffer, LPCXSTR lpszDetectProto, LPCXSTR lpszDetectModel, LPCXSTR lpszSrProto, LPCXSTR lpszSrModel) { - ModuleHelp_IsErrorOccur = FALSE; + ModuleHelp_IsErrorOccur = false; if ((NULL == lpszMsgBuffer) || (NULL == ptszMsgBuffer)) { - ModuleHelp_IsErrorOccur = TRUE; + ModuleHelp_IsErrorOccur = true; ModuleHelp_dwErrorCode = ERROR_XENGINE_APISERVICE_MODULE_HELP_QRCODE_PARAMENT; - return FALSE; + return false; } #ifdef _MSC_BUILD cv::Mat m_Frame; @@ -337,33 +308,24 @@ BOOL CModuleHelp_QRCode::ModuleHelp_QRCode_QRDecodecMemory(LPCSTR lpszMsgBuffer, //是否成功 if (m_Frame.empty()) { - ModuleHelp_IsErrorOccur = TRUE; + ModuleHelp_IsErrorOccur = true; ModuleHelp_dwErrorCode = ERROR_XENGINE_APISERVICE_MODULE_HELP_QRCODE_EMPTY; - return FALSE; + return false; } -#ifdef _UNICODE - USES_CONVERSION; - m_QRDetector = cv::makePtr(W2A(lpszDetectProto), W2A(lpszDetectModel), W2A(lpszSrProto), W2A(lpszSrModel)); -#else m_QRDetector = cv::makePtr(lpszDetectProto, lpszDetectModel, lpszSrProto, lpszSrModel); -#endif vector stl_VectorQRList = m_QRDetector->detectAndDecode(m_Frame, m_MatPoint); if (stl_VectorQRList.empty()) { - ModuleHelp_IsErrorOccur = TRUE; + ModuleHelp_IsErrorOccur = true; ModuleHelp_dwErrorCode = ERROR_XENGINE_APISERVICE_MODULE_HELP_QRCODE_NOTQR; - return FALSE; + return false; } -#ifdef _UNICODE - wcscpy(ptszMsgBuffer, A2W(stl_VectorQRList[0].c_str())); -#else strcpy(ptszMsgBuffer, stl_VectorQRList[0].c_str()); -#endif #else - ModuleHelp_IsErrorOccur = TRUE; + ModuleHelp_IsErrorOccur = true; ModuleHelp_dwErrorCode = ERROR_XENGINE_APISERVICE_MODULE_HELP_QRCODE_NOTSUPPORT; - return FALSE; + return false; #endif - return TRUE; + return true; } \ No newline at end of file diff --git a/XEngine_Source/XEngine_ModuleHelp/ModuleHelp_QRCode/ModuleHelp_QRCode.h b/XEngine_Source/XEngine_ModuleHelp/ModuleHelp_QRCode/ModuleHelp_QRCode.h index 417d86d0e62042def07f783e46874d9e052cc96c..dc309437f3a6df04c88afa09efc5648457932cf9 100644 --- a/XEngine_Source/XEngine_ModuleHelp/ModuleHelp_QRCode/ModuleHelp_QRCode.h +++ b/XEngine_Source/XEngine_ModuleHelp/ModuleHelp_QRCode/ModuleHelp_QRCode.h @@ -17,10 +17,10 @@ public: CModuleHelp_QRCode(); ~CModuleHelp_QRCode(); public: - BOOL ModuleHelp_QRCode_QREncodecFile(LPCTSTR lpszFileName, LPCTSTR lpszMsgBuffer); - BOOL ModuleHelp_QRCode_QREncodecMemory(LPCTSTR lpszMsgBuffer, TCHAR* ptszMsgBuffer, int* pInt_MsgLen, LPCTSTR lpszFmt); - BOOL ModuleHelp_QRCode_QRDecodecFile(LPCTSTR lpszFileName, TCHAR* ptszMsgBuffer, LPCTSTR lpszDetectProto, LPCTSTR lpszDetectModel, LPCTSTR lpszSrProto, LPCTSTR lpszSrModel); - BOOL ModuleHelp_QRCode_QRDecodecMemory(LPCSTR lpszMsgBuffer, int nMsgLen, TCHAR* ptszMsgBuffer, LPCTSTR lpszDetectProto, LPCTSTR lpszDetectModel, LPCTSTR lpszSrProto, LPCTSTR lpszSrModel); + bool ModuleHelp_QRCode_QREncodecFile(LPCXSTR lpszFileName, LPCXSTR lpszMsgBuffer); + bool ModuleHelp_QRCode_QREncodecMemory(LPCXSTR lpszMsgBuffer, XCHAR* ptszMsgBuffer, int* pInt_MsgLen, LPCXSTR lpszFmt); + bool ModuleHelp_QRCode_QRDecodecFile(LPCXSTR lpszFileName, XCHAR* ptszMsgBuffer, LPCXSTR lpszDetectProto, LPCXSTR lpszDetectModel, LPCXSTR lpszSrProto, LPCXSTR lpszSrModel); + bool ModuleHelp_QRCode_QRDecodecMemory(LPCXSTR lpszMsgBuffer, int nMsgLen, XCHAR* ptszMsgBuffer, LPCXSTR lpszDetectProto, LPCXSTR lpszDetectModel, LPCXSTR lpszSrProto, LPCXSTR lpszSrModel); protected: private: }; \ No newline at end of file diff --git a/XEngine_Source/XEngine_ModuleHelp/ModuleHelp_SocketTest/ModuleHelp_SocketTest.cpp b/XEngine_Source/XEngine_ModuleHelp/ModuleHelp_SocketTest/ModuleHelp_SocketTest.cpp index 81da20e19a53f43809caec40435df8a9bcd0ddb7..b25e0ce66513e4b4d33ce62982ddb418cf1a8ae8 100644 --- a/XEngine_Source/XEngine_ModuleHelp/ModuleHelp_SocketTest/ModuleHelp_SocketTest.cpp +++ b/XEngine_Source/XEngine_ModuleHelp/ModuleHelp_SocketTest/ModuleHelp_SocketTest.cpp @@ -48,26 +48,26 @@ CModuleHelp_SocketTest::~CModuleHelp_SocketTest() 意思:成功返回连接的句柄,失败返回NULL 备注:链接测试函数,链接一次后就关闭 *********************************************************************/ -BOOL CModuleHelp_SocketTest::ModuleHelp_SocketTest_StartConnect(XNETHANDLE* pxhToken, MODULEHELP_SOCKETTEST_RECONNECT* pSt_ReConnect, CALLBACK_APISERVICE_MODULE_HELP_SOCKETTEST fpCall_ReConnect, LPVOID lParam /* = NULL */) +bool CModuleHelp_SocketTest::ModuleHelp_SocketTest_StartConnect(XNETHANDLE* pxhToken, MODULEHELP_SOCKETTEST_RECONNECT* pSt_ReConnect, CALLBACK_APISERVICE_MODULE_HELP_SOCKETTEST fpCall_ReConnect, XPVOID lParam /* = NULL */) { - ModuleHelp_IsErrorOccur = FALSE; + ModuleHelp_IsErrorOccur = false; if ((NULL == pSt_ReConnect) || (NULL == fpCall_ReConnect)) { - ModuleHelp_IsErrorOccur = TRUE; + ModuleHelp_IsErrorOccur = true; ModuleHelp_dwErrorCode = ERROR_XENGINE_APISERVICE_MODULE_HELP_SOCKETTEST_PARAMRT; - return FALSE; + return false; } MODULEHELP_SOCKETTEST_CONNINFO* pSt_ConnSocket = new MODULEHELP_SOCKETTEST_CONNINFO; if (NULL == pSt_ConnSocket) { - ModuleHelp_IsErrorOccur = TRUE; + ModuleHelp_IsErrorOccur = true; ModuleHelp_dwErrorCode = ERROR_XENGINE_APISERVICE_MODULE_HELP_SOCKETTEST_MALLOC; - return FALSE; + return false; } memset(pSt_ConnSocket, '\0', sizeof(MODULEHELP_SOCKETTEST_CONNINFO)); //结构体赋值 - pSt_ConnSocket->bIsRun = TRUE; + pSt_ConnSocket->bIsRun = true; pSt_ConnSocket->lParam = lParam; pSt_ConnSocket->lpCall_ReConnect = fpCall_ReConnect; BaseLib_OperatorHandle_Create(&pSt_ConnSocket->xhToken); @@ -76,15 +76,15 @@ BOOL CModuleHelp_SocketTest::ModuleHelp_SocketTest_StartConnect(XNETHANDLE* pxhT pSt_ConnSocket->pSTDThread = make_shared(ModuleHelp_SocketTest_ThreadConn, pSt_ConnSocket); if (NULL == pSt_ConnSocket->pSTDThread) { - ModuleHelp_IsErrorOccur = TRUE; + ModuleHelp_IsErrorOccur = true; ModuleHelp_dwErrorCode = ERROR_XENGINE_APISERVICE_MODULE_HELP_SOCKETTEST_THREAD; - return FALSE; + return false; } *pxhToken = pSt_ConnSocket->xhToken; st_LockConn.lock(); stl_MapConnTest.insert(make_pair(pSt_ConnSocket->xhToken, pSt_ConnSocket)); st_LockConn.unlock(); - return TRUE; + return true; } /******************************************************************** 函数名称:ModuleHelp_SocketTest_GetConnect @@ -104,22 +104,22 @@ BOOL CModuleHelp_SocketTest::ModuleHelp_SocketTest_StartConnect(XNETHANDLE* pxhT 意思:是否成功 备注: *********************************************************************/ -BOOL CModuleHelp_SocketTest::ModuleHelp_SocketTest_GetConnect(XNETHANDLE xhToken, BOOL* pbRun) +bool CModuleHelp_SocketTest::ModuleHelp_SocketTest_GetConnect(XNETHANDLE xhToken, bool* pbRun) { - ModuleHelp_IsErrorOccur = FALSE; + ModuleHelp_IsErrorOccur = false; st_LockConn.lock_shared(); unordered_map::iterator stl_MapIterator = stl_MapConnTest.find(xhToken); if (stl_MapIterator == stl_MapConnTest.end()) { - ModuleHelp_IsErrorOccur = TRUE; + ModuleHelp_IsErrorOccur = true; ModuleHelp_dwErrorCode = ERROR_XENGINE_APISERVICE_MODULE_HELP_SOCKETTEST_NOTFOUND; st_LockConn.unlock_shared(); - return FALSE; + return false; } *pbRun = stl_MapIterator->second->bIsRun; st_LockConn.unlock_shared(); - return TRUE; + return true; } /******************************************************************** 函数名称:ModuleHelp_SocketTest_StopConnect @@ -134,20 +134,20 @@ BOOL CModuleHelp_SocketTest::ModuleHelp_SocketTest_GetConnect(XNETHANDLE xhToken 意思:是否成功 备注: *********************************************************************/ -BOOL CModuleHelp_SocketTest::ModuleHelp_SocketTest_StopConnect(XNETHANDLE xhToken) +bool CModuleHelp_SocketTest::ModuleHelp_SocketTest_StopConnect(XNETHANDLE xhToken) { - ModuleHelp_IsErrorOccur = FALSE; + ModuleHelp_IsErrorOccur = false; st_LockConn.lock(); unordered_map::iterator stl_MapIterator = stl_MapConnTest.find(xhToken); if (stl_MapIterator != stl_MapConnTest.end()) { - stl_MapIterator->second->bIsRun = FALSE; + stl_MapIterator->second->bIsRun = false; stl_MapIterator->second->pSTDThread->join(); if (NULL != stl_MapIterator->second->lParam) { - delete (TCHAR*)stl_MapIterator->second->lParam; + delete (XCHAR*)stl_MapIterator->second->lParam; stl_MapIterator->second->lParam = NULL; } @@ -157,7 +157,7 @@ BOOL CModuleHelp_SocketTest::ModuleHelp_SocketTest_StopConnect(XNETHANDLE xhToke stl_MapConnTest.erase(stl_MapIterator); } st_LockConn.unlock(); - return TRUE; + return true; } /******************************************************************** 函数名称:ModuleHelp_SocketTest_StartDatas @@ -187,24 +187,24 @@ BOOL CModuleHelp_SocketTest::ModuleHelp_SocketTest_StopConnect(XNETHANDLE xhToke 意思:是否成功 备注: *********************************************************************/ -BOOL CModuleHelp_SocketTest::ModuleHelp_SocketTest_StartDatas(XNETHANDLE* pxhToken, MODULEHELP_SOCKETTEST_DATAS* pSt_SocketDatas, CALLBACK_APISERVICE_MODULE_HELP_SOCKETTEST fpCall_DataTest, BOOL bTCP /* = TRUE */, LPVOID lParam /* = NULL */) +bool CModuleHelp_SocketTest::ModuleHelp_SocketTest_StartDatas(XNETHANDLE* pxhToken, MODULEHELP_SOCKETTEST_DATAS* pSt_SocketDatas, CALLBACK_APISERVICE_MODULE_HELP_SOCKETTEST fpCall_DataTest, bool bTCP /* = true */, XPVOID lParam /* = NULL */) { - ModuleHelp_IsErrorOccur = FALSE; + ModuleHelp_IsErrorOccur = false; if ((NULL == pSt_SocketDatas) || (NULL == fpCall_DataTest)) { - ModuleHelp_IsErrorOccur = TRUE; + ModuleHelp_IsErrorOccur = true; ModuleHelp_dwErrorCode = ERROR_XENGINE_APISERVICE_MODULE_HELP_SOCKETTEST_PARAMRT; - return FALSE; + return false; } MODULEHELP_SOCKETTEST_DATAINFO *pSt_DataSocket = new MODULEHELP_SOCKETTEST_DATAINFO; if (NULL == pSt_DataSocket) { - ModuleHelp_IsErrorOccur = TRUE; + ModuleHelp_IsErrorOccur = true; ModuleHelp_dwErrorCode = ERROR_XENGINE_APISERVICE_MODULE_HELP_SOCKETTEST_MALLOC; - return FALSE; + return false; } - pSt_DataSocket->bIsRun = TRUE; + pSt_DataSocket->bIsRun = true; pSt_DataSocket->bIsTCP = bTCP; pSt_DataSocket->lParam = lParam; pSt_DataSocket->lpCall_TestDatas = fpCall_DataTest; @@ -215,33 +215,33 @@ BOOL CModuleHelp_SocketTest::ModuleHelp_SocketTest_StartDatas(XNETHANDLE* pxhTok { if (!XClient_TCPSelect_Create(&pSt_DataSocket->hSocket, pSt_SocketDatas->st_REConnect.tszAddr, pSt_SocketDatas->st_REConnect.nPort)) { - ModuleHelp_IsErrorOccur = TRUE; + ModuleHelp_IsErrorOccur = true; ModuleHelp_dwErrorCode = XClient_GetLastError(); - return FALSE; + return false; } } else { if (!XClient_UDPSelect_Create(&pSt_DataSocket->hSocket)) { - ModuleHelp_IsErrorOccur = TRUE; + ModuleHelp_IsErrorOccur = true; ModuleHelp_dwErrorCode = XClient_GetLastError(); - return FALSE; + return false; } } //创建线程 pSt_DataSocket->pSTDThread = make_shared(ModuleHelp_SocketTest_ThreadData, pSt_DataSocket); if (!pSt_DataSocket->pSTDThread->joinable()) { - ModuleHelp_IsErrorOccur = TRUE; + ModuleHelp_IsErrorOccur = true; ModuleHelp_dwErrorCode = ERROR_XENGINE_APISERVICE_MODULE_HELP_SOCKETTEST_THREAD; - return FALSE; + return false; } *pxhToken = pSt_DataSocket->xhToken; st_LockData.lock(); stl_MapDataTest.insert(make_pair(pSt_DataSocket->xhToken, pSt_DataSocket)); st_LockData.unlock(); - return TRUE; + return true; } /******************************************************************** 函数名称:ModuleHelp_SocketTest_GetDatas @@ -261,22 +261,22 @@ BOOL CModuleHelp_SocketTest::ModuleHelp_SocketTest_StartDatas(XNETHANDLE* pxhTok 意思:是否成功 备注: *********************************************************************/ -BOOL CModuleHelp_SocketTest::ModuleHelp_SocketTest_GetDatas(XNETHANDLE xhToken, BOOL* pbRun) +bool CModuleHelp_SocketTest::ModuleHelp_SocketTest_GetDatas(XNETHANDLE xhToken, bool* pbRun) { - ModuleHelp_IsErrorOccur = FALSE; + ModuleHelp_IsErrorOccur = false; st_LockData.lock_shared(); unordered_map::iterator stl_MapIterator = stl_MapDataTest.find(xhToken); if (stl_MapIterator == stl_MapDataTest.end()) { - ModuleHelp_IsErrorOccur = TRUE; + ModuleHelp_IsErrorOccur = true; ModuleHelp_dwErrorCode = ERROR_XENGINE_APISERVICE_MODULE_HELP_SOCKETTEST_NOTFOUND; st_LockData.unlock_shared(); - return FALSE; + return false; } *pbRun = stl_MapIterator->second->bIsRun; st_LockData.unlock_shared(); - return TRUE; + return true; } /************************************************************************ 函数名称:ModuleHelp_SocketTest_DatasStop @@ -291,22 +291,22 @@ BOOL CModuleHelp_SocketTest::ModuleHelp_SocketTest_GetDatas(XNETHANDLE xhToken, 意思:是否成功 备注: ************************************************************************/ -BOOL CModuleHelp_SocketTest::ModuleHelp_SocketTest_StopDatas(XNETHANDLE xhToken) +bool CModuleHelp_SocketTest::ModuleHelp_SocketTest_StopDatas(XNETHANDLE xhToken) { - ModuleHelp_IsErrorOccur = FALSE; + ModuleHelp_IsErrorOccur = false; st_LockData.unlock(); unordered_map::iterator stl_MapIterator = stl_MapDataTest.find(xhToken); if (stl_MapIterator != stl_MapDataTest.end()) { //关闭客户端 - stl_MapIterator->second->bIsRun = FALSE; + stl_MapIterator->second->bIsRun = false; stl_MapIterator->second->pSTDThread->join(); XClient_TCPSelect_Close(stl_MapIterator->second->hSocket); if (NULL != stl_MapIterator->second->lParam) { - delete (TCHAR*)stl_MapIterator->second->lParam; + delete (XCHAR*)stl_MapIterator->second->lParam; stl_MapIterator->second->lParam = NULL; } @@ -316,19 +316,19 @@ BOOL CModuleHelp_SocketTest::ModuleHelp_SocketTest_StopDatas(XNETHANDLE xhToken) stl_MapDataTest.erase(stl_MapIterator); } st_LockData.unlock(); - return TRUE; + return true; } ////////////////////////////////////////////////////////////////////////// // 线程函数 ////////////////////////////////////////////////////////////////////////// -XHTHREAD CModuleHelp_SocketTest::ModuleHelp_SocketTest_ThreadConn(LPVOID lParam) +XHTHREAD CModuleHelp_SocketTest::ModuleHelp_SocketTest_ThreadConn(XPVOID lParam) { MODULEHELP_SOCKETTEST_CONNINFO* pSt_ReConnect = (MODULEHELP_SOCKETTEST_CONNINFO*)lParam; __int64x nFailed = 0; __int64x nSucess = 0; __int64x nNumber = 0; - while (TRUE) + while (true) { if ((nNumber >= pSt_ReConnect->st_SocketConn.nConnectTest) && (-1 != pSt_ReConnect->st_SocketConn.nConnectTest)) { @@ -339,7 +339,7 @@ XHTHREAD CModuleHelp_SocketTest::ModuleHelp_SocketTest_ThreadConn(LPVOID lParam) break; } //设置TCP - SOCKET hSocket = INVALID_SOCKET; + XSOCKET hSocket = INVALID_SOCKET; if (XClient_TCPSelect_Create(&hSocket, pSt_ReConnect->st_SocketConn.tszAddr, pSt_ReConnect->st_SocketConn.nPort, 100)) { pSt_ReConnect->lpCall_ReConnect(pSt_ReConnect->xhToken, pSt_ReConnect->st_SocketConn.tszAddr, pSt_ReConnect->st_SocketConn.nPort, ++nNumber, nFailed, ++nSucess, 0, pSt_ReConnect->lParam); @@ -355,17 +355,17 @@ XHTHREAD CModuleHelp_SocketTest::ModuleHelp_SocketTest_ThreadConn(LPVOID lParam) std::this_thread::sleep_for(std::chrono::milliseconds(pSt_ReConnect->st_SocketConn.nCloseWaitContTime)); } pSt_ReConnect->lpCall_ReConnect(pSt_ReConnect->xhToken, pSt_ReConnect->st_SocketConn.tszAddr, pSt_ReConnect->st_SocketConn.nPort, nNumber, nFailed, nSucess, 2, pSt_ReConnect->lParam); - pSt_ReConnect->bIsRun = FALSE; + pSt_ReConnect->bIsRun = false; return 0; } -XHTHREAD CModuleHelp_SocketTest::ModuleHelp_SocketTest_ThreadData(LPVOID lParam) +XHTHREAD CModuleHelp_SocketTest::ModuleHelp_SocketTest_ThreadData(XPVOID lParam) { MODULEHELP_SOCKETTEST_DATAINFO* pSt_DataSocket = (MODULEHELP_SOCKETTEST_DATAINFO*)lParam; __int64x nFailed = 0; __int64x nSucess = 0; __int64x nNumber = 0; - while (TRUE) + while (true) { if ((nNumber >= pSt_DataSocket->st_SocketData.st_REConnect.nConnectTest) && (-1 != pSt_DataSocket->st_SocketData.st_REConnect.nConnectTest)) { @@ -376,7 +376,7 @@ XHTHREAD CModuleHelp_SocketTest::ModuleHelp_SocketTest_ThreadData(LPVOID lParam) break; } //发送数据 - BOOL bRet = FALSE; + bool bRet = false; if (pSt_DataSocket->bIsTCP) { bRet = XClient_TCPSelect_SendMsg(pSt_DataSocket->hSocket, pSt_DataSocket->st_SocketData.tszSDBuffer, pSt_DataSocket->st_SocketData.nSDLen); @@ -391,11 +391,11 @@ XHTHREAD CModuleHelp_SocketTest::ModuleHelp_SocketTest_ThreadData(LPVOID lParam) if (pSt_DataSocket->st_SocketData.nRVLen > 0) { //是否需要可读判断 - if (XClient_OPTSocket_IOSelect(pSt_DataSocket->hSocket, TRUE, pSt_DataSocket->st_SocketData.st_REConnect.nContWaitTime)) + if (XClient_OPTSocket_IOSelect(pSt_DataSocket->hSocket, true, pSt_DataSocket->st_SocketData.st_REConnect.nContWaitTime)) { //接受数据 int nMsgLen = pSt_DataSocket->st_SocketData.nRVLen; - TCHAR tszMsgBuffer[4096]; + XCHAR tszMsgBuffer[4096]; memset(tszMsgBuffer, '\0', sizeof(tszMsgBuffer)); if (pSt_DataSocket->bIsTCP) @@ -429,6 +429,6 @@ XHTHREAD CModuleHelp_SocketTest::ModuleHelp_SocketTest_ThreadData(LPVOID lParam) std::this_thread::sleep_for(std::chrono::milliseconds(pSt_DataSocket->st_SocketData.st_REConnect.nCloseWaitContTime)); } pSt_DataSocket->lpCall_TestDatas(pSt_DataSocket->xhToken, pSt_DataSocket->st_SocketData.st_REConnect.tszAddr, pSt_DataSocket->st_SocketData.st_REConnect.nPort, nNumber, nFailed, nSucess, 2, pSt_DataSocket->lParam); - pSt_DataSocket->bIsRun = FALSE; + pSt_DataSocket->bIsRun = false; return 0; } diff --git a/XEngine_Source/XEngine_ModuleHelp/ModuleHelp_SocketTest/ModuleHelp_SocketTest.h b/XEngine_Source/XEngine_ModuleHelp/ModuleHelp_SocketTest/ModuleHelp_SocketTest.h index 8daa663fc0262e3545f5943df9a3d6375b66c2f6..b20b7cbfe689437cef38c8ab75fd028c8c4d0c49 100644 --- a/XEngine_Source/XEngine_ModuleHelp/ModuleHelp_SocketTest/ModuleHelp_SocketTest.h +++ b/XEngine_Source/XEngine_ModuleHelp/ModuleHelp_SocketTest/ModuleHelp_SocketTest.h @@ -14,22 +14,22 @@ typedef struct { MODULEHELP_SOCKETTEST_DATAS st_SocketData; XNETHANDLE xhToken; //句柄 - SOCKET hSocket; - BOOL bIsTCP; - BOOL bIsRun; //是否运行 + XSOCKET hSocket; + bool bIsTCP; + bool bIsRun; //是否运行 shared_ptr pSTDThread; - LPVOID lParam; + XPVOID lParam; CALLBACK_APISERVICE_MODULE_HELP_SOCKETTEST lpCall_TestDatas; }MODULEHELP_SOCKETTEST_DATAINFO; typedef struct { MODULEHELP_SOCKETTEST_RECONNECT st_SocketConn; XNETHANDLE xhToken; //句柄 - BOOL bIsRun; //是否运行 + bool bIsRun; //是否运行 shared_ptr pSTDThread; //线程句柄 - LPVOID lParam; + XPVOID lParam; CALLBACK_APISERVICE_MODULE_HELP_SOCKETTEST lpCall_ReConnect; }MODULEHELP_SOCKETTEST_CONNINFO; @@ -41,16 +41,16 @@ public: ~CModuleHelp_SocketTest(); public: //链接测试 - BOOL ModuleHelp_SocketTest_StartConnect(XNETHANDLE* pxhToken, MODULEHELP_SOCKETTEST_RECONNECT* pSt_ReConnect, CALLBACK_APISERVICE_MODULE_HELP_SOCKETTEST fpCall_ReConnect, LPVOID lParam = NULL); - BOOL ModuleHelp_SocketTest_GetConnect(XNETHANDLE xhToken, BOOL* pbRun); - BOOL ModuleHelp_SocketTest_StopConnect(XNETHANDLE xhToken); + bool ModuleHelp_SocketTest_StartConnect(XNETHANDLE* pxhToken, MODULEHELP_SOCKETTEST_RECONNECT* pSt_ReConnect, CALLBACK_APISERVICE_MODULE_HELP_SOCKETTEST fpCall_ReConnect, XPVOID lParam = NULL); + bool ModuleHelp_SocketTest_GetConnect(XNETHANDLE xhToken, bool* pbRun); + bool ModuleHelp_SocketTest_StopConnect(XNETHANDLE xhToken); //数据包压力测试 - BOOL ModuleHelp_SocketTest_StartDatas(XNETHANDLE* pxhToken, MODULEHELP_SOCKETTEST_DATAS* pSt_SocketDatas, CALLBACK_APISERVICE_MODULE_HELP_SOCKETTEST fpCall_DataTest, BOOL bTCP = TRUE, LPVOID lParam = NULL); - BOOL ModuleHelp_SocketTest_GetDatas(XNETHANDLE xhToken, BOOL* pbRun); - BOOL ModuleHelp_SocketTest_StopDatas(XNETHANDLE xhToken); + bool ModuleHelp_SocketTest_StartDatas(XNETHANDLE* pxhToken, MODULEHELP_SOCKETTEST_DATAS* pSt_SocketDatas, CALLBACK_APISERVICE_MODULE_HELP_SOCKETTEST fpCall_DataTest, bool bTCP = true, XPVOID lParam = NULL); + bool ModuleHelp_SocketTest_GetDatas(XNETHANDLE xhToken, bool* pbRun); + bool ModuleHelp_SocketTest_StopDatas(XNETHANDLE xhToken); protected: - static XHTHREAD ModuleHelp_SocketTest_ThreadConn(LPVOID lParam); //反复连接测试线程 - static XHTHREAD ModuleHelp_SocketTest_ThreadData(LPVOID lParam); //大数据包长连接测试 + static XHTHREAD ModuleHelp_SocketTest_ThreadConn(XPVOID lParam); //反复连接测试线程 + static XHTHREAD ModuleHelp_SocketTest_ThreadData(XPVOID lParam); //大数据包长连接测试 private: shared_mutex st_LockConn; shared_mutex st_LockData; diff --git a/XEngine_Source/XEngine_ModuleHelp/XEngine_ModuleHelp.vcxproj b/XEngine_Source/XEngine_ModuleHelp/XEngine_ModuleHelp.vcxproj index 9d54c9149934c324c3573c6e251261652b019295..e0cafe48fc909a08caab0ee6a522c6a188a29def 100644 --- a/XEngine_Source/XEngine_ModuleHelp/XEngine_ModuleHelp.vcxproj +++ b/XEngine_Source/XEngine_ModuleHelp/XEngine_ModuleHelp.vcxproj @@ -30,27 +30,27 @@ DynamicLibrary true v143 - MultiByte + Unicode DynamicLibrary false v143 true - MultiByte + Unicode DynamicLibrary true v143 - MultiByte + Unicode DynamicLibrary false v143 true - MultiByte + Unicode diff --git a/XEngine_Source/XEngine_ModuleHelp/dllmain.cpp b/XEngine_Source/XEngine_ModuleHelp/dllmain.cpp index daed8c8f7ac50ca1466016a0529648d18125a7e7..594ff2123d474b129bb2014fb572f03c9741bf0b 100644 --- a/XEngine_Source/XEngine_ModuleHelp/dllmain.cpp +++ b/XEngine_Source/XEngine_ModuleHelp/dllmain.cpp @@ -1,9 +1,9 @@ // dllmain.cpp : 定义 DLL 应用程序的入口点。 #include "pch.h" -BOOL APIENTRY DllMain( HMODULE hModule, - DWORD ul_reason_for_call, - LPVOID lpReserved +bool APIENTRY DllMain( HMODULE hModule, + XLONG ul_reason_for_call, + XPVOID lpReserved ) { switch (ul_reason_for_call) @@ -14,6 +14,6 @@ BOOL APIENTRY DllMain( HMODULE hModule, case DLL_PROCESS_DETACH: break; } - return TRUE; + return true; } diff --git a/XEngine_Source/XEngine_ModuleHelp/pch.cpp b/XEngine_Source/XEngine_ModuleHelp/pch.cpp index eb5d864bd402253b06574a467b6e7b1386efaa29..a4d121efd0030980ac4d22f36c6ed26ae66920b8 100644 --- a/XEngine_Source/XEngine_ModuleHelp/pch.cpp +++ b/XEngine_Source/XEngine_ModuleHelp/pch.cpp @@ -16,8 +16,8 @@ // Purpose: 导出函数实现 // History: *********************************************************************/ -BOOL ModuleHelp_IsErrorOccur = FALSE; -DWORD ModuleHelp_dwErrorCode = 0; +bool ModuleHelp_IsErrorOccur = false; +XLONG ModuleHelp_dwErrorCode = 0; ////////////////////////////////////////////////////////////////////////// CModuleHelp_IDCard m_IDCard; CModuleHelp_Language m_Language; @@ -28,7 +28,7 @@ CModuleHelp_SocketTest m_SocketTest; ////////////////////////////////////////////////////////////////////////// /// 导出的函数 ////////////////////////////////////////////////////////////////////////// -extern "C" DWORD ModuleHelp_GetLastError(int* pInt_SysError) +extern "C" XLONG ModuleHelp_GetLastError(int* pInt_SysError) { if (NULL != pInt_SysError) { @@ -39,142 +39,142 @@ extern "C" DWORD ModuleHelp_GetLastError(int* pInt_SysError) /************************************************************************/ /* 导出的身份证帮助函数 */ /************************************************************************/ -extern "C" BOOL ModuleHelp_IDCard_CheckBirth(XENGINE_IDCARDINFO * pSt_IDInfo) +extern "C" bool ModuleHelp_IDCard_CheckBirth(XENGINE_IDCARDINFO * pSt_IDInfo) { return m_IDCard.ModuleHelp_IDCard_CheckBirth(pSt_IDInfo); } -extern "C" BOOL ModuleHelp_IDCard_CheckSum(XENGINE_IDCARDINFO * pSt_IDInfo) +extern "C" bool ModuleHelp_IDCard_CheckSum(XENGINE_IDCARDINFO * pSt_IDInfo) { return m_IDCard.ModuleHelp_IDCard_CheckSum(pSt_IDInfo); } /************************************************************************/ /* 导出的语言转换帮助函数 */ /************************************************************************/ -extern "C" BOOL ModuleHelp_Language_ConvertZh(LPCTSTR lpszJsonFile, LPCTSTR lpszSourceStr, TCHAR * ptszDestStr) +extern "C" bool ModuleHelp_Language_ConvertZh(LPCXSTR lpszJsonFile, LPCXSTR lpszSourceStr, XCHAR * ptszDestStr) { return m_Language.ModuleHelp_Language_ConvertZh(lpszJsonFile, lpszSourceStr, ptszDestStr); } -extern "C" BOOL ModuleHelp_Translation_Convert(ENUM_XENGINE_APISERVICE_TRANSLATION_TYPE enTranslationType, TCHAR * ptszTranslationType) +extern "C" bool ModuleHelp_Translation_Convert(ENUM_XENGINE_APISERVICE_TRANSLATION_TYPE enTranslationType, XCHAR * ptszTranslationType) { return m_Language.ModuleHelp_Translation_Convert(enTranslationType, ptszTranslationType); } /************************************************************************/ /* 导出的P2P客户端帮助函数 */ /************************************************************************/ -extern "C" BOOL ModuleHelp_P2PClient_Init(int nTimeout, CALLBACK_APISERVICE_MODULE_HELP_P2PCLIENT fpCall_P2PClient, LPVOID lParam) +extern "C" bool ModuleHelp_P2PClient_Init(int nTimeout, CALLBACK_APISERVICE_MODULE_HELP_P2PCLIENT fpCall_P2PClient, XPVOID lParam) { return m_P2PClient.ModuleHelp_P2PClient_Init(nTimeout, fpCall_P2PClient, lParam); } -extern "C" BOOL ModuleHelp_P2PClient_Destory() +extern "C" bool ModuleHelp_P2PClient_Destory() { return m_P2PClient.ModuleHelp_P2PClient_Destory(); } -extern "C" BOOL ModuleHelp_P2PClient_Add(XENGINE_P2XP_PEERINFO * pSt_PeerInfo) +extern "C" bool ModuleHelp_P2PClient_Add(XENGINE_P2XP_PEERINFO * pSt_PeerInfo) { return m_P2PClient.ModuleHelp_P2PClient_Add(pSt_PeerInfo); } -extern "C" BOOL ModuleHelp_P2PClient_Get(XENGINE_P2XPPEER_PROTOCOL * pSt_P2PProtocol, XENGINE_P2XP_PEERINFO * pSt_PeerInfo /* = NULL */) +extern "C" bool ModuleHelp_P2PClient_Get(XENGINE_P2XPPEER_PROTOCOL * pSt_P2PProtocol, XENGINE_P2XP_PEERINFO * pSt_PeerInfo /* = NULL */) { return m_P2PClient.ModuleHelp_P2PClient_Get(pSt_P2PProtocol, pSt_PeerInfo); } -extern "C" BOOL ModuleHelp_P2PClient_GetLan(XENGINE_P2XPPEER_PROTOCOL * pSt_P2PProtocol, XENGINE_P2XPPEER_PROTOCOL * **pppSt_P2XPClient, int* pInt_ListCount) +extern "C" bool ModuleHelp_P2PClient_GetLan(XENGINE_P2XPPEER_PROTOCOL * pSt_P2PProtocol, XENGINE_P2XPPEER_PROTOCOL * **pppSt_P2XPClient, int* pInt_ListCount) { return m_P2PClient.ModuleHelp_P2PClient_GetLan(pSt_P2PProtocol, pppSt_P2XPClient, pInt_ListCount); } -extern "C" BOOL ModuleHelp_P2PClient_GetLList(LPCTSTR lpszPubAddr, TCHAR * **pppszP2XPClient, int* pInt_ListCount) +extern "C" bool ModuleHelp_P2PClient_GetLList(LPCXSTR lpszPubAddr, XCHAR * **pppszP2XPClient, int* pInt_ListCount) { return m_P2PClient.ModuleHelp_P2PClient_GetLList(lpszPubAddr, pppszP2XPClient, pInt_ListCount); } -extern "C" BOOL ModuleHelp_P2PClient_GetWList(TCHAR * **pppszP2XPClient, int* pInt_ListCount) +extern "C" bool ModuleHelp_P2PClient_GetWList(XCHAR * **pppszP2XPClient, int* pInt_ListCount) { return m_P2PClient.ModuleHelp_P2PClient_GetWList(pppszP2XPClient, pInt_ListCount); } -extern "C" BOOL ModuleHelp_P2PClient_Delete(XENGINE_P2XPPEER_PROTOCOL * pSt_P2PProtocol) +extern "C" bool ModuleHelp_P2PClient_Delete(XENGINE_P2XPPEER_PROTOCOL * pSt_P2PProtocol) { return m_P2PClient.ModuleHelp_P2PClient_Delete(pSt_P2PProtocol); } -extern "C" BOOL ModuleHelp_P2PClient_DelAll() +extern "C" bool ModuleHelp_P2PClient_DelAll() { return m_P2PClient.ModuleHelp_P2PClient_DelAll(); } -extern "C" BOOL ModuleHelp_P2PClient_Heart(XENGINE_P2XPPEER_PROTOCOL * pSt_P2PProtocol) +extern "C" bool ModuleHelp_P2PClient_Heart(XENGINE_P2XPPEER_PROTOCOL * pSt_P2PProtocol) { return m_P2PClient.ModuleHelp_P2PClient_Heart(pSt_P2PProtocol); } /************************************************************************/ /* 分布式锁导出函数 */ /************************************************************************/ -extern "C" BOOL ModuleHelp_Locker_Create(XNETHANDLE * pxhToken) +extern "C" bool ModuleHelp_Locker_Create(XNETHANDLE * pxhToken) { return m_Locker.ModuleHelp_Locker_Create(pxhToken); } -extern "C" BOOL ModuleHelp_Locker_OPen(XNETHANDLE xhToken) +extern "C" bool ModuleHelp_Locker_OPen(XNETHANDLE xhToken) { return m_Locker.ModuleHelp_Locker_OPen(xhToken); } -extern "C" BOOL ModuleHelp_Locker_ReadLock(XNETHANDLE xhToken) +extern "C" bool ModuleHelp_Locker_ReadLock(XNETHANDLE xhToken) { return m_Locker.ModuleHelp_Locker_ReadLock(xhToken); } -extern "C" BOOL ModuleHelp_Locker_ReadUNLock(XNETHANDLE xhToken) +extern "C" bool ModuleHelp_Locker_ReadUNLock(XNETHANDLE xhToken) { return m_Locker.ModuleHelp_Locker_ReadUNLock(xhToken); } -extern "C" BOOL ModuleHelp_Locker_WriteLock(XNETHANDLE xhToken) +extern "C" bool ModuleHelp_Locker_WriteLock(XNETHANDLE xhToken) { return m_Locker.ModuleHelp_Locker_WriteLock(xhToken); } -extern "C" BOOL ModuleHelp_Locker_WriteUNLock(XNETHANDLE xhToken) +extern "C" bool ModuleHelp_Locker_WriteUNLock(XNETHANDLE xhToken) { return m_Locker.ModuleHelp_Locker_WriteUNLock(xhToken); } -extern "C" BOOL ModuleHelp_Locker_Close(XNETHANDLE xhToken) +extern "C" bool ModuleHelp_Locker_Close(XNETHANDLE xhToken) { return m_Locker.ModuleHelp_Locker_Close(xhToken); } /************************************************************************/ /* 二维码导出函数 */ /************************************************************************/ -extern "C" BOOL ModuleHelp_QRCode_QREncodecFile(LPCTSTR lpszFileName, LPCTSTR lpszMsgBuffer) +extern "C" bool ModuleHelp_QRCode_QREncodecFile(LPCXSTR lpszFileName, LPCXSTR lpszMsgBuffer) { return m_QRCode.ModuleHelp_QRCode_QREncodecFile(lpszFileName, lpszMsgBuffer); } -extern "C" BOOL ModuleHelp_QRCode_QREncodecMemory(LPCTSTR lpszMsgBuffer, TCHAR * ptszMsgBuffer, int* pInt_MsgLen, LPCTSTR lpszFmt) +extern "C" bool ModuleHelp_QRCode_QREncodecMemory(LPCXSTR lpszMsgBuffer, XCHAR * ptszMsgBuffer, int* pInt_MsgLen, LPCXSTR lpszFmt) { return m_QRCode.ModuleHelp_QRCode_QREncodecMemory(lpszMsgBuffer, ptszMsgBuffer, pInt_MsgLen, lpszFmt); } -extern "C" BOOL ModuleHelp_QRCode_QRDecodecFile(LPCTSTR lpszFileName, TCHAR * ptszMsgBuffer, LPCTSTR lpszDetectProto, LPCTSTR lpszDetectModel, LPCTSTR lpszSrProto, LPCTSTR lpszSrModel) +extern "C" bool ModuleHelp_QRCode_QRDecodecFile(LPCXSTR lpszFileName, XCHAR * ptszMsgBuffer, LPCXSTR lpszDetectProto, LPCXSTR lpszDetectModel, LPCXSTR lpszSrProto, LPCXSTR lpszSrModel) { return m_QRCode.ModuleHelp_QRCode_QRDecodecFile(lpszFileName, ptszMsgBuffer, lpszDetectProto, lpszDetectModel, lpszSrProto, lpszSrModel); } -extern "C" BOOL ModuleHelp_QRCode_QRDecodecMemory(LPCSTR lpszMsgBuffer, int nMsgLen, TCHAR * ptszMsgBuffer, LPCTSTR lpszDetectProto, LPCTSTR lpszDetectModel, LPCTSTR lpszSrProto, LPCTSTR lpszSrModel) +extern "C" bool ModuleHelp_QRCode_QRDecodecMemory(LPCXSTR lpszMsgBuffer, int nMsgLen, XCHAR * ptszMsgBuffer, LPCXSTR lpszDetectProto, LPCXSTR lpszDetectModel, LPCXSTR lpszSrProto, LPCXSTR lpszSrModel) { return m_QRCode.ModuleHelp_QRCode_QRDecodecMemory(lpszMsgBuffer, nMsgLen, ptszMsgBuffer, lpszDetectProto, lpszDetectModel, lpszSrProto, lpszSrModel); } /************************************************************************/ /* 网络测试导出函数 */ /************************************************************************/ -extern "C" BOOL ModuleHelp_SocketTest_StartConnect(XNETHANDLE * pxhToken, MODULEHELP_SOCKETTEST_RECONNECT * pSt_ReConnect, CALLBACK_APISERVICE_MODULE_HELP_SOCKETTEST fpCall_ReConnect, LPVOID lParam) +extern "C" bool ModuleHelp_SocketTest_StartConnect(XNETHANDLE * pxhToken, MODULEHELP_SOCKETTEST_RECONNECT * pSt_ReConnect, CALLBACK_APISERVICE_MODULE_HELP_SOCKETTEST fpCall_ReConnect, XPVOID lParam) { return m_SocketTest.ModuleHelp_SocketTest_StartConnect(pxhToken, pSt_ReConnect, fpCall_ReConnect, lParam); } -extern "C" BOOL ModuleHelp_SocketTest_GetConnect(XNETHANDLE xhToken, BOOL * pbRun) +extern "C" bool ModuleHelp_SocketTest_GetConnect(XNETHANDLE xhToken, bool * pbRun) { return m_SocketTest.ModuleHelp_SocketTest_GetConnect(xhToken, pbRun); } -extern "C" BOOL ModuleHelp_SocketTest_StopConnect(XNETHANDLE xhToken) +extern "C" bool ModuleHelp_SocketTest_StopConnect(XNETHANDLE xhToken) { return m_SocketTest.ModuleHelp_SocketTest_StopConnect(xhToken); } -extern "C" BOOL ModuleHelp_SocketTest_StartDatas(XNETHANDLE * pxhToken, MODULEHELP_SOCKETTEST_DATAS * pSt_SocketDatas, CALLBACK_APISERVICE_MODULE_HELP_SOCKETTEST fpCall_DataTest, BOOL bTCP, LPVOID lParam) +extern "C" bool ModuleHelp_SocketTest_StartDatas(XNETHANDLE * pxhToken, MODULEHELP_SOCKETTEST_DATAS * pSt_SocketDatas, CALLBACK_APISERVICE_MODULE_HELP_SOCKETTEST fpCall_DataTest, bool bTCP, XPVOID lParam) { return m_SocketTest.ModuleHelp_SocketTest_StartDatas(pxhToken, pSt_SocketDatas, fpCall_DataTest, bTCP, lParam); } -extern "C" BOOL ModuleHelp_SocketTest_GetDatas(XNETHANDLE xhToken, BOOL * pbRun) +extern "C" bool ModuleHelp_SocketTest_GetDatas(XNETHANDLE xhToken, bool * pbRun) { return m_SocketTest.ModuleHelp_SocketTest_GetDatas(xhToken, pbRun); } -extern "C" BOOL ModuleHelp_SocketTest_StopDatas(XNETHANDLE xhToken) +extern "C" bool ModuleHelp_SocketTest_StopDatas(XNETHANDLE xhToken) { return m_SocketTest.ModuleHelp_SocketTest_StopDatas(xhToken); } \ No newline at end of file diff --git a/XEngine_Source/XEngine_ModuleHelp/pch.h b/XEngine_Source/XEngine_ModuleHelp/pch.h index 8b7a4c84fc9fec803d58783ababcea46a2da0dcf..d03db04417890a743a086ef1d2d50cca3c50e8fb 100644 --- a/XEngine_Source/XEngine_ModuleHelp/pch.h +++ b/XEngine_Source/XEngine_ModuleHelp/pch.h @@ -20,6 +20,7 @@ #include #include #include +#include #include #include #include @@ -51,8 +52,8 @@ using namespace std; // Purpose: 公用头文件 // History: *********************************************************************/ -extern BOOL ModuleHelp_IsErrorOccur; -extern DWORD ModuleHelp_dwErrorCode; +extern bool ModuleHelp_IsErrorOccur; +extern XLONG ModuleHelp_dwErrorCode; #ifdef _MSC_BUILD #pragma comment(lib,"XEngine_BaseLib/XEngine_BaseLib") diff --git a/XEngine_Source/XEngine_ModulePlugin/Makefile b/XEngine_Source/XEngine_ModulePlugin/Makefile index c8b0890fe7f8175a9fbd498892bdec46ba19b008..193f9a3e6b4aa9c639469fd931dbb1cb341bbd62 100644 --- a/XEngine_Source/XEngine_ModulePlugin/Makefile +++ b/XEngine_Source/XEngine_ModulePlugin/Makefile @@ -1,63 +1,77 @@ CC = g++ -Wall -std=c++17 -fPIC -SHAREFLAG = -shared -SHAREDLL = so +PLATFORM = linux +PLATVER = +PLATDIR = +FILEEXT = +LIBFLAG = RELEASE = 0 UNICODE = 0 -FILECENTOS=/etc/redhat-release -INCLUDE = -I ./ -LOADBIN = -L /usr/local/lib/XEngine_Release/XEngine_BaseLib -LIB = -LIBEX = -ldl -lpthread -LOADSO = -Wl,-rpath=./,--disable-new-dtags -LIBINCLUDE = ModulePlugin_LibCore.o ModulePlugin_LuaCore.o ModulePlugin_Loader.o pch.o - -ifeq ($(shell uname),Darwin) - SHAREDLL = dylib - SHAREFLAG = -dynamiclib - LIB = -lXEngine_BaseLib -llua - LOADSO = -else - SHAREDLL = so - SHAREFLAG = -shared - LIB = -lXEngine_BaseLib -llua5.3 -endif +LOADHDR = -I ./ +LOADSO = -L /usr/local/lib/XEngine_Release/XEngine_BaseLib +LIB = -lXEngine_BaseLib +LIBEX = +OBJECTS = ModulePlugin_LibCore.o ModulePlugin_LuaCore.o ModulePlugin_Loader.o pch.o ifeq ($(RELEASE),1) -FLAGS = -c -O2 +FLAGS = -c DEBUG = else -FLAGS = -c -DEBUG = -g +FLAGS = -c -lc_p +DEBUG = -g -pg endif -ifeq ($(FILECENTOS), $(wildcard $(FILECENTOS))) - UNICODE = -D _CENTOS +ifeq ($(UNICODE),1) +UNICODE = -D _UNICODE else - UNICODE = -D _UBUNTU +UNICODE = +endif + +ifeq ($(PLATFORM),linux) + ifeq (/etc/redhat-release,$(wildcard /etc/redhat-release)) + PLATVER = -D __CENTOS__ + PLATDIR = XEngine_Linux/Centos + else + PLATVER = -D __UBUNTU__ + PLATDIR = XEngine_Linux/Ubuntu + endif + FILEEXT = so + LIBFLAG = -shared + LIB += -llua5.3 + LIBEX = -lpthread -lrt -ldl + LOADBIN = -Wl,-rpath=./,--disable-new-dtags +else ifeq ($(PLATFORM),mac) + CC += -Wno-deprecated-declarations + PLATVER = -D __MACOS__ + PLATDIR = XEngine_Mac + FILEEXT = dylib + LIBFLAG = -dynamiclib + LIB += -llua + LIBEX = -lpthread -ldl + LOADBIN = -Wl,-rpath,@loader_path/./ endif -all:$(LIBINCLUDE) - $(CC) $(DEBUG) $(LIBINCLUDE) -o libXEngine_ModulePlugin.$(SHAREDLL) $(SHAREFLAG) -fPIC $(LOADBIN) $(LIB) $(LIBEX) $(LOADSO) +all:$(OBJECTS) + $(CC) $(DEBUG) $(OBJECTS) -o libXEngine_ModulePlugin.$(FILEEXT) $(LIBFLAG) $(LIB) $(LIBEX) $(LOADSO) $(LOADBIN) ModulePlugin_LibCore.o:./ModulePlugin_LibCore/ModulePlugin_LibCore.cpp - $(CC) $(DEBUG) $(FLAGS) $(UNICODE) $(INCLUDE) ./ModulePlugin_LibCore/ModulePlugin_LibCore.cpp + $(CC) $(DEBUG) $(FLAGS) $(UNICODE) $(PLATVER) $(LOADHDR) ./ModulePlugin_LibCore/ModulePlugin_LibCore.cpp ModulePlugin_LuaCore.o:./ModulePlugin_LuaCore/ModulePlugin_LuaCore.cpp - $(CC) $(DEBUG) $(FLAGS) $(UNICODE) $(INCLUDE) ./ModulePlugin_LuaCore/ModulePlugin_LuaCore.cpp + $(CC) $(DEBUG) $(FLAGS) $(UNICODE) $(PLATVER) $(LOADHDR) ./ModulePlugin_LuaCore/ModulePlugin_LuaCore.cpp ModulePlugin_Loader.o:./ModulePlugin_Loader/ModulePlugin_Loader.cpp - $(CC) $(DEBUG) $(FLAGS) $(UNICODE) $(INCLUDE) ./ModulePlugin_Loader/ModulePlugin_Loader.cpp + $(CC) $(DEBUG) $(FLAGS) $(UNICODE) $(PLATVER) $(LOADHDR) ./ModulePlugin_Loader/ModulePlugin_Loader.cpp pch.o:./pch.cpp - $(CC) $(DEBUG) $(FLAGS) $(UNICODE) $(INCLUDE) ./pch.cpp + $(CC) $(DEBUG) $(FLAGS) $(UNICODE) $(PLATVER) $(LOADHDR) ./pch.cpp InstallAll:InstallSo -InstallSo:./libXEngine_ModulePlugin.$(SHAREDLL) - cp ./libXEngine_ModulePlugin.$(SHAREDLL) ../../XEngine_Release/libXEngine_ModulePlugin.$(SHAREDLL) +InstallSo:./libXEngine_ModulePlugin.$(FILEEXT) + cp ./libXEngine_ModulePlugin.$(FILEEXT) ../../XEngine_Release/libXEngine_ModulePlugin.$(FILEEXT) CleanAll:CleanObj CleanMk CleanObj: rm *.o CleanMk: - rm *.$(SHAREDLL) \ No newline at end of file + rm *.$(FILEEXT) \ No newline at end of file diff --git a/XEngine_Source/XEngine_ModulePlugin/ModulePlugin_Define.h b/XEngine_Source/XEngine_ModulePlugin/ModulePlugin_Define.h index 2e9f9cfe234bdc250bbcd5f0faf55d79fdb8eba7..8fb710170fb39452dd69beeef9d9012616818536 100644 --- a/XEngine_Source/XEngine_ModulePlugin/ModulePlugin_Define.h +++ b/XEngine_Source/XEngine_ModulePlugin/ModulePlugin_Define.h @@ -13,7 +13,7 @@ ////////////////////////////////////////////////////////////////////////// // 导出函数定义 ////////////////////////////////////////////////////////////////////////// -extern "C" DWORD ModulePlugin_GetLastError(int* pInt_SysError = NULL); +extern "C" XLONG ModulePlugin_GetLastError(int* pInt_SysError = NULL); /********************************************************************************* * LIB库插件框架导出函数定义 * *********************************************************************************/ @@ -25,7 +25,7 @@ extern "C" DWORD ModulePlugin_GetLastError(int* pInt_SysError = NULL); 意思:是否成功初始化 备注: *********************************************************************/ -extern "C" BOOL ModulePlugin_LibCore_Init(); +extern "C" bool ModulePlugin_LibCore_Init(); /******************************************************************** 函数名称:ModulePlugin_LibCore_Push 函数功能:添加一个标准的插件到插件框架中 @@ -49,7 +49,7 @@ extern "C" BOOL ModulePlugin_LibCore_Init(); 意思:是否成功添加 备注: *********************************************************************/ -extern "C" BOOL ModulePlugin_LibCore_Push(XNETHANDLE * pxhNet, LPCSTR lpszPluginFile, LPVOID lParam = NULL); +extern "C" bool ModulePlugin_LibCore_Push(XNETHANDLE * pxhNet, LPCXSTR lpszPluginFile, XPVOID lParam = NULL); /******************************************************************** 函数名称:ModulePlugin_LibCore_Exec 函数功能:执行一次 @@ -98,7 +98,7 @@ extern "C" BOOL ModulePlugin_LibCore_Push(XNETHANDLE * pxhNet, LPCSTR lpszPlugin 意思:是否成功 备注: *********************************************************************/ -extern "C" BOOL ModulePlugin_LibCore_Exec(XNETHANDLE xhModule, TCHAR * **pppHDRList, int nListCount, int* pInt_HTTPCode, TCHAR * ptszMsgBuffer, int* pInt_MsgLen, LPCTSTR lpszMsgBufer = NULL, int nMsgLen = 0); +extern "C" bool ModulePlugin_LibCore_Exec(XNETHANDLE xhModule, XCHAR * **pppHDRList, int nListCount, int* pInt_HTTPCode, XCHAR * ptszMsgBuffer, int* pInt_MsgLen, LPCXSTR lpszMsgBufer = NULL, int nMsgLen = 0); /******************************************************************** 函数名称:ModulePlugin_LibCore_Destroy 函数功能:销毁插件核心并且清理资源 @@ -107,7 +107,7 @@ extern "C" BOOL ModulePlugin_LibCore_Exec(XNETHANDLE xhModule, TCHAR * **pppHDRL 意思:是否成功销毁 备注: *********************************************************************/ -extern "C" BOOL ModulePlugin_LibCore_Destroy(); +extern "C" bool ModulePlugin_LibCore_Destroy(); /********************************************************************************* * LUA插件框架导出函数定义 * *********************************************************************************/ @@ -119,7 +119,7 @@ extern "C" BOOL ModulePlugin_LibCore_Destroy(); 意思:是否成功初始化 备注: *********************************************************************/ -extern "C" BOOL ModulePlugin_LuaCore_Init(); +extern "C" bool ModulePlugin_LuaCore_Init(); /******************************************************************** 函数名称:ModulePlugin_LuaCore_Push 函数功能:添加一个标准的插件到插件框架中 @@ -143,7 +143,7 @@ extern "C" BOOL ModulePlugin_LuaCore_Init(); 意思:是否成功添加 备注: *********************************************************************/ -extern "C" BOOL ModulePlugin_LuaCore_Push(XNETHANDLE* pxhModule, LPCTSTR lpszPluginFile, LPVOID lParam = NULL); +extern "C" bool ModulePlugin_LuaCore_Push(XNETHANDLE* pxhModule, LPCXSTR lpszPluginFile, XPVOID lParam = NULL); /******************************************************************** 函数名称:ModulePlugin_LuaCore_Exec 函数功能:执行一次 @@ -192,7 +192,7 @@ extern "C" BOOL ModulePlugin_LuaCore_Push(XNETHANDLE* pxhModule, LPCTSTR lpszPlu 意思:是否成功 备注: *********************************************************************/ -extern "C" BOOL ModulePlugin_LuaCore_Exec(XNETHANDLE xhModule, TCHAR*** pppHDRList, int nListCount, int* pInt_HTTPCode, TCHAR* ptszMsgBuffer, int* pInt_MsgLen, LPCTSTR lpszMsgBufer = NULL, int nMsgLen = 0); +extern "C" bool ModulePlugin_LuaCore_Exec(XNETHANDLE xhModule, XCHAR*** pppHDRList, int nListCount, int* pInt_HTTPCode, XCHAR* ptszMsgBuffer, int* pInt_MsgLen, LPCXSTR lpszMsgBufer = NULL, int nMsgLen = 0); /******************************************************************** 函数名称:ModulePlugin_LuaCore_Destroy 函数功能:销毁插件核心并且清理资源 @@ -201,7 +201,7 @@ extern "C" BOOL ModulePlugin_LuaCore_Exec(XNETHANDLE xhModule, TCHAR*** pppHDRLi 意思:是否成功销毁 备注: *********************************************************************/ -extern "C" BOOL ModulePlugin_LuaCore_Destroy(); +extern "C" bool ModulePlugin_LuaCore_Destroy(); /********************************************************************************* * 加载器导出函数定义 * *********************************************************************************/ @@ -228,7 +228,7 @@ extern "C" BOOL ModulePlugin_LuaCore_Destroy(); 意思:是否成功 备注: *********************************************************************/ -extern "C" BOOL ModulePlugin_Loader_Insert(LPCTSTR lpszModuleMethod, LPCTSTR lpszModuleName, int nType = 0); +extern "C" bool ModulePlugin_Loader_Insert(LPCXSTR lpszModuleMethod, LPCXSTR lpszModuleName, int nType = 0); /******************************************************************** 函数名称:ModulePlugin_Loader_Find 函数功能:查找方法是否注册 @@ -247,7 +247,7 @@ extern "C" BOOL ModulePlugin_Loader_Insert(LPCTSTR lpszModuleMethod, LPCTSTR lps 意思:是否成功 备注: *********************************************************************/ -extern "C" BOOL ModulePlugin_Loader_Find(LPCTSTR lpszMethodName, int* pInt_Type); +extern "C" bool ModulePlugin_Loader_Find(LPCXSTR lpszMethodName, int* pInt_Type); /******************************************************************** 函数名称:ModulePlugin_Loader_Exec 函数功能:执行一次插件 @@ -286,7 +286,7 @@ extern "C" BOOL ModulePlugin_Loader_Find(LPCTSTR lpszMethodName, int* pInt_Type) 意思:是否成功 备注: *********************************************************************/ -extern "C" BOOL ModulePlugin_Loader_Exec(LPCTSTR lpszMethodName, TCHAR * **pppHDRList, int nListCount, int* pInt_HTTPCode, TCHAR * ptszMsgBuffer, int* pInt_MsgLen); +extern "C" bool ModulePlugin_Loader_Exec(LPCXSTR lpszMethodName, XCHAR * **pppHDRList, int nListCount, int* pInt_HTTPCode, XCHAR * ptszMsgBuffer, int* pInt_MsgLen); /******************************************************************** 函数名称:ModulePlugin_Loader_Destory 函数功能:销毁加载器 @@ -295,4 +295,4 @@ extern "C" BOOL ModulePlugin_Loader_Exec(LPCTSTR lpszMethodName, TCHAR * **pppHD 意思:是否成功 备注: *********************************************************************/ -extern "C" BOOL ModulePlugin_Loader_Destory(); \ No newline at end of file +extern "C" bool ModulePlugin_Loader_Destory(); \ No newline at end of file diff --git a/XEngine_Source/XEngine_ModulePlugin/ModulePlugin_LibCore/ModulePlugin_LibCore.cpp b/XEngine_Source/XEngine_ModulePlugin/ModulePlugin_LibCore/ModulePlugin_LibCore.cpp index 912458c2a8a173e53a203d6cd63d57907b11d2fa..2920199620526bb833ddfaf861ded38155063658 100644 --- a/XEngine_Source/XEngine_ModulePlugin/ModulePlugin_LibCore/ModulePlugin_LibCore.cpp +++ b/XEngine_Source/XEngine_ModulePlugin/ModulePlugin_LibCore/ModulePlugin_LibCore.cpp @@ -13,7 +13,7 @@ *********************************************************************/ CModulePlugin_LibCore::CModulePlugin_LibCore() { - bIsInit = FALSE; + bIsInit = false; } CModulePlugin_LibCore::~CModulePlugin_LibCore() { @@ -29,19 +29,19 @@ CModulePlugin_LibCore::~CModulePlugin_LibCore() 意思:是否成功初始化 备注: *********************************************************************/ -BOOL CModulePlugin_LibCore::ModulePlugin_LibCore_Init() +bool CModulePlugin_LibCore::ModulePlugin_LibCore_Init() { - ModulePlugin_IsErrorOccur = FALSE; + ModulePlugin_IsErrorOccur = false; //判断是否初始化 if (bIsInit) { - ModulePlugin_IsErrorOccur = TRUE; + ModulePlugin_IsErrorOccur = true; ModulePlugin_dwErrorCode = ERROR_XENGINE_APISERVICE_MODULE_PLUGIN_ISINITED; - return FALSE; + return false; } //启动线程 - bIsInit = TRUE; - return TRUE; + bIsInit = true; + return true; } /******************************************************************** 函数名称:ModulePlugin_LibCore_Push @@ -66,21 +66,21 @@ BOOL CModulePlugin_LibCore::ModulePlugin_LibCore_Init() 意思:是否成功添加 备注: *********************************************************************/ -BOOL CModulePlugin_LibCore::ModulePlugin_LibCore_Push(XNETHANDLE* pxhModule, LPCTSTR lpszPluginFile, LPVOID lParam) +bool CModulePlugin_LibCore::ModulePlugin_LibCore_Push(XNETHANDLE* pxhModule, LPCXSTR lpszPluginFile, XPVOID lParam) { - ModulePlugin_IsErrorOccur = FALSE; + ModulePlugin_IsErrorOccur = false; if (!BaseLib_OperatorHandle_Create(pxhModule)) { - ModulePlugin_IsErrorOccur = TRUE; + ModulePlugin_IsErrorOccur = true; ModulePlugin_dwErrorCode = BaseLib_GetLastError(); - return FALSE; + return false; } if (!ModulePlugin_LibCore_Add(*pxhModule, lpszPluginFile, lParam)) { - return FALSE; + return false; } - return TRUE; + return true; } /******************************************************************** 函数名称:ModulePlugin_LibCore_Exec @@ -130,30 +130,30 @@ BOOL CModulePlugin_LibCore::ModulePlugin_LibCore_Push(XNETHANDLE* pxhModule, LPC 意思:是否成功 备注: *********************************************************************/ -BOOL CModulePlugin_LibCore::ModulePlugin_LibCore_Exec(XNETHANDLE xhModule, TCHAR*** pppHDRList, int nListCount, int* pInt_HTTPCode, TCHAR* ptszMsgBuffer, int* pInt_MsgLen, LPCTSTR lpszMsgBufer /* = NULL */, int nMsgLen /* = 0 */) +bool CModulePlugin_LibCore::ModulePlugin_LibCore_Exec(XNETHANDLE xhModule, XCHAR*** pppHDRList, int nListCount, int* pInt_HTTPCode, XCHAR* ptszMsgBuffer, int* pInt_MsgLen, LPCXSTR lpszMsgBufer /* = NULL */, int nMsgLen /* = 0 */) { - ModulePlugin_IsErrorOccur = FALSE; + ModulePlugin_IsErrorOccur = false; st_csStl.lock_shared(); //执行指定插件函数 unordered_map::const_iterator stl_MapIterator = stl_MapFrameWork.find(xhModule); if (stl_MapIterator == stl_MapFrameWork.end()) { - ModulePlugin_IsErrorOccur = TRUE; + ModulePlugin_IsErrorOccur = true; ModulePlugin_dwErrorCode = ERROR_XENGINE_APISERVICE_MODULE_PLUGIN_NOTFOUND; st_csStl.unlock_shared(); - return FALSE; + return false; } if (!stl_MapIterator->second.fpCall_PluginCore_Call(pppHDRList, nListCount, pInt_HTTPCode, ptszMsgBuffer, pInt_MsgLen, lpszMsgBufer, nMsgLen)) { - ModulePlugin_IsErrorOccur = TRUE; + ModulePlugin_IsErrorOccur = true; ModulePlugin_dwErrorCode = stl_MapIterator->second.fpCall_PluginCore_GetLastError(); st_csStl.unlock_shared(); - return FALSE; + return false; } st_csStl.unlock_shared(); - return TRUE; + return true; } /******************************************************************** 函数名称:ModulePlugin_LibCore_Destroy @@ -163,16 +163,16 @@ BOOL CModulePlugin_LibCore::ModulePlugin_LibCore_Exec(XNETHANDLE xhModule, TCHAR 意思:是否成功销毁 备注: *********************************************************************/ -BOOL CModulePlugin_LibCore::ModulePlugin_LibCore_Destroy() +bool CModulePlugin_LibCore::ModulePlugin_LibCore_Destroy() { - ModulePlugin_IsErrorOccur = FALSE; + ModulePlugin_IsErrorOccur = false; //判断是否初始化 if (!bIsInit) { - return TRUE; + return true; } - bIsInit = FALSE; + bIsInit = false; //清理STL元素空间 st_csStl.lock(); unordered_map::iterator stl_MapIterator = stl_MapFrameWork.begin(); @@ -187,7 +187,7 @@ BOOL CModulePlugin_LibCore::ModulePlugin_LibCore_Destroy() } stl_MapFrameWork.clear(); st_csStl.unlock(); - return TRUE; + return true; } ////////////////////////////////////////////////////////////////////////// // 保护函数 @@ -215,36 +215,36 @@ BOOL CModulePlugin_LibCore::ModulePlugin_LibCore_Destroy() 意思:是否成功执行 备注: *********************************************************************/ -BOOL CModulePlugin_LibCore::ModulePlugin_LibCore_Add(XNETHANDLE xhNet, LPCTSTR lpszPluginFile, LPVOID lParam) +bool CModulePlugin_LibCore::ModulePlugin_LibCore_Add(XNETHANDLE xhNet, LPCXSTR lpszPluginFile, XPVOID lParam) { - ModulePlugin_IsErrorOccur = FALSE; + ModulePlugin_IsErrorOccur = false; if (NULL == lpszPluginFile) { - ModulePlugin_IsErrorOccur = TRUE; + ModulePlugin_IsErrorOccur = true; ModulePlugin_dwErrorCode = ERROR_XENGINE_APISERVICE_MODULE_PLUGIN_PARAMENT; - return FALSE; + return false; } PLUGINCORE_FRAMEWORK st_FrameWork; st_FrameWork.mhFile = 0; memset(st_FrameWork.tszModuleFile, '\0', sizeof(st_FrameWork.tszModuleFile)); //打开一个模块 #ifdef _MSC_BUILD - st_FrameWork.mhFile = LoadLibrary(lpszPluginFile); + st_FrameWork.mhFile = LoadLibraryA(lpszPluginFile); #else st_FrameWork.mhFile = dlopen(lpszPluginFile, RTLD_LAZY); #endif if (NULL == st_FrameWork.mhFile) { - ModulePlugin_IsErrorOccur = TRUE; + ModulePlugin_IsErrorOccur = true; ModulePlugin_dwErrorCode = ERROR_XENGINE_APISERVICE_MODULE_PLUGIN_OPENDL; - return FALSE; + return false; } //开始查找模块中的函数 #ifdef _MSC_BUILD st_FrameWork.fpCall_PluginCore_Init = (FPCall_PluginCore_Init)GetProcAddress(st_FrameWork.mhFile, "PluginCore_Init"); #else - * (void**)(&st_FrameWork.fpCall_PluginCore_Init) = dlsym(st_FrameWork.mhFile, _T("PluginCore_Init")); + * (void**)(&st_FrameWork.fpCall_PluginCore_Init) = dlsym(st_FrameWork.mhFile, _X("PluginCore_Init")); #endif if (NULL == st_FrameWork.fpCall_PluginCore_Init) { @@ -253,14 +253,14 @@ BOOL CModulePlugin_LibCore::ModulePlugin_LibCore_Add(XNETHANDLE xhNet, LPCTSTR l #else dlclose(st_FrameWork.mhFile); #endif - ModulePlugin_IsErrorOccur = TRUE; + ModulePlugin_IsErrorOccur = true; ModulePlugin_dwErrorCode = ERROR_XENGINE_APISERVICE_MODULE_PLUGIN_FPINIT; - return FALSE; + return false; } #ifdef _MSC_BUILD st_FrameWork.fpCall_PluginCore_UnInit = (FPCall_PluginCore_UnInit)GetProcAddress(st_FrameWork.mhFile, "PluginCore_UnInit"); #else - * (void**)(&st_FrameWork.fpCall_PluginCore_UnInit) = dlsym(st_FrameWork.mhFile, _T("PluginCore_UnInit")); + * (void**)(&st_FrameWork.fpCall_PluginCore_UnInit) = dlsym(st_FrameWork.mhFile, _X("PluginCore_UnInit")); #endif if (NULL == st_FrameWork.fpCall_PluginCore_UnInit) { @@ -269,14 +269,14 @@ BOOL CModulePlugin_LibCore::ModulePlugin_LibCore_Add(XNETHANDLE xhNet, LPCTSTR l #else dlclose(st_FrameWork.mhFile); #endif - ModulePlugin_IsErrorOccur = TRUE; + ModulePlugin_IsErrorOccur = true; ModulePlugin_dwErrorCode = ERROR_XENGINE_APISERVICE_MODULE_PLUGIN_FPUNINIT; - return FALSE; + return false; } #ifdef _MSC_BUILD st_FrameWork.fpCall_PluginCore_Call = (FPCall_PluginCore_Call)GetProcAddress(st_FrameWork.mhFile, "PluginCore_Call"); #else - * (void**)(&st_FrameWork.fpCall_PluginCore_Call) = dlsym(st_FrameWork.mhFile, _T("PluginCore_Call")); + * (void**)(&st_FrameWork.fpCall_PluginCore_Call) = dlsym(st_FrameWork.mhFile, _X("PluginCore_Call")); #endif if (NULL == st_FrameWork.fpCall_PluginCore_Call) { @@ -285,14 +285,14 @@ BOOL CModulePlugin_LibCore::ModulePlugin_LibCore_Add(XNETHANDLE xhNet, LPCTSTR l #else dlclose(st_FrameWork.mhFile); #endif - ModulePlugin_IsErrorOccur = TRUE; + ModulePlugin_IsErrorOccur = true; ModulePlugin_dwErrorCode = ERROR_XENGINE_APISERVICE_MODULE_PLUGIN_FPCALL; - return FALSE; + return false; } #ifdef _MSC_BUILD - st_FrameWork.fpCall_PluginCore_GetLastError = (FPCall_PluginCore_GetLastError)GetProcAddress(st_FrameWork.mhFile, _T("PluginCore_GetLastError")); + st_FrameWork.fpCall_PluginCore_GetLastError = (FPCall_PluginCore_GetLastError)GetProcAddress(st_FrameWork.mhFile, _X("PluginCore_GetLastError")); #else - * (void**)(&st_FrameWork.fpCall_PluginCore_GetLastError) = dlsym(st_FrameWork.mhFile, _T("PluginCore_GetLastError")); + * (void**)(&st_FrameWork.fpCall_PluginCore_GetLastError) = dlsym(st_FrameWork.mhFile, _X("PluginCore_GetLastError")); #endif if (NULL == st_FrameWork.fpCall_PluginCore_GetLastError) { @@ -301,9 +301,9 @@ BOOL CModulePlugin_LibCore::ModulePlugin_LibCore_Add(XNETHANDLE xhNet, LPCTSTR l #else dlclose(st_FrameWork.mhFile); #endif - ModulePlugin_IsErrorOccur = TRUE; + ModulePlugin_IsErrorOccur = true; ModulePlugin_dwErrorCode = ERROR_XENGINE_APISERVICE_MODULE_PLUGIN_FPERROR; - return FALSE; + return false; } //初始化内部模块 if (!st_FrameWork.fpCall_PluginCore_Init(lParam)) @@ -313,15 +313,15 @@ BOOL CModulePlugin_LibCore::ModulePlugin_LibCore_Add(XNETHANDLE xhNet, LPCTSTR l #else dlclose(st_FrameWork.mhFile); #endif - ModulePlugin_IsErrorOccur = TRUE; + ModulePlugin_IsErrorOccur = true; ModulePlugin_dwErrorCode = ERROR_XENGINE_APISERVICE_MODULE_PLUGIN_INIT; - return FALSE; + return false; } - _tcscpy(st_FrameWork.tszModuleFile, lpszPluginFile); + _tcsxcpy(st_FrameWork.tszModuleFile, lpszPluginFile); //添加模块属性到STL函数中 st_csStl.lock(); stl_MapFrameWork.insert(make_pair(xhNet, st_FrameWork)); st_csStl.unlock(); - return TRUE; + return true; } \ No newline at end of file diff --git a/XEngine_Source/XEngine_ModulePlugin/ModulePlugin_LibCore/ModulePlugin_LibCore.h b/XEngine_Source/XEngine_ModulePlugin/ModulePlugin_LibCore/ModulePlugin_LibCore.h index 1899c60923f6747e06daeb64bbb1cb6010b6c1f3..24eba960e735cc52b12718388fecdb70db6a2eb7 100644 --- a/XEngine_Source/XEngine_ModulePlugin/ModulePlugin_LibCore/ModulePlugin_LibCore.h +++ b/XEngine_Source/XEngine_ModulePlugin/ModulePlugin_LibCore/ModulePlugin_LibCore.h @@ -10,20 +10,24 @@ // Purpose: 插件核心架构定义 // History: *********************************************************************/ -typedef BOOL(*FPCall_PluginCore_Init)(LPVOID lParam); +typedef bool(*FPCall_PluginCore_Init)(XPVOID lParam); typedef void(*FPCall_PluginCore_UnInit)(); -typedef BOOL(*FPCall_PluginCore_Call)(TCHAR*** pppHDRList, int nListCount, int* pInt_HTTPCode, TCHAR* ptszMsgBuffer, int* pInt_MsgLen, LPCTSTR lpszMsgBufer, int nMsgLen); -typedef DWORD(*FPCall_PluginCore_GetLastError)(); +typedef bool(*FPCall_PluginCore_Call)(XCHAR*** pppHDRList, int nListCount, int* pInt_HTTPCode, XCHAR* ptszMsgBuffer, int* pInt_MsgLen, LPCXSTR lpszMsgBufer, int nMsgLen); +typedef XLONG(*FPCall_PluginCore_GetLastError)(); typedef struct { +#ifdef _MSC_BUILD HMODULE mhFile; - TCHAR tszModuleFile[MAX_PATH]; +#else + void* mhFile; +#endif + XCHAR tszModuleFile[MAX_PATH]; - BOOL(*fpCall_PluginCore_Init)(LPVOID lParam); + bool(*fpCall_PluginCore_Init)(XPVOID lParam); void(*fpCall_PluginCore_UnInit)(); - BOOL(*fpCall_PluginCore_Call)(TCHAR*** pppHDRList, int nListCount, int* pInt_HTTPCode, TCHAR* ptszMsgBuffer, int* pInt_MsgLen, LPCTSTR lpszMsgBufer, int nMsgLen); - DWORD(*fpCall_PluginCore_GetLastError)(); + bool(*fpCall_PluginCore_Call)(XCHAR*** pppHDRList, int nListCount, int* pInt_HTTPCode, XCHAR* ptszMsgBuffer, int* pInt_MsgLen, LPCXSTR lpszMsgBufer, int nMsgLen); + XLONG(*fpCall_PluginCore_GetLastError)(); }PLUGINCORE_FRAMEWORK, * LPPLUGINCORE_FRAMEWORK; class CModulePlugin_LibCore @@ -32,14 +36,14 @@ public: CModulePlugin_LibCore(); ~CModulePlugin_LibCore(); public: - BOOL ModulePlugin_LibCore_Init(); - BOOL ModulePlugin_LibCore_Push(XNETHANDLE* pxhModule, LPCTSTR lpszPluginFile, LPVOID lParam = NULL); - BOOL ModulePlugin_LibCore_Exec(XNETHANDLE xhModule, TCHAR*** pppHDRList, int nListCount, int* pInt_HTTPCode, TCHAR* ptszMsgBuffer, int* pInt_MsgLen, LPCTSTR lpszMsgBufer = NULL, int nMsgLen = 0); - BOOL ModulePlugin_LibCore_Destroy(); + bool ModulePlugin_LibCore_Init(); + bool ModulePlugin_LibCore_Push(XNETHANDLE* pxhModule, LPCXSTR lpszPluginFile, XPVOID lParam = NULL); + bool ModulePlugin_LibCore_Exec(XNETHANDLE xhModule, XCHAR*** pppHDRList, int nListCount, int* pInt_HTTPCode, XCHAR* ptszMsgBuffer, int* pInt_MsgLen, LPCXSTR lpszMsgBufer = NULL, int nMsgLen = 0); + bool ModulePlugin_LibCore_Destroy(); protected: - BOOL ModulePlugin_LibCore_Add(XNETHANDLE xhNet, LPCTSTR lpszPluginFile, LPVOID lParam = NULL); + bool ModulePlugin_LibCore_Add(XNETHANDLE xhNet, LPCXSTR lpszPluginFile, XPVOID lParam = NULL); private: - BOOL bIsInit; + bool bIsInit; private: shared_mutex st_csStl; private: diff --git a/XEngine_Source/XEngine_ModulePlugin/ModulePlugin_Loader/ModulePlugin_Loader.cpp b/XEngine_Source/XEngine_ModulePlugin/ModulePlugin_Loader/ModulePlugin_Loader.cpp index bb5888ead698a1010114016cfc5bc970f3c6110b..8d37468a6d4ad08516f3dbf4dbbdb6c742855572 100644 --- a/XEngine_Source/XEngine_ModulePlugin/ModulePlugin_Loader/ModulePlugin_Loader.cpp +++ b/XEngine_Source/XEngine_ModulePlugin/ModulePlugin_Loader/ModulePlugin_Loader.cpp @@ -43,42 +43,42 @@ CModulePlugin_Loader::~CModulePlugin_Loader() 意思:是否成功 备注: *********************************************************************/ -BOOL CModulePlugin_Loader::ModulePlugin_Loader_Insert(LPCTSTR lpszModuleMethod, LPCTSTR lpszModuleName, int nType /* = 0 */) +bool CModulePlugin_Loader::ModulePlugin_Loader_Insert(LPCXSTR lpszModuleMethod, LPCXSTR lpszModuleName, int nType /* = 0 */) { - ModulePlugin_IsErrorOccur = FALSE; + ModulePlugin_IsErrorOccur = false; if ((NULL == lpszModuleMethod) || (NULL == lpszModuleName)) { - ModulePlugin_IsErrorOccur = TRUE; + ModulePlugin_IsErrorOccur = true; ModulePlugin_dwErrorCode = ERROR_XENGINE_APISERVICE_MODULE_PLUGIN_PARAMENT; - return FALSE; + return false; } PLUGINCORE_LOADER st_PluginLoader; memset(&st_PluginLoader, '\0', sizeof(PLUGINCORE_LOADER)); st_PluginLoader.nType = nType; - _tcscpy(st_PluginLoader.tszModuleFile, lpszModuleName); - _tcscpy(st_PluginLoader.tszModuleMethod, lpszModuleMethod); + _tcsxcpy(st_PluginLoader.tszModuleFile, lpszModuleName); + _tcsxcpy(st_PluginLoader.tszModuleMethod, lpszModuleMethod); if (0 == nType) { if (!ModulePlugin_LibCore_Push(&st_PluginLoader.xhToken, lpszModuleName)) { - return FALSE; + return false; } } else { if (!ModulePlugin_LuaCore_Push(&st_PluginLoader.xhToken, lpszModuleName)) { - return FALSE; + return false; } } st_Locker.lock(); stl_MapLoader.insert(make_pair(lpszModuleMethod, st_PluginLoader)); st_Locker.unlock(); - return TRUE; + return true; } /******************************************************************** 函数名称:ModulePlugin_Loader_Find @@ -98,31 +98,31 @@ BOOL CModulePlugin_Loader::ModulePlugin_Loader_Insert(LPCTSTR lpszModuleMethod, 意思:是否成功 备注: *********************************************************************/ -BOOL CModulePlugin_Loader::ModulePlugin_Loader_Find(LPCTSTR lpszMethodName, int* pInt_Type) +bool CModulePlugin_Loader::ModulePlugin_Loader_Find(LPCXSTR lpszMethodName, int* pInt_Type) { - ModulePlugin_IsErrorOccur = FALSE; + ModulePlugin_IsErrorOccur = false; if (NULL == lpszMethodName) { - ModulePlugin_IsErrorOccur = TRUE; + ModulePlugin_IsErrorOccur = true; ModulePlugin_dwErrorCode = ERROR_XENGINE_APISERVICE_MODULE_PLUGIN_PARAMENT; - return FALSE; + return false; } st_Locker.lock_shared(); unordered_map::const_iterator stl_MapIterator = stl_MapLoader.find(lpszMethodName); if (stl_MapIterator == stl_MapLoader.end()) { - ModulePlugin_IsErrorOccur = TRUE; + ModulePlugin_IsErrorOccur = true; ModulePlugin_dwErrorCode = ERROR_XENGINE_APISERVICE_MODULE_PLUGIN_NOTFOUND; st_Locker.unlock_shared(); - return FALSE; + return false; } if (NULL != pInt_Type) { *pInt_Type = stl_MapIterator->second.nType; } st_Locker.unlock_shared(); - return TRUE; + return true; } /******************************************************************** 函数名称:ModulePlugin_Loader_Exec @@ -162,24 +162,24 @@ BOOL CModulePlugin_Loader::ModulePlugin_Loader_Find(LPCTSTR lpszMethodName, int* 意思:是否成功 备注: *********************************************************************/ -BOOL CModulePlugin_Loader::ModulePlugin_Loader_Exec(LPCTSTR lpszMethodName, TCHAR*** pppHDRList, int nListCount, int* pInt_HTTPCode, TCHAR* ptszMsgBuffer, int* pInt_MsgLen) +bool CModulePlugin_Loader::ModulePlugin_Loader_Exec(LPCXSTR lpszMethodName, XCHAR*** pppHDRList, int nListCount, int* pInt_HTTPCode, XCHAR* ptszMsgBuffer, int* pInt_MsgLen) { - ModulePlugin_IsErrorOccur = FALSE; + ModulePlugin_IsErrorOccur = false; if (NULL == lpszMethodName) { - ModulePlugin_IsErrorOccur = TRUE; + ModulePlugin_IsErrorOccur = true; ModulePlugin_dwErrorCode = ERROR_XENGINE_APISERVICE_MODULE_PLUGIN_PARAMENT; - return FALSE; + return false; } st_Locker.lock_shared(); unordered_map::const_iterator stl_MapIterator = stl_MapLoader.find(lpszMethodName); if (stl_MapIterator == stl_MapLoader.end()) { - ModulePlugin_IsErrorOccur = TRUE; + ModulePlugin_IsErrorOccur = true; ModulePlugin_dwErrorCode = ERROR_XENGINE_APISERVICE_MODULE_PLUGIN_NOTFOUND; st_Locker.unlock_shared(); - return FALSE; + return false; } if (0 == stl_MapIterator->second.nType) @@ -187,7 +187,7 @@ BOOL CModulePlugin_Loader::ModulePlugin_Loader_Exec(LPCTSTR lpszMethodName, TCHA if (!ModulePlugin_LibCore_Exec(stl_MapIterator->second.xhToken, pppHDRList, nListCount, pInt_HTTPCode, ptszMsgBuffer, pInt_MsgLen)) { st_Locker.unlock_shared(); - return FALSE; + return false; } } else @@ -195,11 +195,11 @@ BOOL CModulePlugin_Loader::ModulePlugin_Loader_Exec(LPCTSTR lpszMethodName, TCHA if (!ModulePlugin_LuaCore_Exec(stl_MapIterator->second.xhToken, pppHDRList, nListCount, pInt_HTTPCode, ptszMsgBuffer, pInt_MsgLen)) { st_Locker.unlock_shared(); - return FALSE; + return false; } } st_Locker.unlock_shared(); - return TRUE; + return true; } /******************************************************************** 函数名称:ModulePlugin_Loader_Destory @@ -209,12 +209,12 @@ BOOL CModulePlugin_Loader::ModulePlugin_Loader_Exec(LPCTSTR lpszMethodName, TCHA 意思:是否成功 备注: *********************************************************************/ -BOOL CModulePlugin_Loader::ModulePlugin_Loader_Destory() +bool CModulePlugin_Loader::ModulePlugin_Loader_Destory() { - ModulePlugin_IsErrorOccur = FALSE; + ModulePlugin_IsErrorOccur = false; st_Locker.lock(); stl_MapLoader.clear(); st_Locker.unlock_shared(); - return TRUE; + return true; } \ No newline at end of file diff --git a/XEngine_Source/XEngine_ModulePlugin/ModulePlugin_Loader/ModulePlugin_Loader.h b/XEngine_Source/XEngine_ModulePlugin/ModulePlugin_Loader/ModulePlugin_Loader.h index 623c1dfd3ac9dd05630acec7243c4b36cdee8251..d89df9012eca683a7ef870544c5dfbc8f8c3c9bd 100644 --- a/XEngine_Source/XEngine_ModulePlugin/ModulePlugin_Loader/ModulePlugin_Loader.h +++ b/XEngine_Source/XEngine_ModulePlugin/ModulePlugin_Loader/ModulePlugin_Loader.h @@ -12,8 +12,8 @@ *********************************************************************/ typedef struct { - TCHAR tszModuleFile[MAX_PATH]; - TCHAR tszModuleMethod[MAX_PATH]; + XCHAR tszModuleFile[MAX_PATH]; + XCHAR tszModuleMethod[MAX_PATH]; XNETHANDLE xhToken; int nType; }PLUGINCORE_LOADER, * LPPLUGINCORE_LOADER; @@ -24,10 +24,10 @@ public: CModulePlugin_Loader(); ~CModulePlugin_Loader(); public: - BOOL ModulePlugin_Loader_Insert(LPCTSTR lpszModuleMethod, LPCTSTR lpszModuleName, int nType = 0); - BOOL ModulePlugin_Loader_Find(LPCTSTR lpszMethodName, int* pInt_Type); - BOOL ModulePlugin_Loader_Exec(LPCTSTR lpszMethodName, TCHAR*** pppHDRList, int nListCount, int* pInt_HTTPCode, TCHAR* ptszMsgBuffer, int* pInt_MsgLen); - BOOL ModulePlugin_Loader_Destory(); + bool ModulePlugin_Loader_Insert(LPCXSTR lpszModuleMethod, LPCXSTR lpszModuleName, int nType = 0); + bool ModulePlugin_Loader_Find(LPCXSTR lpszMethodName, int* pInt_Type); + bool ModulePlugin_Loader_Exec(LPCXSTR lpszMethodName, XCHAR*** pppHDRList, int nListCount, int* pInt_HTTPCode, XCHAR* ptszMsgBuffer, int* pInt_MsgLen); + bool ModulePlugin_Loader_Destory(); protected: private: shared_mutex st_Locker; diff --git a/XEngine_Source/XEngine_ModulePlugin/ModulePlugin_LuaCore/ModulePlugin_LuaCore.cpp b/XEngine_Source/XEngine_ModulePlugin/ModulePlugin_LuaCore/ModulePlugin_LuaCore.cpp index 58f455f514b7556bd75bad0cbf701f5bf65bdaa6..ca353b864d3d740f114e9a7f7f4cb3e847afb813 100644 --- a/XEngine_Source/XEngine_ModulePlugin/ModulePlugin_LuaCore/ModulePlugin_LuaCore.cpp +++ b/XEngine_Source/XEngine_ModulePlugin/ModulePlugin_LuaCore/ModulePlugin_LuaCore.cpp @@ -13,7 +13,7 @@ *********************************************************************/ CModulePlugin_LuaCore::CModulePlugin_LuaCore() { - bIsInit = FALSE; + bIsInit = false; } CModulePlugin_LuaCore::~CModulePlugin_LuaCore() { @@ -29,19 +29,19 @@ CModulePlugin_LuaCore::~CModulePlugin_LuaCore() 意思:是否成功初始化 备注: *********************************************************************/ -BOOL CModulePlugin_LuaCore::ModulePlugin_LuaCore_Init() +bool CModulePlugin_LuaCore::ModulePlugin_LuaCore_Init() { - ModulePlugin_IsErrorOccur = FALSE; + ModulePlugin_IsErrorOccur = false; //判断是否初始化 if (bIsInit) { - ModulePlugin_IsErrorOccur = TRUE; + ModulePlugin_IsErrorOccur = true; ModulePlugin_dwErrorCode = ERROR_XENGINE_APISERVICE_MODULE_PLUGIN_ISINITED; - return FALSE; + return false; } //启动线程 - bIsInit = TRUE; - return TRUE; + bIsInit = true; + return true; } /******************************************************************** 函数名称:ModulePlugin_LuaCore_Push @@ -66,21 +66,21 @@ BOOL CModulePlugin_LuaCore::ModulePlugin_LuaCore_Init() 意思:是否成功添加 备注: *********************************************************************/ -BOOL CModulePlugin_LuaCore::ModulePlugin_LuaCore_Push(XNETHANDLE* pxhModule, LPCTSTR lpszPluginFile, LPVOID lParam) +bool CModulePlugin_LuaCore::ModulePlugin_LuaCore_Push(XNETHANDLE* pxhModule, LPCXSTR lpszPluginFile, XPVOID lParam) { - ModulePlugin_IsErrorOccur = FALSE; + ModulePlugin_IsErrorOccur = false; if (!BaseLib_OperatorHandle_Create(pxhModule)) { - ModulePlugin_IsErrorOccur = TRUE; + ModulePlugin_IsErrorOccur = true; ModulePlugin_dwErrorCode = BaseLib_GetLastError(); - return FALSE; + return false; } if (!ModulePlugin_LuaCore_Add(*pxhModule, lpszPluginFile, lParam)) { - return FALSE; + return false; } - return TRUE; + return true; } /******************************************************************** 函数名称:ModulePlugin_LuaCore_Exec @@ -130,37 +130,37 @@ BOOL CModulePlugin_LuaCore::ModulePlugin_LuaCore_Push(XNETHANDLE* pxhModule, LPC 意思:是否成功 备注: *********************************************************************/ -BOOL CModulePlugin_LuaCore::ModulePlugin_LuaCore_Exec(XNETHANDLE xhModule, TCHAR*** pppHDRList, int nListCount, int* pInt_HTTPCode, TCHAR* ptszMsgBuffer, int* pInt_MsgLen, LPCTSTR lpszMsgBufer /* = NULL */, int nMsgLen /* = 0 */) +bool CModulePlugin_LuaCore::ModulePlugin_LuaCore_Exec(XNETHANDLE xhModule, XCHAR*** pppHDRList, int nListCount, int* pInt_HTTPCode, XCHAR* ptszMsgBuffer, int* pInt_MsgLen, LPCXSTR lpszMsgBufer /* = NULL */, int nMsgLen /* = 0 */) { - ModulePlugin_IsErrorOccur = FALSE; + ModulePlugin_IsErrorOccur = false; st_csStl.lock_shared(); //执行指定插件函数 unordered_map::const_iterator stl_MapIterator = stl_MapFrameWork.find(xhModule); if (stl_MapIterator == stl_MapFrameWork.end()) { - ModulePlugin_IsErrorOccur = TRUE; + ModulePlugin_IsErrorOccur = true; ModulePlugin_dwErrorCode = ERROR_XENGINE_APISERVICE_MODULE_PLUGIN_NOTFOUND; st_csStl.unlock_shared(); - return FALSE; + return false; } if (0 == lua_getglobal(stl_MapIterator->second.pSt_LuaState, "PluginCore_Call")) { - ModulePlugin_IsErrorOccur = TRUE; + ModulePlugin_IsErrorOccur = true; ModulePlugin_dwErrorCode = ERROR_XENGINE_APISERVICE_MODULE_PLUGIN_FPCALL; st_csStl.unlock_shared(); - return FALSE; + return false; } - TCHAR tszURLParam[MAX_PATH]; + XCHAR tszURLParam[MAX_PATH]; memset(tszURLParam, '\0', MAX_PATH); for (int i = 1; i < nListCount; i++) { if (i > 1) { - _tcscat(tszURLParam, "&"); + _tcsxcat(tszURLParam, "&"); } - _tcscat(tszURLParam, (*pppHDRList)[i]); + _tcsxcat(tszURLParam, (*pppHDRList)[i]); } lua_pushstring(stl_MapIterator->second.pSt_LuaState, tszURLParam); lua_pushinteger(stl_MapIterator->second.pSt_LuaState, nListCount - 1); @@ -168,17 +168,17 @@ BOOL CModulePlugin_LuaCore::ModulePlugin_LuaCore_Exec(XNETHANDLE xhModule, TCHAR lua_pushinteger(stl_MapIterator->second.pSt_LuaState, nMsgLen); if (LUA_OK != lua_pcall(stl_MapIterator->second.pSt_LuaState, 4, 1, 0)) { - ModulePlugin_IsErrorOccur = TRUE; + ModulePlugin_IsErrorOccur = true; ModulePlugin_dwErrorCode = ERROR_XENGINE_APISERVICE_MODULE_PLUGIN_EXECTION; st_csStl.unlock_shared(); - return FALSE; + return false; } lua_getglobal(stl_MapIterator->second.pSt_LuaState, "PInt_HTTPCode"); *pInt_HTTPCode = (int)lua_tonumber(stl_MapIterator->second.pSt_LuaState, -1); lua_pop(stl_MapIterator->second.pSt_LuaState, -1); lua_getglobal(stl_MapIterator->second.pSt_LuaState, "PtszMsgBuffer"); - _tcscpy(ptszMsgBuffer, lua_tostring(stl_MapIterator->second.pSt_LuaState, -1)); + _tcsxcpy(ptszMsgBuffer, lua_tostring(stl_MapIterator->second.pSt_LuaState, -1)); lua_pop(stl_MapIterator->second.pSt_LuaState, -1); lua_getglobal(stl_MapIterator->second.pSt_LuaState, "PInt_MsgLen"); @@ -187,7 +187,7 @@ BOOL CModulePlugin_LuaCore::ModulePlugin_LuaCore_Exec(XNETHANDLE xhModule, TCHAR st_csStl.unlock_shared(); - return TRUE; + return true; } /******************************************************************** 函数名称:ModulePlugin_LuaCore_Destroy @@ -197,16 +197,16 @@ BOOL CModulePlugin_LuaCore::ModulePlugin_LuaCore_Exec(XNETHANDLE xhModule, TCHAR 意思:是否成功销毁 备注: *********************************************************************/ -BOOL CModulePlugin_LuaCore::ModulePlugin_LuaCore_Destroy() +bool CModulePlugin_LuaCore::ModulePlugin_LuaCore_Destroy() { - ModulePlugin_IsErrorOccur = FALSE; + ModulePlugin_IsErrorOccur = false; //判断是否初始化 if (!bIsInit) { - return TRUE; + return true; } - bIsInit = FALSE; + bIsInit = false; //清理STL元素空间 st_csStl.lock(); unordered_map::iterator stl_MapIterator = stl_MapFrameWork.begin(); @@ -220,7 +220,7 @@ BOOL CModulePlugin_LuaCore::ModulePlugin_LuaCore_Destroy() stl_MapFrameWork.clear(); st_csStl.unlock(); - return TRUE; + return true; } ////////////////////////////////////////////////////////////////////////// // 保护函数 @@ -248,66 +248,66 @@ BOOL CModulePlugin_LuaCore::ModulePlugin_LuaCore_Destroy() 意思:是否成功执行 备注: *********************************************************************/ -BOOL CModulePlugin_LuaCore::ModulePlugin_LuaCore_Add(XNETHANDLE xhNet, LPCTSTR lpszPluginFile, LPVOID lParam) +bool CModulePlugin_LuaCore::ModulePlugin_LuaCore_Add(XNETHANDLE xhNet, LPCXSTR lpszPluginFile, XPVOID lParam) { - ModulePlugin_IsErrorOccur = FALSE; + ModulePlugin_IsErrorOccur = false; if (NULL == lpszPluginFile) { - ModulePlugin_IsErrorOccur = TRUE; + ModulePlugin_IsErrorOccur = true; ModulePlugin_dwErrorCode = ERROR_XENGINE_APISERVICE_MODULE_PLUGIN_PARAMENT; - return FALSE; + return false; } PLUGINCORE_LUAFRAMEWORK st_LuaCore; memset(&st_LuaCore, '\0', sizeof(PLUGINCORE_LUAFRAMEWORK)); st_LuaCore.pSt_LuaState = luaL_newstate(); - _tcscpy(st_LuaCore.tszModuleFile, lpszPluginFile); + _tcsxcpy(st_LuaCore.tszModuleFile, lpszPluginFile); if (NULL == st_LuaCore.pSt_LuaState) { - ModulePlugin_IsErrorOccur = TRUE; + ModulePlugin_IsErrorOccur = true; ModulePlugin_dwErrorCode = ERROR_XENGINE_APISERVICE_MODULE_PLUGIN_MALLOC; - return FALSE; + return false; } luaL_openlibs(st_LuaCore.pSt_LuaState); if (LUA_OK != luaL_loadfile(st_LuaCore.pSt_LuaState, lpszPluginFile)) { - ModulePlugin_IsErrorOccur = TRUE; + ModulePlugin_IsErrorOccur = true; ModulePlugin_dwErrorCode = ERROR_XENGINE_APISERVICE_MODULE_PLUGIN_OPENDL; - return FALSE; + return false; } if (LUA_OK != lua_pcall(st_LuaCore.pSt_LuaState, 0, 0, 0)) { - ModulePlugin_IsErrorOccur = TRUE; + ModulePlugin_IsErrorOccur = true; ModulePlugin_dwErrorCode = ERROR_XENGINE_APISERVICE_MODULE_PLUGIN_EXECTION; - return FALSE; + return false; } if (0 == lua_getglobal(st_LuaCore.pSt_LuaState, "PluginCore_Init")) { - ModulePlugin_IsErrorOccur = TRUE; + ModulePlugin_IsErrorOccur = true; ModulePlugin_dwErrorCode = ERROR_XENGINE_APISERVICE_MODULE_PLUGIN_FPINIT; - return FALSE; + return false; } if (LUA_OK != lua_pcall(st_LuaCore.pSt_LuaState, 0, 1, 0)) { - ModulePlugin_IsErrorOccur = TRUE; + ModulePlugin_IsErrorOccur = true; ModulePlugin_dwErrorCode = ERROR_XENGINE_APISERVICE_MODULE_PLUGIN_EXECTION; - return FALSE; + return false; } if (!lua_toboolean(st_LuaCore.pSt_LuaState, -1)) { - ModulePlugin_IsErrorOccur = TRUE; + ModulePlugin_IsErrorOccur = true; ModulePlugin_dwErrorCode = ERROR_XENGINE_APISERVICE_MODULE_PLUGIN_EXECTION; - return FALSE; + return false; } lua_pop(st_LuaCore.pSt_LuaState, -1); st_csStl.lock(); stl_MapFrameWork.insert(make_pair(xhNet, st_LuaCore)); st_csStl.unlock(); - return TRUE; + return true; } \ No newline at end of file diff --git a/XEngine_Source/XEngine_ModulePlugin/ModulePlugin_LuaCore/ModulePlugin_LuaCore.h b/XEngine_Source/XEngine_ModulePlugin/ModulePlugin_LuaCore/ModulePlugin_LuaCore.h index 94ae0e45aa2e1e76dfba26a765909adc0daae4de..2e472cb217d243d554db7d11472453b11805ea77 100644 --- a/XEngine_Source/XEngine_ModulePlugin/ModulePlugin_LuaCore/ModulePlugin_LuaCore.h +++ b/XEngine_Source/XEngine_ModulePlugin/ModulePlugin_LuaCore/ModulePlugin_LuaCore.h @@ -12,7 +12,7 @@ *********************************************************************/ typedef struct { - TCHAR tszModuleFile[MAX_PATH]; + XCHAR tszModuleFile[MAX_PATH]; lua_State* pSt_LuaState; }PLUGINCORE_LUAFRAMEWORK; @@ -22,14 +22,14 @@ public: CModulePlugin_LuaCore(); ~CModulePlugin_LuaCore(); public: - BOOL ModulePlugin_LuaCore_Init(); - BOOL ModulePlugin_LuaCore_Push(XNETHANDLE* pxhModule, LPCTSTR lpszPluginFile, LPVOID lParam = NULL); - BOOL ModulePlugin_LuaCore_Exec(XNETHANDLE xhModule, TCHAR*** pppHDRList, int nListCount, int* pInt_HTTPCode, TCHAR* ptszMsgBuffer, int* pInt_MsgLen, LPCTSTR lpszMsgBufer = NULL, int nMsgLen = 0); - BOOL ModulePlugin_LuaCore_Destroy(); + bool ModulePlugin_LuaCore_Init(); + bool ModulePlugin_LuaCore_Push(XNETHANDLE* pxhModule, LPCXSTR lpszPluginFile, XPVOID lParam = NULL); + bool ModulePlugin_LuaCore_Exec(XNETHANDLE xhModule, XCHAR*** pppHDRList, int nListCount, int* pInt_HTTPCode, XCHAR* ptszMsgBuffer, int* pInt_MsgLen, LPCXSTR lpszMsgBufer = NULL, int nMsgLen = 0); + bool ModulePlugin_LuaCore_Destroy(); protected: - BOOL ModulePlugin_LuaCore_Add(XNETHANDLE xhNet, LPCTSTR lpszPluginFile, LPVOID lParam = NULL); + bool ModulePlugin_LuaCore_Add(XNETHANDLE xhNet, LPCXSTR lpszPluginFile, XPVOID lParam = NULL); private: - BOOL bIsInit; + bool bIsInit; private: shared_mutex st_csStl; private: diff --git a/XEngine_Source/XEngine_ModulePlugin/XEngine_ModulePlugin.vcxproj b/XEngine_Source/XEngine_ModulePlugin/XEngine_ModulePlugin.vcxproj index f16c7d864b08a05fb49c1b5969a2cfd641a993bc..f08d5e33b29cfd7651313949d06faa7e3fec396a 100644 --- a/XEngine_Source/XEngine_ModulePlugin/XEngine_ModulePlugin.vcxproj +++ b/XEngine_Source/XEngine_ModulePlugin/XEngine_ModulePlugin.vcxproj @@ -30,27 +30,27 @@ DynamicLibrary true v143 - MultiByte + Unicode DynamicLibrary false v143 true - MultiByte + Unicode DynamicLibrary true v143 - MultiByte + Unicode DynamicLibrary false v143 true - MultiByte + Unicode diff --git a/XEngine_Source/XEngine_ModulePlugin/dllmain.cpp b/XEngine_Source/XEngine_ModulePlugin/dllmain.cpp index daed8c8f7ac50ca1466016a0529648d18125a7e7..594ff2123d474b129bb2014fb572f03c9741bf0b 100644 --- a/XEngine_Source/XEngine_ModulePlugin/dllmain.cpp +++ b/XEngine_Source/XEngine_ModulePlugin/dllmain.cpp @@ -1,9 +1,9 @@ // dllmain.cpp : 定义 DLL 应用程序的入口点。 #include "pch.h" -BOOL APIENTRY DllMain( HMODULE hModule, - DWORD ul_reason_for_call, - LPVOID lpReserved +bool APIENTRY DllMain( HMODULE hModule, + XLONG ul_reason_for_call, + XPVOID lpReserved ) { switch (ul_reason_for_call) @@ -14,6 +14,6 @@ BOOL APIENTRY DllMain( HMODULE hModule, case DLL_PROCESS_DETACH: break; } - return TRUE; + return true; } diff --git a/XEngine_Source/XEngine_ModulePlugin/pch.cpp b/XEngine_Source/XEngine_ModulePlugin/pch.cpp index 807b91a6ec4731b6e31b47c18d3c67fb266bbc07..6ab861843ac303b38eae4fe0ea3fbfc765801371 100644 --- a/XEngine_Source/XEngine_ModulePlugin/pch.cpp +++ b/XEngine_Source/XEngine_ModulePlugin/pch.cpp @@ -13,8 +13,8 @@ // Purpose: 插件核心导出函数实现 // History: *********************************************************************/ -BOOL ModulePlugin_IsErrorOccur = FALSE; -DWORD ModulePlugin_dwErrorCode = 0; +bool ModulePlugin_IsErrorOccur = false; +XLONG ModulePlugin_dwErrorCode = 0; ////////////////////////////////////////////////////////////////////////// CModulePlugin_LibCore m_PluginLib; CModulePlugin_LuaCore m_PluginLua; @@ -22,7 +22,7 @@ CModulePlugin_Loader m_PluginLoader; ////////////////////////////////////////////////////////////////////////// // 导出函数实现 ////////////////////////////////////////////////////////////////////////// -extern "C" DWORD ModulePlugin_GetLastError(int* pInt_SysError) +extern "C" XLONG ModulePlugin_GetLastError(int* pInt_SysError) { if (NULL != pInt_SysError) { @@ -33,57 +33,57 @@ extern "C" DWORD ModulePlugin_GetLastError(int* pInt_SysError) /********************************************************************************* * 插件框架导出函数定义 * *********************************************************************************/ -extern "C" BOOL ModulePlugin_LibCore_Init() +extern "C" bool ModulePlugin_LibCore_Init() { return m_PluginLib.ModulePlugin_LibCore_Init(); } -extern "C" BOOL ModulePlugin_LibCore_Push(XNETHANDLE * pxhModule, LPCTSTR lpszPluginFile, LPVOID lParam) +extern "C" bool ModulePlugin_LibCore_Push(XNETHANDLE * pxhModule, LPCXSTR lpszPluginFile, XPVOID lParam) { return m_PluginLib.ModulePlugin_LibCore_Push(pxhModule, lpszPluginFile, lParam); } -extern "C" BOOL ModulePlugin_LibCore_Exec(XNETHANDLE xhModule, TCHAR * **pppHDRList, int nListCount, int* pInt_HTTPCode, TCHAR * ptszMsgBuffer, int* pInt_MsgLen, LPCTSTR lpszMsgBufer, int nMsgLen) +extern "C" bool ModulePlugin_LibCore_Exec(XNETHANDLE xhModule, XCHAR * **pppHDRList, int nListCount, int* pInt_HTTPCode, XCHAR * ptszMsgBuffer, int* pInt_MsgLen, LPCXSTR lpszMsgBufer, int nMsgLen) { return m_PluginLib.ModulePlugin_LibCore_Exec(xhModule, pppHDRList, nListCount, pInt_HTTPCode, ptszMsgBuffer, pInt_MsgLen); } -extern "C" BOOL ModulePlugin_LibCore_Destroy() +extern "C" bool ModulePlugin_LibCore_Destroy() { return m_PluginLib.ModulePlugin_LibCore_Destroy(); } /********************************************************************************* * LUA插件框架导出函数定义 * *********************************************************************************/ -extern "C" BOOL ModulePlugin_LuaCore_Init() +extern "C" bool ModulePlugin_LuaCore_Init() { return m_PluginLua.ModulePlugin_LuaCore_Init(); } -extern "C" BOOL ModulePlugin_LuaCore_Push(XNETHANDLE * pxhModule, LPCTSTR lpszPluginFile, LPVOID lParam) +extern "C" bool ModulePlugin_LuaCore_Push(XNETHANDLE * pxhModule, LPCXSTR lpszPluginFile, XPVOID lParam) { return m_PluginLua.ModulePlugin_LuaCore_Push(pxhModule, lpszPluginFile, lParam); } -extern "C" BOOL ModulePlugin_LuaCore_Exec(XNETHANDLE xhModule, TCHAR * **pppHDRList, int nListCount, int* pInt_HTTPCode, TCHAR * ptszMsgBuffer, int* pInt_MsgLen, LPCTSTR lpszMsgBufer, int nMsgLen) +extern "C" bool ModulePlugin_LuaCore_Exec(XNETHANDLE xhModule, XCHAR * **pppHDRList, int nListCount, int* pInt_HTTPCode, XCHAR * ptszMsgBuffer, int* pInt_MsgLen, LPCXSTR lpszMsgBufer, int nMsgLen) { return m_PluginLua.ModulePlugin_LuaCore_Exec(xhModule, pppHDRList, nListCount, pInt_HTTPCode, ptszMsgBuffer, pInt_MsgLen, lpszMsgBufer, nMsgLen); } -extern "C" BOOL ModulePlugin_LuaCore_Destroy() +extern "C" bool ModulePlugin_LuaCore_Destroy() { return m_PluginLua.ModulePlugin_LuaCore_Destroy(); } /********************************************************************************* * 加载器导出函数定义 * *********************************************************************************/ -extern "C" BOOL ModulePlugin_Loader_Insert(LPCTSTR lpszModuleMethod, LPCTSTR lpszModuleName, int nType) +extern "C" bool ModulePlugin_Loader_Insert(LPCXSTR lpszModuleMethod, LPCXSTR lpszModuleName, int nType) { return m_PluginLoader.ModulePlugin_Loader_Insert(lpszModuleMethod, lpszModuleName, nType); } -extern "C" BOOL ModulePlugin_Loader_Find(LPCTSTR lpszMethodName, int* pInt_Type) +extern "C" bool ModulePlugin_Loader_Find(LPCXSTR lpszMethodName, int* pInt_Type) { return m_PluginLoader.ModulePlugin_Loader_Find(lpszMethodName, pInt_Type); } -extern "C" BOOL ModulePlugin_Loader_Exec(LPCTSTR lpszMethodName, TCHAR * **pppHDRList, int nListCount, int* pInt_HTTPCode, TCHAR * ptszMsgBuffer, int* pInt_MsgLen) +extern "C" bool ModulePlugin_Loader_Exec(LPCXSTR lpszMethodName, XCHAR * **pppHDRList, int nListCount, int* pInt_HTTPCode, XCHAR * ptszMsgBuffer, int* pInt_MsgLen) { return m_PluginLoader.ModulePlugin_Loader_Exec(lpszMethodName, pppHDRList, nListCount, pInt_HTTPCode, ptszMsgBuffer, pInt_MsgLen); } -extern "C" BOOL ModulePlugin_Loader_Destory() +extern "C" bool ModulePlugin_Loader_Destory() { return m_PluginLoader.ModulePlugin_Loader_Destory(); } \ No newline at end of file diff --git a/XEngine_Source/XEngine_ModulePlugin/pch.h b/XEngine_Source/XEngine_ModulePlugin/pch.h index ad6aef191f489ebf9b3b7bee05e235c76a2f85a7..22e72daa6d4961600c45484eb68bfd71d2959a18 100644 --- a/XEngine_Source/XEngine_ModulePlugin/pch.h +++ b/XEngine_Source/XEngine_ModulePlugin/pch.h @@ -55,8 +55,8 @@ using namespace std; // Purpose: 插件核心公有头文件 // History: *********************************************************************/ -extern BOOL ModulePlugin_IsErrorOccur; -extern DWORD ModulePlugin_dwErrorCode; +extern bool ModulePlugin_IsErrorOccur; +extern XLONG ModulePlugin_dwErrorCode; #ifdef _MSC_BUILD #pragma comment(lib,"XEngine_BaseLib/XEngine_BaseLib") diff --git a/XEngine_Source/XEngine_ModuleProtocol/Makefile b/XEngine_Source/XEngine_ModuleProtocol/Makefile index ca49c60ffc7a2020c59d0fa2e267bb16054532c4..84af05b667b7ea8cab8a7fd3946ecfa86dae0a28 100644 --- a/XEngine_Source/XEngine_ModuleProtocol/Makefile +++ b/XEngine_Source/XEngine_ModuleProtocol/Makefile @@ -1,30 +1,23 @@ -CC = g++ -Wall -std=c++17 -fPIC -Wno-deprecated-declarations -SHAREFLAG = -shared -SHAREDLL = so +CC = g++ -Wall -std=c++17 -fPIC +PLATFORM = linux +PLATVER = +PLATDIR = +FILEEXT = +LIBFLAG = RELEASE = 0 UNICODE = 0 -INCLUDE = -I ./ -I ../XEngine_ThirdPart/jsoncpp -LOADBIN = -L /usr/local/lib/XEngine_Release/XEngine_BaseLib -L ../XEngine_ThirdPart/jsoncpp +LOADHDR = -I ./ -I ../XEngine_ThirdPart/jsoncpp +LOADSO = -L /usr/local/lib/XEngine_Release/XEngine_BaseLib -L ../XEngine_ThirdPart/jsoncpp LIB = -lXEngine_BaseLib -ljsoncpp -LIBEX = -ldl -lpthread -LOADSO = -Wl,-rpath=./,--disable-new-dtags -LIBINCLUDE = ModuleProtocol_Packet.o ModuleProtocol_Parse.o pch.o - -ifeq ($(shell uname),Darwin) - SHAREDLL = dylib - SHAREFLAG = -dynamiclib - LOADSO = -else - SHAREDLL = so - SHAREFLAG = -shared -endif +LIBEX = +OBJECTS = ModuleProtocol_Packet.o ModuleProtocol_Parse.o pch.o ifeq ($(RELEASE),1) -FLAGS = -c -O2 +FLAGS = -c DEBUG = else -FLAGS = -c -DEBUG = -g +FLAGS = -c -lc_p +DEBUG = -g -pg endif ifeq ($(UNICODE),1) @@ -33,26 +26,48 @@ else UNICODE = endif +ifeq ($(PLATFORM),linux) + ifeq (/etc/redhat-release,$(wildcard /etc/redhat-release)) + PLATVER = -D __CENTOS__ + PLATDIR = XEngine_Linux/Centos + else + PLATVER = -D __UBUNTU__ + PLATDIR = XEngine_Linux/Ubuntu + endif + FILEEXT = so + LIBFLAG = -shared + LIBEX = -lpthread -lrt -ldl + LOADBIN = -Wl,-rpath=./,--disable-new-dtags +else ifeq ($(PLATFORM),mac) + CC += -Wno-deprecated-declarations + PLATVER = -D __MACOS__ + PLATDIR = XEngine_Mac + FILEEXT = dylib + LIBFLAG = -dynamiclib + LIBEX = -lpthread -ldl + LOADBIN = -Wl,-rpath,@loader_path/./ +endif + -all:$(LIBINCLUDE) - $(CC) $(DEBUG) $(LIBINCLUDE) -o libXEngine_ModuleProtocol.$(SHAREDLL) $(SHAREFLAG) -fPIC $(LOADBIN) $(LIB) $(LIBEX) $(LOADSO) +all:$(OBJECTS) + $(CC) $(DEBUG) $(OBJECTS) -o libXEngine_ModuleProtocol.$(FILEEXT) $(LIBFLAG) $(LIB) $(LIBEX) $(LOADSO) $(LOADBIN) ModuleProtocol_Packet.o:./ModuleProtocol_Packet/ModuleProtocol_Packet.cpp - $(CC) $(DEBUG) $(FLAGS) $(UNICODE) $(INCLUDE) ./ModuleProtocol_Packet/ModuleProtocol_Packet.cpp + $(CC) $(DEBUG) $(FLAGS) $(UNICODE) $(PLATVER) $(LOADHDR) ./ModuleProtocol_Packet/ModuleProtocol_Packet.cpp ModuleProtocol_Parse.o:./ModuleProtocol_Parse/ModuleProtocol_Parse.cpp - $(CC) $(DEBUG) $(FLAGS) $(UNICODE) $(INCLUDE) ./ModuleProtocol_Parse/ModuleProtocol_Parse.cpp + $(CC) $(DEBUG) $(FLAGS) $(UNICODE) $(PLATVER) $(LOADHDR) ./ModuleProtocol_Parse/ModuleProtocol_Parse.cpp pch.o:./pch.cpp - $(CC) $(DEBUG) $(FLAGS) $(UNICODE) $(INCLUDE) ./pch.cpp + $(CC) $(DEBUG) $(FLAGS) $(UNICODE) $(PLATVER) $(LOADHDR) ./pch.cpp InstallAll:InstallSo -InstallSo:./libXEngine_ModuleProtocol.$(SHAREDLL) - cp ./libXEngine_ModuleProtocol.$(SHAREDLL) ../../XEngine_Release/libXEngine_ModuleProtocol.$(SHAREDLL) +InstallSo:./libXEngine_ModuleProtocol.$(FILEEXT) + cp ./libXEngine_ModuleProtocol.$(FILEEXT) ../../XEngine_Release/libXEngine_ModuleProtocol.$(FILEEXT) CleanAll:CleanObj CleanMk CleanObj: rm *.o CleanMk: - rm *.$(SHAREDLL) \ No newline at end of file + rm *.$(FILEEXT) \ No newline at end of file diff --git a/XEngine_Source/XEngine_ModuleProtocol/ModuleProtocol_Define.h b/XEngine_Source/XEngine_ModuleProtocol/ModuleProtocol_Define.h index 86554dd05fb13c303ff34d6e8f7ffca380ed4743..87e32acffb6405df225fc8e724a573d7fde921b0 100644 --- a/XEngine_Source/XEngine_ModuleProtocol/ModuleProtocol_Define.h +++ b/XEngine_Source/XEngine_ModuleProtocol/ModuleProtocol_Define.h @@ -13,7 +13,7 @@ ////////////////////////////////////////////////////////////////////////// /// 导出的函数 ////////////////////////////////////////////////////////////////////////// -extern "C" DWORD ModuleProtocol_GetLastError(int *pInt_SysError = NULL); +extern "C" XLONG ModuleProtocol_GetLastError(int *pInt_SysError = NULL); /************************************************************************/ /* 导出的协议打包函数 */ /************************************************************************/ @@ -45,7 +45,7 @@ extern "C" DWORD ModuleProtocol_GetLastError(int *pInt_SysError = NULL); 意思:是否成功 备注: *********************************************************************/ -extern "C" BOOL ModuleProtocol_Packet_Common(TCHAR * ptszMsgBuffer, int* pInt_MsgLen, int nCode = 0, LPCTSTR lpszMsgBuffer = NULL); +extern "C" bool ModuleProtocol_Packet_Common(XCHAR * ptszMsgBuffer, int* pInt_MsgLen, int nCode = 0, LPCXSTR lpszMsgBuffer = NULL); /******************************************************************** 函数名称:ModuleProtocol_Packet_IDQuery 函数功能:ID查询打包为JSON的封包函数 @@ -84,7 +84,7 @@ extern "C" BOOL ModuleProtocol_Packet_Common(TCHAR * ptszMsgBuffer, int* pInt_Ms 意思:是否成功 备注: *********************************************************************/ -extern "C" BOOL ModuleProtocol_Packet_IDQuery(TCHAR* ptszMsgBuffer, int* pInt_MsgLen, XENGINE_IDCARDINFO* pSt_IDInfo, XENGINE_IDREGION* pSt_IDRegion, int nCode = 0, LPCTSTR lpszMsgBuffer = NULL); +extern "C" bool ModuleProtocol_Packet_IDQuery(XCHAR* ptszMsgBuffer, int* pInt_MsgLen, XENGINE_IDCARDINFO* pSt_IDInfo, XENGINE_IDREGION* pSt_IDRegion, int nCode = 0, LPCXSTR lpszMsgBuffer = NULL); /******************************************************************** 函数名称:ModuleProtocol_Packet_BankQuery 函数功能:银行卡信息查询打包为JSON @@ -118,7 +118,7 @@ extern "C" BOOL ModuleProtocol_Packet_IDQuery(TCHAR* ptszMsgBuffer, int* pInt_Ms 意思:是否成功 备注: *********************************************************************/ -extern "C" BOOL ModuleProtocol_Packet_BankQuery(TCHAR* ptszMsgBuffer, int* pInt_MsgLen, XENGINE_BANKINFO* pSt_BankInfo, int nCode = 0, LPCTSTR lpszMsgBuffer = NULL); +extern "C" bool ModuleProtocol_Packet_BankQuery(XCHAR* ptszMsgBuffer, int* pInt_MsgLen, XENGINE_BANKINFO* pSt_BankInfo, int nCode = 0, LPCXSTR lpszMsgBuffer = NULL); /******************************************************************** 函数名称:ModuleProtocol_Packet_LanguageQuery 函数功能:语言打包为JSON @@ -152,7 +152,7 @@ extern "C" BOOL ModuleProtocol_Packet_BankQuery(TCHAR* ptszMsgBuffer, int* pInt_ 意思:是否成功 备注: *********************************************************************/ -extern "C" BOOL ModuleProtocol_Packet_LanguageQuery(TCHAR* ptszMsgBuffer, int* pInt_MsgLen, XENGINE_LANGUAGEINFO* pSt_LanguageInfo, int nCode = 0, LPCTSTR lpszMsgBuffer = NULL); +extern "C" bool ModuleProtocol_Packet_LanguageQuery(XCHAR* ptszMsgBuffer, int* pInt_MsgLen, XENGINE_LANGUAGEINFO* pSt_LanguageInfo, int nCode = 0, LPCXSTR lpszMsgBuffer = NULL); /******************************************************************** 函数名称:ModuleProtocol_Packet_Locker 函数功能:分布式锁协议打包函数 @@ -186,7 +186,7 @@ extern "C" BOOL ModuleProtocol_Packet_LanguageQuery(TCHAR* ptszMsgBuffer, int* p 意思:是否成功 备注: *********************************************************************/ -extern "C" BOOL ModuleProtocol_Packet_Locker(TCHAR* ptszMsgBuffer, int* pInt_MsgLen, XNETHANDLE xhToken, int nCode = 0, LPCTSTR lpszMsgBuffer = NULL); +extern "C" bool ModuleProtocol_Packet_Locker(XCHAR* ptszMsgBuffer, int* pInt_MsgLen, XNETHANDLE xhToken, int nCode = 0, LPCXSTR lpszMsgBuffer = NULL); /******************************************************************** 函数名称:ModuleProtocol_Packet_ZIPCode 函数功能:打包行政邮编信息协议 @@ -220,7 +220,7 @@ extern "C" BOOL ModuleProtocol_Packet_Locker(TCHAR* ptszMsgBuffer, int* pInt_Msg 意思:是否成功 备注: *********************************************************************/ -extern "C" BOOL ModuleProtocol_Packet_ZIPCode(TCHAR* ptszMsgBuffer, int* pInt_MsgLen, XENGINE_ZIPINFO* pSt_ZIPInfo, int nCode = 0, LPCTSTR lpszMsgBuffer = NULL); +extern "C" bool ModuleProtocol_Packet_ZIPCode(XCHAR* ptszMsgBuffer, int* pInt_MsgLen, XENGINE_ZIPINFO* pSt_ZIPInfo, int nCode = 0, LPCXSTR lpszMsgBuffer = NULL); /******************************************************************** 函数名称:ModuleProtocol_Packet_TestReport 函数功能:套接字测试信息打包 @@ -273,7 +273,7 @@ extern "C" BOOL ModuleProtocol_Packet_ZIPCode(TCHAR* ptszMsgBuffer, int* pInt_Ms 意思:是否成功 备注: *********************************************************************/ -extern "C" BOOL ModuleProtocol_Packet_TestReport(TCHAR* ptszMsgBuffer, int* pInt_MsgLen, XNETHANDLE xhToken, LPCTSTR lpszIPAddr, int nIPPort, __int64x nNumber, __int64x nFailed, __int64x nSuccess, int nStatus); +extern "C" bool ModuleProtocol_Packet_TestReport(XCHAR* ptszMsgBuffer, int* pInt_MsgLen, XNETHANDLE xhToken, LPCXSTR lpszIPAddr, int nIPPort, __int64x nNumber, __int64x nFailed, __int64x nSuccess, int nStatus); /******************************************************************** 函数名称:ModuleProtocol_Packet_TestReply 函数功能:请求返回 @@ -297,7 +297,7 @@ extern "C" BOOL ModuleProtocol_Packet_TestReport(TCHAR* ptszMsgBuffer, int* pInt 意思:是否成功 备注: *********************************************************************/ -extern "C" BOOL ModuleProtocol_Packet_TestReply(TCHAR* ptszMsgBuffer, int* pInt_MsgLen, XNETHANDLE xhToken); +extern "C" bool ModuleProtocol_Packet_TestReply(XCHAR* ptszMsgBuffer, int* pInt_MsgLen, XNETHANDLE xhToken); /******************************************************************** 函数名称:ModuleProtocol_Packet_P2PLan 函数功能:响应同步局域网地址列表 @@ -326,7 +326,7 @@ extern "C" BOOL ModuleProtocol_Packet_TestReply(TCHAR* ptszMsgBuffer, int* pInt_ 意思:是否成功 备注: *********************************************************************/ -extern "C" BOOL ModuleProtocol_Packet_P2PLan(TCHAR* ptszMsgBuffer, int* pInt_MsgLen, XENGINE_P2XPPEER_PROTOCOL*** pppSt_ListClients, int nListCount); +extern "C" bool ModuleProtocol_Packet_P2PLan(XCHAR* ptszMsgBuffer, int* pInt_MsgLen, XENGINE_P2XPPEER_PROTOCOL*** pppSt_ListClients, int nListCount); /******************************************************************** 函数名称:ModuleProtocol_Packet_P2PWLan 函数功能:响应同步局域网所有地址列表 @@ -350,7 +350,7 @@ extern "C" BOOL ModuleProtocol_Packet_P2PLan(TCHAR* ptszMsgBuffer, int* pInt_Msg 意思:是否成功 备注: *********************************************************************/ -extern "C" BOOL ModuleProtocol_Packet_P2PWLan(TCHAR* ptszMsgBuffer, int* pInt_MsgLen, list* pStl_ListClients); +extern "C" bool ModuleProtocol_Packet_P2PWLan(XCHAR* ptszMsgBuffer, int* pInt_MsgLen, list* pStl_ListClients); /******************************************************************** 函数名称:ModuleProtocol_Packet_P2PUser 函数功能:响应用户查询用户信息的请求协议封包函数 @@ -374,7 +374,7 @@ extern "C" BOOL ModuleProtocol_Packet_P2PWLan(TCHAR* ptszMsgBuffer, int* pInt_Ms 意思:是否成功 备注: *********************************************************************/ -extern "C" BOOL ModuleProtocol_Packet_P2PUser(TCHAR* ptszMsgBuffer, int* pInt_MsgLen, XENGINE_P2XPPEER_PROTOCOL* pSt_PeerInfo); +extern "C" bool ModuleProtocol_Packet_P2PUser(XCHAR* ptszMsgBuffer, int* pInt_MsgLen, XENGINE_P2XPPEER_PROTOCOL* pSt_PeerInfo); /******************************************************************** 函数名称:ModuleProtocol_Packet_P2PConnect 函数功能:请求连接打包函数 @@ -403,7 +403,7 @@ extern "C" BOOL ModuleProtocol_Packet_P2PUser(TCHAR* ptszMsgBuffer, int* pInt_Ms 意思:是否成功 备注: *********************************************************************/ -extern "C" BOOL ModuleProtocol_Packet_P2PConnect(TCHAR* ptszMsgBuffer, int* pInt_MsgLen, XENGINE_P2XPIO_PROTOCOL* pSt_IOProtocol); +extern "C" bool ModuleProtocol_Packet_P2PConnect(XCHAR* ptszMsgBuffer, int* pInt_MsgLen, XENGINE_P2XPIO_PROTOCOL* pSt_IOProtocol); /******************************************************************** 函数名称:ModuleProtocol_Packet_Log 函数功能:日志信息打包 @@ -432,7 +432,31 @@ extern "C" BOOL ModuleProtocol_Packet_P2PConnect(TCHAR* ptszMsgBuffer, int* pInt 意思:是否成功 备注: *********************************************************************/ -extern "C" BOOL ModuleProtocol_Packet_Log(TCHAR* ptszMsgBuffer, int* pInt_MsgLen, XENGINE_XLOGINFO*** pppSt_XLogList, int nListCount); +extern "C" bool ModuleProtocol_Packet_Log(XCHAR* ptszMsgBuffer, int* pInt_MsgLen, XENGINE_XLOGINFO*** pppSt_XLogList, int nListCount); +/******************************************************************** +函数名称:ModuleProtocol_Packet_ShortLink +函数功能:短连接生成协议打包函数 + 参数.一:ptszMsgBuffer + In/Out:Out + 类型:字符指针 + 可空:N + 意思:输出打包的数据信息 + 参数.二:pInt_MsgLen + In/Out:Out + 类型:整数型指针 + 可空:N + 意思:输出打包大小 + 参数.三:pSt_ShortLink + In/Out:In + 类型:数据结构 + 可空:N + 意思:输入要打包的信息 +返回值 + 类型:逻辑型 + 意思:是否成功 +备注: +*********************************************************************/ +extern "C" bool ModuleProtocol_Packet_ShortLink(XCHAR* ptszMsgBuffer, int* pInt_MsgLen, XENGINE_SHORTLINK* pSt_ShortLink); /************************************************************************/ /* 导出的协议解析函数 */ /************************************************************************/ @@ -454,7 +478,7 @@ extern "C" BOOL ModuleProtocol_Packet_Log(TCHAR* ptszMsgBuffer, int* pInt_MsgLen 意思:是否成功 备注: *********************************************************************/ -extern "C" BOOL ModuleProtocol_Parse_IDCard(LPCTSTR lpszMsgBuffer, XENGINE_IDCARDINFO* pSt_IDInfo); +extern "C" bool ModuleProtocol_Parse_IDCard(LPCXSTR lpszMsgBuffer, XENGINE_IDCARDINFO* pSt_IDInfo); /******************************************************************** 函数名称:ModuleProtocol_Parse_Bank 函数功能:银行卡解析 @@ -478,7 +502,7 @@ extern "C" BOOL ModuleProtocol_Parse_IDCard(LPCTSTR lpszMsgBuffer, XENGINE_IDCAR 意思:是否成功 备注: *********************************************************************/ -extern "C" BOOL ModuleProtocol_Parse_Bank(LPCTSTR lpszMsgBuffer, int nMsgLen, XENGINE_BANKINFO* pSt_BankInfo); +extern "C" bool ModuleProtocol_Parse_Bank(LPCXSTR lpszMsgBuffer, int nMsgLen, XENGINE_BANKINFO* pSt_BankInfo); /******************************************************************** 函数名称:ModuleProtocol_Parse_Translation 函数功能:翻译解析 @@ -502,7 +526,7 @@ extern "C" BOOL ModuleProtocol_Parse_Bank(LPCTSTR lpszMsgBuffer, int nMsgLen, XE 意思:是否成功 备注: *********************************************************************/ -extern "C" BOOL ModuleProtocol_Parse_Translation(LPCTSTR lpszMsgBuffer, int nMsgLen, XENGINE_LANGUAGEINFO* pSt_LanguageInfo); +extern "C" bool ModuleProtocol_Parse_Translation(LPCXSTR lpszMsgBuffer, int nMsgLen, XENGINE_LANGUAGEINFO* pSt_LanguageInfo); /******************************************************************** 函数名称:ModuleProtocol_Parse_P2PClient 函数功能:P2P客户端请求解析函数 @@ -526,7 +550,7 @@ extern "C" BOOL ModuleProtocol_Parse_Translation(LPCTSTR lpszMsgBuffer, int nMsg 意思:是否成功 备注: *********************************************************************/ -extern "C" BOOL ModuleProtocol_Parse_P2PClient(LPCTSTR lpszMsgBuffer, int nMsgLen, XENGINE_P2XPPEER_PROTOCOL * pSt_P2XPPeer); +extern "C" bool ModuleProtocol_Parse_P2PClient(LPCXSTR lpszMsgBuffer, int nMsgLen, XENGINE_P2XPPEER_PROTOCOL * pSt_P2XPPeer); /******************************************************************** 函数名称:ModuleProtocol_Parse_ZIPCode 函数功能:解析邮政地址信息 @@ -550,7 +574,7 @@ extern "C" BOOL ModuleProtocol_Parse_P2PClient(LPCTSTR lpszMsgBuffer, int nMsgLe 意思:是否成功 备注: *********************************************************************/ -extern "C" BOOL ModuleProtocol_Parse_ZIPCode(LPCTSTR lpszMsgBuffer, int nMsgLen, XENGINE_ZIPINFO* pSt_ZIPInfo); +extern "C" bool ModuleProtocol_Parse_ZIPCode(LPCXSTR lpszMsgBuffer, int nMsgLen, XENGINE_ZIPINFO* pSt_ZIPInfo); /******************************************************************** 函数名称:ModuleProtocol_Parse_XLog 函数功能:解析日志信息 @@ -574,7 +598,7 @@ extern "C" BOOL ModuleProtocol_Parse_ZIPCode(LPCTSTR lpszMsgBuffer, int nMsgLen, 意思:是否成功 备注: *********************************************************************/ -extern "C" BOOL ModuleProtocol_Parse_XLog(LPCTSTR lpszMsgBuffer, int nMsgLen, XENGINE_XLOGINFO* pSt_XLogInfo); +extern "C" bool ModuleProtocol_Parse_XLog(LPCXSTR lpszMsgBuffer, int nMsgLen, XENGINE_XLOGINFO* pSt_XLogInfo); /******************************************************************** 函数名称:ModuleProtocol_Parse_QRCode 函数功能:二维码协议解析 @@ -598,7 +622,7 @@ extern "C" BOOL ModuleProtocol_Parse_XLog(LPCTSTR lpszMsgBuffer, int nMsgLen, XE 意思:是否成功 备注: *********************************************************************/ -extern "C" BOOL ModuleProtocol_Parse_QRCode(LPCTSTR lpszMsgBuffer, int nMsgLen, XENGINE_QRCODE* pSt_QRCode); +extern "C" bool ModuleProtocol_Parse_QRCode(LPCXSTR lpszMsgBuffer, int nMsgLen, XENGINE_QRCODE* pSt_QRCode); /******************************************************************** 函数名称:ModuleProtocol_Parse_SocketTest 函数功能:套接字测试协议解析 @@ -622,4 +646,28 @@ extern "C" BOOL ModuleProtocol_Parse_QRCode(LPCTSTR lpszMsgBuffer, int nMsgLen, 意思:是否成功 备注: *********************************************************************/ -extern "C" BOOL ModuleProtocol_Parse_SocketTest(LPCTSTR lpszMsgBuffer, int nMsgLen, XENGINE_SOCKETTEST* pSt_SocketTest); \ No newline at end of file +extern "C" bool ModuleProtocol_Parse_SocketTest(LPCXSTR lpszMsgBuffer, int nMsgLen, XENGINE_SOCKETTEST* pSt_SocketTest); +/******************************************************************** +函数名称:ModuleProtocol_Parse_ShortLink +函数功能:短连接协议解析 + 参数.一:lpszMsgBuffer + In/Out:In + 类型:常量字符指针 + 可空:N + 意思:输入要解析的数据 + 参数.二:nMsgLen + In/Out:In + 类型:整数型 + 可空:N + 意思:pSt_SocketTest + 参数.三:pSt_ShortLink + In/Out:Out + 类型:数据结构指针 + 可空:N + 意思:输出解析好的信息 +返回值 + 类型:逻辑型 + 意思:是否成功 +备注: +*********************************************************************/ +extern "C" bool ModuleProtocol_Parse_ShortLink(LPCXSTR lpszMsgBuffer, int nMsgLen, XENGINE_SHORTLINK* pSt_ShortLink); \ No newline at end of file diff --git a/XEngine_Source/XEngine_ModuleProtocol/ModuleProtocol_Packet/ModuleProtocol_Packet.cpp b/XEngine_Source/XEngine_ModuleProtocol/ModuleProtocol_Packet/ModuleProtocol_Packet.cpp index b715fde742936f9fd14ec1e0a890d0844925e4a0..309f1ebb07246f8b90610ad96503b7b0da172520 100644 --- a/XEngine_Source/XEngine_ModuleProtocol/ModuleProtocol_Packet/ModuleProtocol_Packet.cpp +++ b/XEngine_Source/XEngine_ModuleProtocol/ModuleProtocol_Packet/ModuleProtocol_Packet.cpp @@ -49,15 +49,15 @@ CModuleProtocol_Packet::~CModuleProtocol_Packet() 意思:是否成功 备注: *********************************************************************/ -BOOL CModuleProtocol_Packet::ModuleProtocol_Packet_Common(TCHAR* ptszMsgBuffer, int* pInt_MsgLen, int nCode /* = 0 */, LPCTSTR lpszMsgBuffer /* = NULL */) +bool CModuleProtocol_Packet::ModuleProtocol_Packet_Common(XCHAR* ptszMsgBuffer, int* pInt_MsgLen, int nCode /* = 0 */, LPCXSTR lpszMsgBuffer /* = NULL */) { - ModuleProtocol_IsErrorOccur = FALSE; + ModuleProtocol_IsErrorOccur = false; if ((NULL == ptszMsgBuffer) || (NULL == pInt_MsgLen)) { - ModuleProtocol_IsErrorOccur = TRUE; + ModuleProtocol_IsErrorOccur = true; ModuleProtocol_dwErrorCode = ERROR_XENGINE_APISERVICE_MODULE_PROTOCOL_PACKET_PARAMENT; - return FALSE; + return false; } Json::Value st_JsonRoot; @@ -68,7 +68,7 @@ BOOL CModuleProtocol_Packet::ModuleProtocol_Packet_Common(TCHAR* ptszMsgBuffer, } *pInt_MsgLen = st_JsonRoot.toStyledString().length(); memcpy(ptszMsgBuffer, st_JsonRoot.toStyledString().c_str(), *pInt_MsgLen); - return TRUE; + return true; } /******************************************************************** 函数名称:ModuleProtocol_Packet_IDQuery @@ -108,15 +108,15 @@ BOOL CModuleProtocol_Packet::ModuleProtocol_Packet_Common(TCHAR* ptszMsgBuffer, 意思:是否成功 备注: *********************************************************************/ -BOOL CModuleProtocol_Packet::ModuleProtocol_Packet_IDQuery(TCHAR* ptszMsgBuffer, int* pInt_MsgLen, XENGINE_IDCARDINFO* pSt_IDInfo, XENGINE_IDREGION* pSt_IDRegion, int nCode /* = 0 */, LPCTSTR lpszMsgBuffer /* = NULL */) +bool CModuleProtocol_Packet::ModuleProtocol_Packet_IDQuery(XCHAR* ptszMsgBuffer, int* pInt_MsgLen, XENGINE_IDCARDINFO* pSt_IDInfo, XENGINE_IDREGION* pSt_IDRegion, int nCode /* = 0 */, LPCXSTR lpszMsgBuffer /* = NULL */) { - ModuleProtocol_IsErrorOccur = FALSE; + ModuleProtocol_IsErrorOccur = false; if ((NULL == ptszMsgBuffer) || (NULL == pInt_MsgLen)) { - ModuleProtocol_IsErrorOccur = TRUE; + ModuleProtocol_IsErrorOccur = true; ModuleProtocol_dwErrorCode = ERROR_XENGINE_APISERVICE_MODULE_PROTOCOL_PACKET_PARAMENT; - return FALSE; + return false; } Json::Value st_JsonRoot; Json::Value st_JsonObject; @@ -133,19 +133,19 @@ BOOL CModuleProtocol_Packet::ModuleProtocol_Packet_IDQuery(TCHAR* ptszMsgBuffer, st_JsonObject["nCheck"] = pSt_IDInfo->nCheck; #ifdef _MSC_BUILD - int nUTFLen = _tcslen(pSt_IDRegion->tszProvincer); - TCHAR tszUTFBuffer[MAX_PATH]; + int nUTFLen = _tcsxlen(pSt_IDRegion->tszProvincer); + XCHAR tszUTFBuffer[MAX_PATH]; memset(tszUTFBuffer, '\0', MAX_PATH); BaseLib_OperatorCharset_AnsiToUTF(pSt_IDRegion->tszProvincer, tszUTFBuffer, &nUTFLen); st_JsonObject["tszProvincer"] = tszUTFBuffer; - nUTFLen = _tcslen(pSt_IDRegion->tszCity); + nUTFLen = _tcsxlen(pSt_IDRegion->tszCity); memset(tszUTFBuffer, '\0', MAX_PATH); BaseLib_OperatorCharset_AnsiToUTF(pSt_IDRegion->tszCity, tszUTFBuffer, &nUTFLen); st_JsonObject["tszCity"] = tszUTFBuffer; - nUTFLen = _tcslen(pSt_IDRegion->tszCounty); + nUTFLen = _tcsxlen(pSt_IDRegion->tszCounty); memset(tszUTFBuffer, '\0', MAX_PATH); BaseLib_OperatorCharset_AnsiToUTF(pSt_IDRegion->tszCounty, tszUTFBuffer, &nUTFLen); st_JsonObject["tszCounty"] = tszUTFBuffer; @@ -170,7 +170,7 @@ BOOL CModuleProtocol_Packet::ModuleProtocol_Packet_IDQuery(TCHAR* ptszMsgBuffer, *pInt_MsgLen = Json::writeString(st_JsonBuilder, st_JsonRoot).length(); memcpy(ptszMsgBuffer, Json::writeString(st_JsonBuilder, st_JsonRoot).c_str(), *pInt_MsgLen); - return TRUE; + return true; } /******************************************************************** 函数名称:ModuleProtocol_Packet_BankQuery @@ -205,15 +205,15 @@ BOOL CModuleProtocol_Packet::ModuleProtocol_Packet_IDQuery(TCHAR* ptszMsgBuffer, 意思:是否成功 备注: *********************************************************************/ -BOOL CModuleProtocol_Packet::ModuleProtocol_Packet_BankQuery(TCHAR* ptszMsgBuffer, int* pInt_MsgLen, XENGINE_BANKINFO* pSt_BankInfo, int nCode /* = 0 */, LPCTSTR lpszMsgBuffer /* = NULL */) +bool CModuleProtocol_Packet::ModuleProtocol_Packet_BankQuery(XCHAR* ptszMsgBuffer, int* pInt_MsgLen, XENGINE_BANKINFO* pSt_BankInfo, int nCode /* = 0 */, LPCXSTR lpszMsgBuffer /* = NULL */) { - ModuleProtocol_IsErrorOccur = FALSE; + ModuleProtocol_IsErrorOccur = false; if ((NULL == ptszMsgBuffer) || (NULL == pInt_MsgLen)) { - ModuleProtocol_IsErrorOccur = TRUE; + ModuleProtocol_IsErrorOccur = true; ModuleProtocol_dwErrorCode = ERROR_XENGINE_APISERVICE_MODULE_PROTOCOL_PACKET_PARAMENT; - return FALSE; + return false; } Json::Value st_JsonRoot; Json::Value st_JsonObject; @@ -226,10 +226,10 @@ BOOL CModuleProtocol_Packet::ModuleProtocol_Packet_BankQuery(TCHAR* ptszMsgBuffe st_JsonObject["enBankType"] = pSt_BankInfo->enBankType; #ifdef _MSC_BUILD - TCHAR tszUTFBuffer[MAX_PATH]; + XCHAR tszUTFBuffer[MAX_PATH]; memset(tszUTFBuffer, '\0', MAX_PATH); - int nUTFLen = _tcslen(pSt_BankInfo->tszBankName); + int nUTFLen = _tcsxlen(pSt_BankInfo->tszBankName); BaseLib_OperatorCharset_AnsiToUTF(pSt_BankInfo->tszBankName, tszUTFBuffer, &nUTFLen); st_JsonObject["tszBankName"] = tszUTFBuffer; #else @@ -251,7 +251,7 @@ BOOL CModuleProtocol_Packet::ModuleProtocol_Packet_BankQuery(TCHAR* ptszMsgBuffe *pInt_MsgLen = Json::writeString(st_JsonBuilder, st_JsonRoot).length(); memcpy(ptszMsgBuffer, Json::writeString(st_JsonBuilder, st_JsonRoot).c_str(), *pInt_MsgLen); - return TRUE; + return true; } /******************************************************************** 函数名称:ModuleProtocol_Packet_LanguageQuery @@ -286,15 +286,15 @@ BOOL CModuleProtocol_Packet::ModuleProtocol_Packet_BankQuery(TCHAR* ptszMsgBuffe 意思:是否成功 备注: *********************************************************************/ -BOOL CModuleProtocol_Packet::ModuleProtocol_Packet_LanguageQuery(TCHAR* ptszMsgBuffer, int* pInt_MsgLen, XENGINE_LANGUAGEINFO* pSt_LanguageInfo, int nCode /* = 0 */, LPCTSTR lpszMsgBuffer /* = NULL */) +bool CModuleProtocol_Packet::ModuleProtocol_Packet_LanguageQuery(XCHAR* ptszMsgBuffer, int* pInt_MsgLen, XENGINE_LANGUAGEINFO* pSt_LanguageInfo, int nCode /* = 0 */, LPCXSTR lpszMsgBuffer /* = NULL */) { - ModuleProtocol_IsErrorOccur = FALSE; + ModuleProtocol_IsErrorOccur = false; if ((NULL == ptszMsgBuffer) || (NULL == pInt_MsgLen)) { - ModuleProtocol_IsErrorOccur = TRUE; + ModuleProtocol_IsErrorOccur = true; ModuleProtocol_dwErrorCode = ERROR_XENGINE_APISERVICE_MODULE_PROTOCOL_PACKET_PARAMENT; - return FALSE; + return false; } Json::Value st_JsonRoot; Json::Value st_JsonObject; @@ -321,7 +321,7 @@ BOOL CModuleProtocol_Packet::ModuleProtocol_Packet_LanguageQuery(TCHAR* ptszMsgB *pInt_MsgLen = Json::writeString(st_JsonBuilder, st_JsonRoot).length(); memcpy(ptszMsgBuffer, Json::writeString(st_JsonBuilder, st_JsonRoot).c_str(), *pInt_MsgLen); - return TRUE; + return true; } /******************************************************************** 函数名称:ModuleProtocol_Packet_Locker @@ -356,15 +356,15 @@ BOOL CModuleProtocol_Packet::ModuleProtocol_Packet_LanguageQuery(TCHAR* ptszMsgB 意思:是否成功 备注: *********************************************************************/ -BOOL CModuleProtocol_Packet::ModuleProtocol_Packet_Locker(TCHAR* ptszMsgBuffer, int* pInt_MsgLen, XNETHANDLE xhToken, int nCode, LPCTSTR lpszMsgBuffer) +bool CModuleProtocol_Packet::ModuleProtocol_Packet_Locker(XCHAR* ptszMsgBuffer, int* pInt_MsgLen, XNETHANDLE xhToken, int nCode, LPCXSTR lpszMsgBuffer) { - ModuleProtocol_IsErrorOccur = FALSE; + ModuleProtocol_IsErrorOccur = false; if ((NULL == ptszMsgBuffer) || (NULL == pInt_MsgLen)) { - ModuleProtocol_IsErrorOccur = TRUE; + ModuleProtocol_IsErrorOccur = true; ModuleProtocol_dwErrorCode = ERROR_XENGINE_APISERVICE_MODULE_PROTOCOL_PACKET_PARAMENT; - return FALSE; + return false; } Json::Value st_JsonRoot; Json::Value st_JsonObject; @@ -386,7 +386,7 @@ BOOL CModuleProtocol_Packet::ModuleProtocol_Packet_Locker(TCHAR* ptszMsgBuffer, *pInt_MsgLen = Json::writeString(st_JsonBuilder, st_JsonRoot).length(); memcpy(ptszMsgBuffer, Json::writeString(st_JsonBuilder, st_JsonRoot).c_str(), *pInt_MsgLen); - return TRUE; + return true; } /******************************************************************** 函数名称:ModuleProtocol_Packet_ZIPCode @@ -421,15 +421,15 @@ BOOL CModuleProtocol_Packet::ModuleProtocol_Packet_Locker(TCHAR* ptszMsgBuffer, 意思:是否成功 备注: *********************************************************************/ -BOOL CModuleProtocol_Packet::ModuleProtocol_Packet_ZIPCode(TCHAR* ptszMsgBuffer, int* pInt_MsgLen, XENGINE_ZIPINFO* pSt_ZIPInfo, int nCode /* = 0 */, LPCTSTR lpszMsgBuffer /* = NULL */) +bool CModuleProtocol_Packet::ModuleProtocol_Packet_ZIPCode(XCHAR* ptszMsgBuffer, int* pInt_MsgLen, XENGINE_ZIPINFO* pSt_ZIPInfo, int nCode /* = 0 */, LPCXSTR lpszMsgBuffer /* = NULL */) { - ModuleProtocol_IsErrorOccur = FALSE; + ModuleProtocol_IsErrorOccur = false; if ((NULL == ptszMsgBuffer) || (NULL == pInt_MsgLen)) { - ModuleProtocol_IsErrorOccur = TRUE; + ModuleProtocol_IsErrorOccur = true; ModuleProtocol_dwErrorCode = ERROR_XENGINE_APISERVICE_MODULE_PROTOCOL_PACKET_PARAMENT; - return FALSE; + return false; } Json::Value st_JsonRoot; Json::Value st_JsonObject; @@ -462,7 +462,7 @@ BOOL CModuleProtocol_Packet::ModuleProtocol_Packet_ZIPCode(TCHAR* ptszMsgBuffer, *pInt_MsgLen = Json::writeString(st_JsonBuilder, st_JsonRoot).length(); memcpy(ptszMsgBuffer, Json::writeString(st_JsonBuilder, st_JsonRoot).c_str(), *pInt_MsgLen); - return TRUE; + return true; } /******************************************************************** 函数名称:ModuleProtocol_Packet_Log @@ -492,15 +492,15 @@ BOOL CModuleProtocol_Packet::ModuleProtocol_Packet_ZIPCode(TCHAR* ptszMsgBuffer, 意思:是否成功 备注: *********************************************************************/ -BOOL CModuleProtocol_Packet::ModuleProtocol_Packet_Log(TCHAR* ptszMsgBuffer, int* pInt_MsgLen, XENGINE_XLOGINFO*** pppSt_XLogList, int nListCount) +bool CModuleProtocol_Packet::ModuleProtocol_Packet_Log(XCHAR* ptszMsgBuffer, int* pInt_MsgLen, XENGINE_XLOGINFO*** pppSt_XLogList, int nListCount) { - ModuleProtocol_IsErrorOccur = FALSE; + ModuleProtocol_IsErrorOccur = false; if ((NULL == ptszMsgBuffer) || (NULL == pInt_MsgLen)) { - ModuleProtocol_IsErrorOccur = TRUE; + ModuleProtocol_IsErrorOccur = true; ModuleProtocol_dwErrorCode = ERROR_XENGINE_APISERVICE_MODULE_PROTOCOL_PACKET_PARAMENT; - return FALSE; + return false; } Json::Value st_JsonRoot; Json::Value st_JsonArray; @@ -528,7 +528,7 @@ BOOL CModuleProtocol_Packet::ModuleProtocol_Packet_Log(TCHAR* ptszMsgBuffer, int *pInt_MsgLen = Json::writeString(st_JsonBuilder, st_JsonRoot).length(); memcpy(ptszMsgBuffer, Json::writeString(st_JsonBuilder, st_JsonRoot).c_str(), *pInt_MsgLen); - return TRUE; + return true; } /******************************************************************** 函数名称:ModuleProtocol_Packet_TestReport @@ -582,15 +582,15 @@ BOOL CModuleProtocol_Packet::ModuleProtocol_Packet_Log(TCHAR* ptszMsgBuffer, int 意思:是否成功 备注: *********************************************************************/ -BOOL CModuleProtocol_Packet::ModuleProtocol_Packet_TestReport(TCHAR* ptszMsgBuffer, int* pInt_MsgLen, XNETHANDLE xhToken, LPCTSTR lpszIPAddr, int nIPPort, __int64x nNumber, __int64x nFailed, __int64x nSuccess, int nStatus) +bool CModuleProtocol_Packet::ModuleProtocol_Packet_TestReport(XCHAR* ptszMsgBuffer, int* pInt_MsgLen, XNETHANDLE xhToken, LPCXSTR lpszIPAddr, int nIPPort, __int64x nNumber, __int64x nFailed, __int64x nSuccess, int nStatus) { - ModuleProtocol_IsErrorOccur = FALSE; + ModuleProtocol_IsErrorOccur = false; if ((NULL == ptszMsgBuffer) || (NULL == pInt_MsgLen)) { - ModuleProtocol_IsErrorOccur = TRUE; + ModuleProtocol_IsErrorOccur = true; ModuleProtocol_dwErrorCode = ERROR_XENGINE_APISERVICE_MODULE_PROTOCOL_PACKET_PARAMENT; - return FALSE; + return false; } Json::Value st_JsonRoot; Json::Value st_JsonObject; @@ -611,7 +611,7 @@ BOOL CModuleProtocol_Packet::ModuleProtocol_Packet_TestReport(TCHAR* ptszMsgBuff *pInt_MsgLen = Json::writeString(st_JsonBuilder, st_JsonRoot).length(); memcpy(ptszMsgBuffer, Json::writeString(st_JsonBuilder, st_JsonRoot).c_str(), *pInt_MsgLen); - return TRUE; + return true; } /******************************************************************** 函数名称:ModuleProtocol_Packet_TestReply @@ -636,15 +636,15 @@ BOOL CModuleProtocol_Packet::ModuleProtocol_Packet_TestReport(TCHAR* ptszMsgBuff 意思:是否成功 备注: *********************************************************************/ -BOOL CModuleProtocol_Packet::ModuleProtocol_Packet_TestReply(TCHAR* ptszMsgBuffer, int* pInt_MsgLen, XNETHANDLE xhToken) +bool CModuleProtocol_Packet::ModuleProtocol_Packet_TestReply(XCHAR* ptszMsgBuffer, int* pInt_MsgLen, XNETHANDLE xhToken) { - ModuleProtocol_IsErrorOccur = FALSE; + ModuleProtocol_IsErrorOccur = false; if ((NULL == ptszMsgBuffer) || (NULL == pInt_MsgLen)) { - ModuleProtocol_IsErrorOccur = TRUE; + ModuleProtocol_IsErrorOccur = true; ModuleProtocol_dwErrorCode = ERROR_XENGINE_APISERVICE_MODULE_PROTOCOL_PACKET_PARAMENT; - return FALSE; + return false; } Json::Value st_JsonRoot; Json::Value st_JsonObject; @@ -659,7 +659,60 @@ BOOL CModuleProtocol_Packet::ModuleProtocol_Packet_TestReply(TCHAR* ptszMsgBuffe *pInt_MsgLen = Json::writeString(st_JsonBuilder, st_JsonRoot).length(); memcpy(ptszMsgBuffer, Json::writeString(st_JsonBuilder, st_JsonRoot).c_str(), *pInt_MsgLen); - return TRUE; + return true; +} +/******************************************************************** +函数名称:ModuleProtocol_Packet_ShortLink +函数功能:短连接生成协议打包函数 + 参数.一:ptszMsgBuffer + In/Out:Out + 类型:字符指针 + 可空:N + 意思:输出打包的数据信息 + 参数.二:pInt_MsgLen + In/Out:Out + 类型:整数型指针 + 可空:N + 意思:输出打包大小 + 参数.三:pSt_ShortLink + In/Out:In + 类型:数据结构 + 可空:N + 意思:输入要打包的信息 +返回值 + 类型:逻辑型 + 意思:是否成功 +备注: +*********************************************************************/ +bool CModuleProtocol_Packet::ModuleProtocol_Packet_ShortLink(XCHAR* ptszMsgBuffer, int* pInt_MsgLen, XENGINE_SHORTLINK* pSt_ShortLink) +{ + ModuleProtocol_IsErrorOccur = false; + + if ((NULL == ptszMsgBuffer) || (NULL == pInt_MsgLen)) + { + ModuleProtocol_IsErrorOccur = true; + ModuleProtocol_dwErrorCode = ERROR_XENGINE_APISERVICE_MODULE_PROTOCOL_PACKET_PARAMENT; + return false; + } + Json::Value st_JsonRoot; + Json::Value st_JsonObject; + Json::StreamWriterBuilder st_JsonBuilder; + + st_JsonObject["tszFullUrl"] = pSt_ShortLink->tszFullUrl; + st_JsonObject["tszShotUrl"] = pSt_ShortLink->tszShotUrl; + st_JsonObject["tszKeyUrl"] = pSt_ShortLink->tszKeyUrl; + st_JsonObject["tszMapUrl"] = pSt_ShortLink->tszMapUrl; + st_JsonObject["tszCvtUrl"] = pSt_ShortLink->tszCvtUrl; + st_JsonObject["tszCreateTime"] = pSt_ShortLink->tszCreateTime; + + st_JsonRoot["code"] = 0; + st_JsonRoot["msg"] = "success"; + st_JsonRoot["data"] = st_JsonObject; + st_JsonBuilder["emitUTF8"] = true; + + *pInt_MsgLen = Json::writeString(st_JsonBuilder, st_JsonRoot).length(); + memcpy(ptszMsgBuffer, Json::writeString(st_JsonBuilder, st_JsonRoot).c_str(), *pInt_MsgLen); + return true; } /******************************************************************** 函数名称:ModuleProtocol_Packet_P2PLan @@ -689,15 +742,15 @@ BOOL CModuleProtocol_Packet::ModuleProtocol_Packet_TestReply(TCHAR* ptszMsgBuffe 意思:是否成功 备注: *********************************************************************/ -BOOL CModuleProtocol_Packet::ModuleProtocol_Packet_P2PLan(TCHAR* ptszMsgBuffer, int* pInt_MsgLen, XENGINE_P2XPPEER_PROTOCOL*** pppSt_ListClients, int nListCount) +bool CModuleProtocol_Packet::ModuleProtocol_Packet_P2PLan(XCHAR* ptszMsgBuffer, int* pInt_MsgLen, XENGINE_P2XPPEER_PROTOCOL*** pppSt_ListClients, int nListCount) { - ModuleProtocol_IsErrorOccur = FALSE; + ModuleProtocol_IsErrorOccur = false; if ((NULL == pppSt_ListClients) || (NULL == ptszMsgBuffer) || (NULL == pInt_MsgLen)) { - ModuleProtocol_IsErrorOccur = FALSE; + ModuleProtocol_IsErrorOccur = false; ModuleProtocol_dwErrorCode = ERROR_XENGINE_APISERVICE_MODULE_PROTOCOL_PACKET_PARAMENT; - return FALSE; + return false; } Json::Value st_JsonRoot; Json::Value st_JsonArray; @@ -715,7 +768,7 @@ BOOL CModuleProtocol_Packet::ModuleProtocol_Packet_P2PLan(TCHAR* ptszMsgBuffer, *pInt_MsgLen = st_JsonRoot.toStyledString().length(); memcpy(ptszMsgBuffer, st_JsonRoot.toStyledString().c_str(), *pInt_MsgLen); - return TRUE; + return true; } /******************************************************************** 函数名称:ModuleProtocol_Packet_P2PWLan @@ -740,21 +793,21 @@ BOOL CModuleProtocol_Packet::ModuleProtocol_Packet_P2PLan(TCHAR* ptszMsgBuffer, 意思:是否成功 备注: *********************************************************************/ -BOOL CModuleProtocol_Packet::ModuleProtocol_Packet_P2PWLan(TCHAR* ptszMsgBuffer, int* pInt_MsgLen, list* pStl_ListClients) +bool CModuleProtocol_Packet::ModuleProtocol_Packet_P2PWLan(XCHAR* ptszMsgBuffer, int* pInt_MsgLen, list* pStl_ListClients) { - ModuleProtocol_IsErrorOccur = FALSE; + ModuleProtocol_IsErrorOccur = false; if ((NULL == pStl_ListClients) || (NULL == ptszMsgBuffer) || (NULL == pInt_MsgLen)) { - ModuleProtocol_IsErrorOccur = FALSE; + ModuleProtocol_IsErrorOccur = false; ModuleProtocol_dwErrorCode = ERROR_XENGINE_APISERVICE_MODULE_PROTOCOL_PACKET_PARAMENT; - return FALSE; + return false; } unordered_map> stl_MapClient; //首先处理公网下的局域网网段列表 for (auto stl_ListIterator = pStl_ListClients->begin(); stl_ListIterator != pStl_ListClients->end(); stl_ListIterator++) { - TCHAR tszClientAddr[128]; + XCHAR tszClientAddr[128]; XENGINE_LIBADDR st_LibAddr; P2XPPROTOCOL_LANPACKET st_LANPacket; @@ -763,10 +816,10 @@ BOOL CModuleProtocol_Packet::ModuleProtocol_Packet_P2PWLan(TCHAR* ptszMsgBuffer, memset(&st_LANPacket, '\0', sizeof(P2XPPROTOCOL_LANPACKET)); //分割 BaseLib_OperatorIPAddr_IsIPV4Addr(stl_ListIterator->tszPrivateAddr, &st_LibAddr); - _stprintf(tszClientAddr, _T("%d.%d.%d"), st_LibAddr.nIPAddr1, st_LibAddr.nIPAddr2, st_LibAddr.nIPAddr3); + _xstprintf(tszClientAddr, _X("%d.%d.%d"), st_LibAddr.nIPAddr1, st_LibAddr.nIPAddr2, st_LibAddr.nIPAddr3); //赋值 - _tcscpy(st_LANPacket.tszUsername, stl_ListIterator->tszUserName); - _tcscpy(st_LANPacket.tszClientAddr, stl_ListIterator->tszPrivateAddr); + _tcsxcpy(st_LANPacket.tszUsername, stl_ListIterator->tszUserName); + _tcsxcpy(st_LANPacket.tszClientAddr, stl_ListIterator->tszPrivateAddr); //判断是否存在 unordered_map>::iterator stl_MapIterator = stl_MapClient.find(tszClientAddr); if (stl_MapIterator == stl_MapClient.end()) @@ -808,7 +861,7 @@ BOOL CModuleProtocol_Packet::ModuleProtocol_Packet_P2PWLan(TCHAR* ptszMsgBuffer, *pInt_MsgLen = st_JsonRoot.toStyledString().length(); memcpy(ptszMsgBuffer, st_JsonRoot.toStyledString().c_str(), *pInt_MsgLen); - return TRUE; + return true; } /******************************************************************** 函数名称:ModuleProtocol_Packet_P2PUser @@ -833,15 +886,15 @@ BOOL CModuleProtocol_Packet::ModuleProtocol_Packet_P2PWLan(TCHAR* ptszMsgBuffer, 意思:是否成功 备注: *********************************************************************/ -BOOL CModuleProtocol_Packet::ModuleProtocol_Packet_P2PUser(TCHAR* ptszMsgBuffer, int* pInt_MsgLen, XENGINE_P2XPPEER_PROTOCOL* pSt_PeerInfo) +bool CModuleProtocol_Packet::ModuleProtocol_Packet_P2PUser(XCHAR* ptszMsgBuffer, int* pInt_MsgLen, XENGINE_P2XPPEER_PROTOCOL* pSt_PeerInfo) { - ModuleProtocol_IsErrorOccur = FALSE; + ModuleProtocol_IsErrorOccur = false; if ((NULL == pSt_PeerInfo) || (NULL == ptszMsgBuffer) || (NULL == pInt_MsgLen)) { - ModuleProtocol_IsErrorOccur = FALSE; + ModuleProtocol_IsErrorOccur = false; ModuleProtocol_dwErrorCode = ERROR_XENGINE_APISERVICE_MODULE_PROTOCOL_PACKET_PARAMENT; - return FALSE; + return false; } Json::Value st_JsonRoot; Json::Value st_JsonAddr; @@ -859,7 +912,7 @@ BOOL CModuleProtocol_Packet::ModuleProtocol_Packet_P2PUser(TCHAR* ptszMsgBuffer, st_JsonBuilder["emitUTF8"] = true; *pInt_MsgLen = Json::writeString(st_JsonBuilder, st_JsonRoot).length(); memcpy(ptszMsgBuffer, Json::writeString(st_JsonBuilder, st_JsonRoot).c_str(), *pInt_MsgLen); - return TRUE; + return true; } /******************************************************************** 函数名称:ModuleProtocol_Packet_P2PConnect @@ -889,15 +942,15 @@ BOOL CModuleProtocol_Packet::ModuleProtocol_Packet_P2PUser(TCHAR* ptszMsgBuffer, 意思:是否成功 备注: *********************************************************************/ -BOOL CModuleProtocol_Packet::ModuleProtocol_Packet_P2PConnect(TCHAR* ptszMsgBuffer, int* pInt_MsgLen, XENGINE_P2XPIO_PROTOCOL* pSt_IOProtocol) +bool CModuleProtocol_Packet::ModuleProtocol_Packet_P2PConnect(XCHAR* ptszMsgBuffer, int* pInt_MsgLen, XENGINE_P2XPIO_PROTOCOL* pSt_IOProtocol) { - ModuleProtocol_IsErrorOccur = FALSE; + ModuleProtocol_IsErrorOccur = false; if ((NULL == ptszMsgBuffer) || (NULL == pInt_MsgLen)) { - ModuleProtocol_IsErrorOccur = FALSE; + ModuleProtocol_IsErrorOccur = false; ModuleProtocol_dwErrorCode = ERROR_XENGINE_APISERVICE_MODULE_PROTOCOL_PACKET_PARAMENT; - return FALSE; + return false; } Json::Value st_JsonRoot; @@ -909,5 +962,5 @@ BOOL CModuleProtocol_Packet::ModuleProtocol_Packet_P2PConnect(TCHAR* ptszMsgBuff *pInt_MsgLen = st_JsonRoot.toStyledString().length(); memcpy(ptszMsgBuffer, st_JsonRoot.toStyledString().c_str(), *pInt_MsgLen); - return TRUE; + return true; } \ No newline at end of file diff --git a/XEngine_Source/XEngine_ModuleProtocol/ModuleProtocol_Packet/ModuleProtocol_Packet.h b/XEngine_Source/XEngine_ModuleProtocol/ModuleProtocol_Packet/ModuleProtocol_Packet.h index 05049baa9c9a0193b3cb9071a44e13a98c042b8f..9a993e8a5d1d97f6fbbd6f54a5dfdf4cee4122bc 100644 --- a/XEngine_Source/XEngine_ModuleProtocol/ModuleProtocol_Packet/ModuleProtocol_Packet.h +++ b/XEngine_Source/XEngine_ModuleProtocol/ModuleProtocol_Packet/ModuleProtocol_Packet.h @@ -12,8 +12,8 @@ *********************************************************************/ typedef struct { - TCHAR tszUsername[MAX_PATH]; - TCHAR tszClientAddr[128]; + XCHAR tszUsername[MAX_PATH]; + XCHAR tszClientAddr[128]; }P2XPPROTOCOL_LANPACKET; class CModuleProtocol_Packet @@ -22,19 +22,20 @@ public: CModuleProtocol_Packet(); ~CModuleProtocol_Packet(); public: - BOOL ModuleProtocol_Packet_Common(TCHAR* ptszMsgBuffer, int* pInt_MsgLen, int nCode = 0, LPCTSTR lpszMsgBuffer = NULL); - BOOL ModuleProtocol_Packet_IDQuery(TCHAR* ptszMsgBuffer, int* pInt_MsgLen, XENGINE_IDCARDINFO* pSt_IDInfo, XENGINE_IDREGION* pSt_IDRegion, int nCode = 0, LPCTSTR lpszMsgBuffer = NULL); - BOOL ModuleProtocol_Packet_BankQuery(TCHAR* ptszMsgBuffer, int* pInt_MsgLen, XENGINE_BANKINFO* pSt_BankInfo, int nCode = 0, LPCTSTR lpszMsgBuffer = NULL); - BOOL ModuleProtocol_Packet_LanguageQuery(TCHAR* ptszMsgBuffer, int* pInt_MsgLen, XENGINE_LANGUAGEINFO* pSt_LanguageInfo, int nCode = 0, LPCTSTR lpszMsgBuffer = NULL); - BOOL ModuleProtocol_Packet_Locker(TCHAR* ptszMsgBuffer, int* pInt_MsgLen, XNETHANDLE xhToken, int nCode = 0, LPCTSTR lpszMsgBuffer = NULL); - BOOL ModuleProtocol_Packet_ZIPCode(TCHAR* ptszMsgBuffer, int* pInt_MsgLen, XENGINE_ZIPINFO* pSt_ZIPInfo, int nCode = 0, LPCTSTR lpszMsgBuffer = NULL); - BOOL ModuleProtocol_Packet_Log(TCHAR* ptszMsgBuffer, int* pInt_MsgLen, XENGINE_XLOGINFO*** pppSt_XLogList, int nListCount); - BOOL ModuleProtocol_Packet_TestReport(TCHAR* ptszMsgBuffer, int* pInt_MsgLen, XNETHANDLE xhToken, LPCTSTR lpszIPAddr, int nIPPort, __int64x nNumber, __int64x nFailed, __int64x nSuccess, int nStatus); - BOOL ModuleProtocol_Packet_TestReply(TCHAR* ptszMsgBuffer, int* pInt_MsgLen, XNETHANDLE xhToken); + bool ModuleProtocol_Packet_Common(XCHAR* ptszMsgBuffer, int* pInt_MsgLen, int nCode = 0, LPCXSTR lpszMsgBuffer = NULL); + bool ModuleProtocol_Packet_IDQuery(XCHAR* ptszMsgBuffer, int* pInt_MsgLen, XENGINE_IDCARDINFO* pSt_IDInfo, XENGINE_IDREGION* pSt_IDRegion, int nCode = 0, LPCXSTR lpszMsgBuffer = NULL); + bool ModuleProtocol_Packet_BankQuery(XCHAR* ptszMsgBuffer, int* pInt_MsgLen, XENGINE_BANKINFO* pSt_BankInfo, int nCode = 0, LPCXSTR lpszMsgBuffer = NULL); + bool ModuleProtocol_Packet_LanguageQuery(XCHAR* ptszMsgBuffer, int* pInt_MsgLen, XENGINE_LANGUAGEINFO* pSt_LanguageInfo, int nCode = 0, LPCXSTR lpszMsgBuffer = NULL); + bool ModuleProtocol_Packet_Locker(XCHAR* ptszMsgBuffer, int* pInt_MsgLen, XNETHANDLE xhToken, int nCode = 0, LPCXSTR lpszMsgBuffer = NULL); + bool ModuleProtocol_Packet_ZIPCode(XCHAR* ptszMsgBuffer, int* pInt_MsgLen, XENGINE_ZIPINFO* pSt_ZIPInfo, int nCode = 0, LPCXSTR lpszMsgBuffer = NULL); + bool ModuleProtocol_Packet_Log(XCHAR* ptszMsgBuffer, int* pInt_MsgLen, XENGINE_XLOGINFO*** pppSt_XLogList, int nListCount); + bool ModuleProtocol_Packet_TestReport(XCHAR* ptszMsgBuffer, int* pInt_MsgLen, XNETHANDLE xhToken, LPCXSTR lpszIPAddr, int nIPPort, __int64x nNumber, __int64x nFailed, __int64x nSuccess, int nStatus); + bool ModuleProtocol_Packet_TestReply(XCHAR* ptszMsgBuffer, int* pInt_MsgLen, XNETHANDLE xhToken); + bool ModuleProtocol_Packet_ShortLink(XCHAR* ptszMsgBuffer, int* pInt_MsgLen, XENGINE_SHORTLINK* pSt_ShortLink); public: - BOOL ModuleProtocol_Packet_P2PLan(TCHAR* ptszMsgBuffer, int* pInt_MsgLen, XENGINE_P2XPPEER_PROTOCOL*** pppSt_ListClients, int nListCount); - BOOL ModuleProtocol_Packet_P2PWLan(TCHAR* ptszMsgBuffer, int* pInt_MsgLen, list* pStl_ListClients); - BOOL ModuleProtocol_Packet_P2PUser(TCHAR* ptszMsgBuffer, int* pInt_MsgLen, XENGINE_P2XPPEER_PROTOCOL* pSt_PeerInfo); - BOOL ModuleProtocol_Packet_P2PConnect(TCHAR* ptszMsgBuffer, int* pInt_MsgLen, XENGINE_P2XPIO_PROTOCOL* pSt_IOProtocol); + bool ModuleProtocol_Packet_P2PLan(XCHAR* ptszMsgBuffer, int* pInt_MsgLen, XENGINE_P2XPPEER_PROTOCOL*** pppSt_ListClients, int nListCount); + bool ModuleProtocol_Packet_P2PWLan(XCHAR* ptszMsgBuffer, int* pInt_MsgLen, list* pStl_ListClients); + bool ModuleProtocol_Packet_P2PUser(XCHAR* ptszMsgBuffer, int* pInt_MsgLen, XENGINE_P2XPPEER_PROTOCOL* pSt_PeerInfo); + bool ModuleProtocol_Packet_P2PConnect(XCHAR* ptszMsgBuffer, int* pInt_MsgLen, XENGINE_P2XPIO_PROTOCOL* pSt_IOProtocol); private: }; \ No newline at end of file diff --git a/XEngine_Source/XEngine_ModuleProtocol/ModuleProtocol_Parse/ModuleProtocol_Parse.cpp b/XEngine_Source/XEngine_ModuleProtocol/ModuleProtocol_Parse/ModuleProtocol_Parse.cpp index 819108a2879c21134c36e209ba09cc13639da62e..d38bb9b6c04d0ea126ccee94b2bb252354883056 100644 --- a/XEngine_Source/XEngine_ModuleProtocol/ModuleProtocol_Parse/ModuleProtocol_Parse.cpp +++ b/XEngine_Source/XEngine_ModuleProtocol/ModuleProtocol_Parse/ModuleProtocol_Parse.cpp @@ -39,81 +39,81 @@ CModuleProtocol_Parse::~CModuleProtocol_Parse() 意思:是否成功 备注: *********************************************************************/ -BOOL CModuleProtocol_Parse::ModuleProtocol_Parse_IDCard(LPCTSTR lpszMsgBuffer, XENGINE_IDCARDINFO* pSt_IDInfo) +bool CModuleProtocol_Parse::ModuleProtocol_Parse_IDCard(LPCXSTR lpszMsgBuffer, XENGINE_IDCARDINFO* pSt_IDInfo) { - ModuleProtocol_IsErrorOccur = FALSE; + ModuleProtocol_IsErrorOccur = false; if ((NULL == lpszMsgBuffer) || (NULL == pSt_IDInfo)) { - ModuleProtocol_IsErrorOccur = TRUE; + ModuleProtocol_IsErrorOccur = true; ModuleProtocol_dwErrorCode = ERROR_XENGINE_APISERVICE_MODULE_PROTOCOL_PARSE_PARAMENT; - return FALSE; + return false; } - if (_tcslen(lpszMsgBuffer) != 18) + if (_tcsxlen(lpszMsgBuffer) != 18) { - ModuleProtocol_IsErrorOccur = TRUE; + ModuleProtocol_IsErrorOccur = true; ModuleProtocol_dwErrorCode = ERROR_XENGINE_APISERVICE_MODULE_PROTOCOL_PARSE_LEN; - return FALSE; + return false; } int nPos = 0; - TCHAR tszTmpBuffer[16]; + XCHAR tszTmpBuffer[16]; //是否是身份证号码 for (int i = 0; i < 17; i++) { if (!isdigit(lpszMsgBuffer[i])) { - ModuleProtocol_IsErrorOccur = TRUE; + ModuleProtocol_IsErrorOccur = true; ModuleProtocol_dwErrorCode = ERROR_XENGINE_APISERVICE_MODULE_PROTOCOL_PARSE_FMT; - return FALSE; + return false; } } - _tcscpy(pSt_IDInfo->tszIDNumber, lpszMsgBuffer); + _tcsxcpy(pSt_IDInfo->tszIDNumber, lpszMsgBuffer); //提取行政区域 memset(tszTmpBuffer, '\0', sizeof(tszTmpBuffer)); memcpy(tszTmpBuffer, lpszMsgBuffer + nPos, 2); - pSt_IDInfo->nIDProvince = _ttoi(tszTmpBuffer); + pSt_IDInfo->nIDProvince = _ttxoi(tszTmpBuffer); nPos += 2; memset(tszTmpBuffer, '\0', sizeof(tszTmpBuffer)); memcpy(tszTmpBuffer, lpszMsgBuffer + nPos, 2); - pSt_IDInfo->nIDCity = _ttoi(tszTmpBuffer); + pSt_IDInfo->nIDCity = _ttxoi(tszTmpBuffer); nPos += 2; memset(tszTmpBuffer, '\0', sizeof(tszTmpBuffer)); memcpy(tszTmpBuffer, lpszMsgBuffer + nPos, 2); - pSt_IDInfo->nIDCounty = _ttoi(tszTmpBuffer); + pSt_IDInfo->nIDCounty = _ttxoi(tszTmpBuffer); nPos += 2; //提取生日 memset(tszTmpBuffer, '\0', sizeof(tszTmpBuffer)); memcpy(tszTmpBuffer, lpszMsgBuffer + nPos, 4); - pSt_IDInfo->nBirthYear = _ttoi(tszTmpBuffer); + pSt_IDInfo->nBirthYear = _ttxoi(tszTmpBuffer); nPos += 4; memset(tszTmpBuffer, '\0', sizeof(tszTmpBuffer)); memcpy(tszTmpBuffer, lpszMsgBuffer + nPos, 2); - pSt_IDInfo->nBirthMonth = _ttoi(tszTmpBuffer); + pSt_IDInfo->nBirthMonth = _ttxoi(tszTmpBuffer); nPos += 2; memset(tszTmpBuffer, '\0', sizeof(tszTmpBuffer)); memcpy(tszTmpBuffer, lpszMsgBuffer + nPos, 2); - pSt_IDInfo->nBirthDay = _ttoi(tszTmpBuffer); + pSt_IDInfo->nBirthDay = _ttxoi(tszTmpBuffer); nPos += 2; //提取派出所编码 memset(tszTmpBuffer, '\0', sizeof(tszTmpBuffer)); memcpy(tszTmpBuffer, lpszMsgBuffer + nPos, 2); - pSt_IDInfo->nPoliceID = _ttoi(tszTmpBuffer); + pSt_IDInfo->nPoliceID = _ttxoi(tszTmpBuffer); nPos += 2; //提取性别 memset(tszTmpBuffer, '\0', sizeof(tszTmpBuffer)); memcpy(tszTmpBuffer, lpszMsgBuffer + nPos, 1); - pSt_IDInfo->nSex = _ttoi(tszTmpBuffer); + pSt_IDInfo->nSex = _ttxoi(tszTmpBuffer); nPos += 1; //提取校验码 memset(tszTmpBuffer, '\0', sizeof(tszTmpBuffer)); memcpy(tszTmpBuffer, lpszMsgBuffer + nPos, 1); - pSt_IDInfo->nCheck = _ttoi(tszTmpBuffer); + pSt_IDInfo->nCheck = _ttxoi(tszTmpBuffer); nPos += 1; - return TRUE; + return true; } /******************************************************************** 函数名称:ModuleProtocol_Parse_Bank @@ -138,15 +138,15 @@ BOOL CModuleProtocol_Parse::ModuleProtocol_Parse_IDCard(LPCTSTR lpszMsgBuffer, X 意思:是否成功 备注: *********************************************************************/ -BOOL CModuleProtocol_Parse::ModuleProtocol_Parse_Bank(LPCTSTR lpszMsgBuffer, int nMsgLen, XENGINE_BANKINFO* pSt_BankInfo) +bool CModuleProtocol_Parse::ModuleProtocol_Parse_Bank(LPCXSTR lpszMsgBuffer, int nMsgLen, XENGINE_BANKINFO* pSt_BankInfo) { - ModuleProtocol_IsErrorOccur = FALSE; + ModuleProtocol_IsErrorOccur = false; if ((NULL == lpszMsgBuffer) || (0 == nMsgLen)) { - ModuleProtocol_IsErrorOccur = TRUE; + ModuleProtocol_IsErrorOccur = true; ModuleProtocol_dwErrorCode = ERROR_XENGINE_APISERVICE_MODULE_PROTOCOL_PARSE_PARAMENT; - return FALSE; + return false; } Json::Value st_JsonRoot; JSONCPP_STRING st_JsonError; @@ -155,25 +155,25 @@ BOOL CModuleProtocol_Parse::ModuleProtocol_Parse_Bank(LPCTSTR lpszMsgBuffer, int std::unique_ptr const pSt_JsonReader(st_JsonBuilder.newCharReader()); if (!pSt_JsonReader->parse(lpszMsgBuffer, lpszMsgBuffer + nMsgLen, &st_JsonRoot, &st_JsonError)) { - ModuleProtocol_IsErrorOccur = TRUE; + ModuleProtocol_IsErrorOccur = true; ModuleProtocol_dwErrorCode = ERROR_XENGINE_APISERVICE_MODULE_PROTOCOL_PARSE_JSON; - return FALSE; + return false; } //{"messages":[{"errorCodes":"CARD_BIN_NOT_MATCH","name":"cardNo"}],"validated":false,"stat":"ok","key":"62215546546546"} //{"cardType":"DC","bank":"CMB","key":"62215546546546"messages":[],"validated":true,"stat":"ok"} if (!st_JsonRoot["validated"].asBool()) { - ModuleProtocol_IsErrorOccur = TRUE; + ModuleProtocol_IsErrorOccur = true; ModuleProtocol_dwErrorCode = ERROR_XENGINE_APISERVICE_MODULE_PROTOCOL_PARSE_VALIDATE; - return FALSE; + return false; } - LPCTSTR lpszTypeDC = _T("DC"); - LPCTSTR lpszTypeCC = _T("CC"); - if (0 == _tcsncmp(lpszTypeDC, st_JsonRoot["cardType"].asCString(), _tcslen(lpszTypeDC))) + LPCXSTR lpszTypeDC = _X("DC"); + LPCXSTR lpszTypeCC = _X("CC"); + if (0 == _tcsxncmp(lpszTypeDC, st_JsonRoot["cardType"].asCString(), _tcsxlen(lpszTypeDC))) { pSt_BankInfo->enBankType = ENUM_XENGINE_APISERVICE_BANK_TYPE_DC; } - else if (0 == _tcsncmp(lpszTypeCC, st_JsonRoot["cardType"].asCString(), _tcslen(lpszTypeCC))) + else if (0 == _tcsxncmp(lpszTypeCC, st_JsonRoot["cardType"].asCString(), _tcsxlen(lpszTypeCC))) { pSt_BankInfo->enBankType = ENUM_XENGINE_APISERVICE_BANK_TYPE_CC; } @@ -181,8 +181,8 @@ BOOL CModuleProtocol_Parse::ModuleProtocol_Parse_Bank(LPCTSTR lpszMsgBuffer, int { pSt_BankInfo->enBankType = ENUM_XENGINE_APISERVICE_BANK_TYPE_BC; } - _tcscpy(pSt_BankInfo->tszBankAbridge, st_JsonRoot["bank"].asCString()); - return TRUE; + _tcsxcpy(pSt_BankInfo->tszBankAbridge, st_JsonRoot["bank"].asCString()); + return true; } /******************************************************************** 函数名称:ModuleProtocol_Parse_Translation @@ -207,15 +207,15 @@ BOOL CModuleProtocol_Parse::ModuleProtocol_Parse_Bank(LPCTSTR lpszMsgBuffer, int 意思:是否成功 备注: *********************************************************************/ -BOOL CModuleProtocol_Parse::ModuleProtocol_Parse_Translation(LPCTSTR lpszMsgBuffer, int nMsgLen, XENGINE_LANGUAGEINFO* pSt_LanguageInfo) +bool CModuleProtocol_Parse::ModuleProtocol_Parse_Translation(LPCXSTR lpszMsgBuffer, int nMsgLen, XENGINE_LANGUAGEINFO* pSt_LanguageInfo) { - ModuleProtocol_IsErrorOccur = FALSE; + ModuleProtocol_IsErrorOccur = false; if ((NULL == lpszMsgBuffer) || (0 == nMsgLen)) { - ModuleProtocol_IsErrorOccur = TRUE; + ModuleProtocol_IsErrorOccur = true; ModuleProtocol_dwErrorCode = ERROR_XENGINE_APISERVICE_MODULE_PROTOCOL_PARSE_PARAMENT; - return FALSE; + return false; } Json::Value st_JsonRoot; JSONCPP_STRING st_JsonError; @@ -224,22 +224,22 @@ BOOL CModuleProtocol_Parse::ModuleProtocol_Parse_Translation(LPCTSTR lpszMsgBuff std::unique_ptr const pSt_JsonReader(st_JsonBuilder.newCharReader()); if (!pSt_JsonReader->parse(lpszMsgBuffer, lpszMsgBuffer + nMsgLen, &st_JsonRoot, &st_JsonError)) { - ModuleProtocol_IsErrorOccur = TRUE; + ModuleProtocol_IsErrorOccur = true; ModuleProtocol_dwErrorCode = ERROR_XENGINE_APISERVICE_MODULE_PROTOCOL_PARSE_JSON; - return FALSE; + return false; } //{"type":"ZH_CN2EN","errorCode":0,"elapsedTime":1,"translateResult":[[{"src":"计算","tgt":"To calculate"}]]} if (0 != st_JsonRoot["errorCode"].asInt()) { - ModuleProtocol_IsErrorOccur = TRUE; + ModuleProtocol_IsErrorOccur = true; ModuleProtocol_dwErrorCode = ERROR_XENGINE_APISERVICE_MODULE_PROTOCOL_PARSE_VALIDATE; - return FALSE; + return false; } Json::Value st_JsonTranslation = st_JsonRoot["translateResult"]; - _tcscpy(pSt_LanguageInfo->tszSourceStr, st_JsonTranslation[0][0]["src"].asCString()); - _tcscpy(pSt_LanguageInfo->tszDestStr, st_JsonTranslation[0][0]["tgt"].asCString()); - return TRUE; + _tcsxcpy(pSt_LanguageInfo->tszSourceStr, st_JsonTranslation[0][0]["src"].asCString()); + _tcsxcpy(pSt_LanguageInfo->tszDestStr, st_JsonTranslation[0][0]["tgt"].asCString()); + return true; } /******************************************************************** 函数名称:ModuleProtocol_Parse_P2PClient @@ -264,15 +264,15 @@ BOOL CModuleProtocol_Parse::ModuleProtocol_Parse_Translation(LPCTSTR lpszMsgBuff 意思:是否成功 备注: *********************************************************************/ -BOOL CModuleProtocol_Parse::ModuleProtocol_Parse_P2PClient(LPCTSTR lpszMsgBuffer, int nMsgLen, XENGINE_P2XPPEER_PROTOCOL* pSt_P2XPPeer) +bool CModuleProtocol_Parse::ModuleProtocol_Parse_P2PClient(LPCXSTR lpszMsgBuffer, int nMsgLen, XENGINE_P2XPPEER_PROTOCOL* pSt_P2XPPeer) { - ModuleProtocol_IsErrorOccur = FALSE; + ModuleProtocol_IsErrorOccur = false; if ((NULL == lpszMsgBuffer) || (NULL == pSt_P2XPPeer)) { - ModuleProtocol_IsErrorOccur = TRUE; + ModuleProtocol_IsErrorOccur = true; ModuleProtocol_dwErrorCode = ERROR_XENGINE_APISERVICE_MODULE_PROTOCOL_PARSE_PARAMENT; - return FALSE; + return false; } Json::Value st_JsonRoot; Json::CharReaderBuilder st_JsonBuild; @@ -282,24 +282,24 @@ BOOL CModuleProtocol_Parse::ModuleProtocol_Parse_P2PClient(LPCTSTR lpszMsgBuffer //解析JSON if (!pSt_JsonReader->parse(lpszMsgBuffer, lpszMsgBuffer + nMsgLen, &st_JsonRoot, &st_JsonError)) { - ModuleProtocol_IsErrorOccur = TRUE; + ModuleProtocol_IsErrorOccur = true; ModuleProtocol_dwErrorCode = ERROR_XENGINE_APISERVICE_MODULE_PROTOCOL_PARSE_JSON; - return FALSE; + return false; } delete pSt_JsonReader; pSt_JsonReader = NULL; if (!st_JsonRoot["tszUserName"].isNull()) { - _tcscpy(pSt_P2XPPeer->tszUserName, st_JsonRoot["tszUserName"].asCString()); + _tcsxcpy(pSt_P2XPPeer->tszUserName, st_JsonRoot["tszUserName"].asCString()); } if (!st_JsonRoot["tszPrivateAddr"].isNull()) { - _tcscpy(pSt_P2XPPeer->tszPrivateAddr, st_JsonRoot["tszPrivateAddr"].asCString()); + _tcsxcpy(pSt_P2XPPeer->tszPrivateAddr, st_JsonRoot["tszPrivateAddr"].asCString()); } if (!st_JsonRoot["tszPublicAddr"].isNull()) { - _tcscpy(pSt_P2XPPeer->tszPublicAddr, st_JsonRoot["tszPublicAddr"].asCString()); + _tcsxcpy(pSt_P2XPPeer->tszPublicAddr, st_JsonRoot["tszPublicAddr"].asCString()); } if (!st_JsonRoot["dwConnectType"].isNull()) { @@ -309,7 +309,7 @@ BOOL CModuleProtocol_Parse::ModuleProtocol_Parse_P2PClient(LPCTSTR lpszMsgBuffer { pSt_P2XPPeer->dwPeerType = st_JsonRoot["dwPeerType"].asInt(); } - return TRUE; + return true; } /******************************************************************** 函数名称:ModuleProtocol_Parse_ZIPCode @@ -334,15 +334,15 @@ BOOL CModuleProtocol_Parse::ModuleProtocol_Parse_P2PClient(LPCTSTR lpszMsgBuffer 意思:是否成功 备注: *********************************************************************/ -BOOL CModuleProtocol_Parse::ModuleProtocol_Parse_ZIPCode(LPCTSTR lpszMsgBuffer, int nMsgLen, XENGINE_ZIPINFO* pSt_ZIPInfo) +bool CModuleProtocol_Parse::ModuleProtocol_Parse_ZIPCode(LPCXSTR lpszMsgBuffer, int nMsgLen, XENGINE_ZIPINFO* pSt_ZIPInfo) { - ModuleProtocol_IsErrorOccur = FALSE; + ModuleProtocol_IsErrorOccur = false; if ((NULL == lpszMsgBuffer) || (NULL == pSt_ZIPInfo)) { - ModuleProtocol_IsErrorOccur = TRUE; + ModuleProtocol_IsErrorOccur = true; ModuleProtocol_dwErrorCode = ERROR_XENGINE_APISERVICE_MODULE_PROTOCOL_PARSE_PARAMENT; - return FALSE; + return false; } Json::Value st_JsonRoot; JSONCPP_STRING st_JsonError; @@ -351,29 +351,29 @@ BOOL CModuleProtocol_Parse::ModuleProtocol_Parse_ZIPCode(LPCTSTR lpszMsgBuffer, std::unique_ptr const pSt_JsonReader(st_ReaderBuilder.newCharReader()); if (!pSt_JsonReader->parse(lpszMsgBuffer, lpszMsgBuffer + nMsgLen, &st_JsonRoot, &st_JsonError)) { - ModuleProtocol_IsErrorOccur = TRUE; + ModuleProtocol_IsErrorOccur = true; ModuleProtocol_dwErrorCode = ERROR_XENGINE_APISERVICE_MODULE_PROTOCOL_PARSE_PARAMENT; - return FALSE; + return false; } if (!st_JsonRoot["tszProvincer"].isNull()) { - _tcscpy(pSt_ZIPInfo->tszProvincer, st_JsonRoot["tszProvincer"].asCString()); + _tcsxcpy(pSt_ZIPInfo->tszProvincer, st_JsonRoot["tszProvincer"].asCString()); } if (!st_JsonRoot["tszCity"].isNull()) { - _tcscpy(pSt_ZIPInfo->tszCity, st_JsonRoot["tszCity"].asCString()); + _tcsxcpy(pSt_ZIPInfo->tszCity, st_JsonRoot["tszCity"].asCString()); } if (!st_JsonRoot["tszCounty"].isNull()) { - _tcscpy(pSt_ZIPInfo->tszCounty, st_JsonRoot["tszCounty"].asCString()); + _tcsxcpy(pSt_ZIPInfo->tszCounty, st_JsonRoot["tszCounty"].asCString()); } if (!st_JsonRoot["nZipCode"].isNull()) { pSt_ZIPInfo->nZipCode = st_JsonRoot["nZipCode"].asInt(); } - return TRUE; + return true; } /******************************************************************** 函数名称:ModuleProtocol_Parse_XLog @@ -398,15 +398,15 @@ BOOL CModuleProtocol_Parse::ModuleProtocol_Parse_ZIPCode(LPCTSTR lpszMsgBuffer, 意思:是否成功 备注: *********************************************************************/ -BOOL CModuleProtocol_Parse::ModuleProtocol_Parse_XLog(LPCTSTR lpszMsgBuffer, int nMsgLen, XENGINE_XLOGINFO* pSt_XLogInfo) +bool CModuleProtocol_Parse::ModuleProtocol_Parse_XLog(LPCXSTR lpszMsgBuffer, int nMsgLen, XENGINE_XLOGINFO* pSt_XLogInfo) { - ModuleProtocol_IsErrorOccur = FALSE; + ModuleProtocol_IsErrorOccur = false; if ((NULL == lpszMsgBuffer) || (NULL == pSt_XLogInfo)) { - ModuleProtocol_IsErrorOccur = TRUE; + ModuleProtocol_IsErrorOccur = true; ModuleProtocol_dwErrorCode = ERROR_XENGINE_APISERVICE_MODULE_PROTOCOL_PARSE_PARAMENT; - return FALSE; + return false; } Json::Value st_JsonRoot; JSONCPP_STRING st_JsonError; @@ -415,18 +415,18 @@ BOOL CModuleProtocol_Parse::ModuleProtocol_Parse_XLog(LPCTSTR lpszMsgBuffer, int std::unique_ptr const pSt_JsonReader(st_ReaderBuilder.newCharReader()); if (!pSt_JsonReader->parse(lpszMsgBuffer, lpszMsgBuffer + nMsgLen, &st_JsonRoot, &st_JsonError)) { - ModuleProtocol_IsErrorOccur = TRUE; + ModuleProtocol_IsErrorOccur = true; ModuleProtocol_dwErrorCode = ERROR_XENGINE_APISERVICE_MODULE_PROTOCOL_PARSE_PARAMENT; - return FALSE; + return false; } if (!st_JsonRoot["tszTableName"].isNull()) { - _tcscpy(pSt_XLogInfo->tszTableName, st_JsonRoot["tszTableName"].asCString()); + _tcsxcpy(pSt_XLogInfo->tszTableName, st_JsonRoot["tszTableName"].asCString()); } if (!st_JsonRoot["tszLogBuffer"].isNull()) { - _tcscpy(pSt_XLogInfo->tszLogBuffer, st_JsonRoot["tszLogBuffer"].asCString()); + _tcsxcpy(pSt_XLogInfo->tszLogBuffer, st_JsonRoot["tszLogBuffer"].asCString()); } if (!st_JsonRoot["nLogSize"].isNull()) { @@ -434,23 +434,23 @@ BOOL CModuleProtocol_Parse::ModuleProtocol_Parse_XLog(LPCTSTR lpszMsgBuffer, int } if (!st_JsonRoot["tszTimeStart"].isNull()) { - _tcscpy(pSt_XLogInfo->tszTimeStart, st_JsonRoot["tszTimeStart"].asCString()); + _tcsxcpy(pSt_XLogInfo->tszTimeStart, st_JsonRoot["tszTimeStart"].asCString()); } if (!st_JsonRoot["tszTimeEnd"].isNull()) { - _tcscpy(pSt_XLogInfo->tszTimeEnd, st_JsonRoot["tszTimeEnd"].asCString()); + _tcsxcpy(pSt_XLogInfo->tszTimeEnd, st_JsonRoot["tszTimeEnd"].asCString()); } if (!st_JsonRoot["tszFileName"].isNull()) { - _tcscpy(pSt_XLogInfo->st_ProtocolLog.tszFileName, st_JsonRoot["tszFileName"].asCString()); + _tcsxcpy(pSt_XLogInfo->st_ProtocolLog.tszFileName, st_JsonRoot["tszFileName"].asCString()); } if (!st_JsonRoot["tszFuncName"].isNull()) { - _tcscpy(pSt_XLogInfo->st_ProtocolLog.tszFuncName, st_JsonRoot["tszFuncName"].asCString()); + _tcsxcpy(pSt_XLogInfo->st_ProtocolLog.tszFuncName, st_JsonRoot["tszFuncName"].asCString()); } if (!st_JsonRoot["tszLogTimer"].isNull()) { - _tcscpy(pSt_XLogInfo->st_ProtocolLog.tszLogTimer, st_JsonRoot["tszLogTimer"].asCString()); + _tcsxcpy(pSt_XLogInfo->st_ProtocolLog.tszLogTimer, st_JsonRoot["tszLogTimer"].asCString()); } if (!st_JsonRoot["nLogLine"].isNull()) { @@ -460,7 +460,7 @@ BOOL CModuleProtocol_Parse::ModuleProtocol_Parse_XLog(LPCTSTR lpszMsgBuffer, int { pSt_XLogInfo->st_ProtocolLog.nLogLevel = st_JsonRoot["nLogLevel"].asInt(); } - return TRUE; + return true; } /******************************************************************** 函数名称:ModuleProtocol_Parse_QRCode @@ -485,15 +485,15 @@ BOOL CModuleProtocol_Parse::ModuleProtocol_Parse_XLog(LPCTSTR lpszMsgBuffer, int 意思:是否成功 备注: *********************************************************************/ -BOOL CModuleProtocol_Parse::ModuleProtocol_Parse_QRCode(LPCTSTR lpszMsgBuffer, int nMsgLen, XENGINE_QRCODE* pSt_QRCode) +bool CModuleProtocol_Parse::ModuleProtocol_Parse_QRCode(LPCXSTR lpszMsgBuffer, int nMsgLen, XENGINE_QRCODE* pSt_QRCode) { - ModuleProtocol_IsErrorOccur = FALSE; + ModuleProtocol_IsErrorOccur = false; if ((NULL == lpszMsgBuffer) || (NULL == pSt_QRCode)) { - ModuleProtocol_IsErrorOccur = TRUE; + ModuleProtocol_IsErrorOccur = true; ModuleProtocol_dwErrorCode = ERROR_XENGINE_APISERVICE_MODULE_PROTOCOL_PARSE_PARAMENT; - return FALSE; + return false; } Json::Value st_JsonRoot; JSONCPP_STRING st_JsonError; @@ -502,20 +502,20 @@ BOOL CModuleProtocol_Parse::ModuleProtocol_Parse_QRCode(LPCTSTR lpszMsgBuffer, i std::unique_ptr const pSt_JsonReader(st_ReaderBuilder.newCharReader()); if (!pSt_JsonReader->parse(lpszMsgBuffer, lpszMsgBuffer + nMsgLen, &st_JsonRoot, &st_JsonError)) { - ModuleProtocol_IsErrorOccur = TRUE; + ModuleProtocol_IsErrorOccur = true; ModuleProtocol_dwErrorCode = ERROR_XENGINE_APISERVICE_MODULE_PROTOCOL_PARSE_PARAMENT; - return FALSE; + return false; } if (!st_JsonRoot["tszMsgBuffer"].isNull()) { - _tcscpy(pSt_QRCode->tszMsgBuffer, st_JsonRoot["tszMsgBuffer"].asCString()); + _tcsxcpy(pSt_QRCode->tszMsgBuffer, st_JsonRoot["tszMsgBuffer"].asCString()); } if (!st_JsonRoot["tszFmtBuffer"].isNull()) { - _tcscpy(pSt_QRCode->tszFmtBuffer, st_JsonRoot["tszFmtBuffer"].asCString()); + _tcsxcpy(pSt_QRCode->tszFmtBuffer, st_JsonRoot["tszFmtBuffer"].asCString()); } - return TRUE; + return true; } /******************************************************************** 函数名称:ModuleProtocol_Parse_SocketTest @@ -540,15 +540,15 @@ BOOL CModuleProtocol_Parse::ModuleProtocol_Parse_QRCode(LPCTSTR lpszMsgBuffer, i 意思:是否成功 备注: *********************************************************************/ -BOOL CModuleProtocol_Parse::ModuleProtocol_Parse_SocketTest(LPCTSTR lpszMsgBuffer, int nMsgLen, XENGINE_SOCKETTEST* pSt_SocketTest) +bool CModuleProtocol_Parse::ModuleProtocol_Parse_SocketTest(LPCXSTR lpszMsgBuffer, int nMsgLen, XENGINE_SOCKETTEST* pSt_SocketTest) { - ModuleProtocol_IsErrorOccur = FALSE; + ModuleProtocol_IsErrorOccur = false; if ((NULL == lpszMsgBuffer) || (NULL == pSt_SocketTest)) { - ModuleProtocol_IsErrorOccur = TRUE; + ModuleProtocol_IsErrorOccur = true; ModuleProtocol_dwErrorCode = ERROR_XENGINE_APISERVICE_MODULE_PROTOCOL_PARSE_PARAMENT; - return FALSE; + return false; } Json::Value st_JsonRoot; JSONCPP_STRING st_JsonError; @@ -557,14 +557,14 @@ BOOL CModuleProtocol_Parse::ModuleProtocol_Parse_SocketTest(LPCTSTR lpszMsgBuffe std::unique_ptr const pSt_JsonReader(st_ReaderBuilder.newCharReader()); if (!pSt_JsonReader->parse(lpszMsgBuffer, lpszMsgBuffer + nMsgLen, &st_JsonRoot, &st_JsonError)) { - ModuleProtocol_IsErrorOccur = TRUE; + ModuleProtocol_IsErrorOccur = true; ModuleProtocol_dwErrorCode = ERROR_XENGINE_APISERVICE_MODULE_PROTOCOL_PARSE_PARAMENT; - return FALSE; + return false; } if (!st_JsonRoot["tszAPIUrl"].isNull()) { - _tcscpy(pSt_SocketTest->tszAPIUrl, st_JsonRoot["tszAPIUrl"].asCString()); + _tcsxcpy(pSt_SocketTest->tszAPIUrl, st_JsonRoot["tszAPIUrl"].asCString()); } if (!st_JsonRoot["xhToken"].isNull()) { @@ -581,7 +581,7 @@ BOOL CModuleProtocol_Parse::ModuleProtocol_Parse_SocketTest(LPCTSTR lpszMsgBuffe //链接 if (!st_JsonRoot["tszAddr"].isNull()) { - _tcscpy(pSt_SocketTest->st_SocketConn.tszAddr, st_JsonRoot["tszAddr"].asCString()); + _tcsxcpy(pSt_SocketTest->st_SocketConn.tszAddr, st_JsonRoot["tszAddr"].asCString()); } if (!st_JsonRoot["nPort"].isNull()) { @@ -606,11 +606,11 @@ BOOL CModuleProtocol_Parse::ModuleProtocol_Parse_SocketTest(LPCTSTR lpszMsgBuffe //数据 if (!st_JsonRoot["tszSDBuffer"].isNull()) { - _tcscpy(pSt_SocketTest->st_SocketData.tszSDBuffer, st_JsonRoot["tszSDBuffer"].asCString()); + _tcsxcpy(pSt_SocketTest->st_SocketData.tszSDBuffer, st_JsonRoot["tszSDBuffer"].asCString()); } if (!st_JsonRoot["tszRVBuffer"].isNull()) { - _tcscpy(pSt_SocketTest->st_SocketData.tszRVBuffer, st_JsonRoot["tszRVBuffer"].asCString()); + _tcsxcpy(pSt_SocketTest->st_SocketData.tszRVBuffer, st_JsonRoot["tszRVBuffer"].asCString()); } if (!st_JsonRoot["nRVLen"].isNull()) { @@ -620,5 +620,80 @@ BOOL CModuleProtocol_Parse::ModuleProtocol_Parse_SocketTest(LPCTSTR lpszMsgBuffe { pSt_SocketTest->st_SocketData.nSDLen = st_JsonRoot["nSDLen"].asInt(); } - return TRUE; + return true; +} +/******************************************************************** +函数名称:ModuleProtocol_Parse_ShortLink +函数功能:短连接协议解析 + 参数.一:lpszMsgBuffer + In/Out:In + 类型:常量字符指针 + 可空:N + 意思:输入要解析的数据 + 参数.二:nMsgLen + In/Out:In + 类型:整数型 + 可空:N + 意思:pSt_SocketTest + 参数.三:pSt_ShortLink + In/Out:Out + 类型:数据结构指针 + 可空:N + 意思:输出解析好的信息 +返回值 + 类型:逻辑型 + 意思:是否成功 +备注: +*********************************************************************/ +bool CModuleProtocol_Parse::ModuleProtocol_Parse_ShortLink(LPCXSTR lpszMsgBuffer, int nMsgLen, XENGINE_SHORTLINK* pSt_ShortLink) +{ + ModuleProtocol_IsErrorOccur = false; + + if ((NULL == lpszMsgBuffer) || (NULL == pSt_ShortLink)) + { + ModuleProtocol_IsErrorOccur = true; + ModuleProtocol_dwErrorCode = ERROR_XENGINE_APISERVICE_MODULE_PROTOCOL_PARSE_PARAMENT; + return false; + } + Json::Value st_JsonRoot; + JSONCPP_STRING st_JsonError; + Json::CharReaderBuilder st_ReaderBuilder; + //解析JSON + std::unique_ptr const pSt_JsonReader(st_ReaderBuilder.newCharReader()); + if (!pSt_JsonReader->parse(lpszMsgBuffer, lpszMsgBuffer + nMsgLen, &st_JsonRoot, &st_JsonError)) + { + ModuleProtocol_IsErrorOccur = true; + ModuleProtocol_dwErrorCode = ERROR_XENGINE_APISERVICE_MODULE_PROTOCOL_PARSE_PARAMENT; + return false; + } + + if (!st_JsonRoot["tszFullUrl"].isNull()) + { + _tcsxcpy(pSt_ShortLink->tszFullUrl, st_JsonRoot["tszFullUrl"].asCString()); + } + if (!st_JsonRoot["tszShotUrl"].isNull()) + { + _tcsxcpy(pSt_ShortLink->tszShotUrl, st_JsonRoot["tszShotUrl"].asCString()); + } + if (!st_JsonRoot["tszKeyUrl"].isNull()) + { + _tcsxcpy(pSt_ShortLink->tszKeyUrl, st_JsonRoot["tszKeyUrl"].asCString()); + } + if (!st_JsonRoot["tszMapUrl"].isNull()) + { + _tcsxcpy(pSt_ShortLink->tszMapUrl, st_JsonRoot["tszMapUrl"].asCString()); + } + if (!st_JsonRoot["tszCvtUrl"].isNull()) + { + _tcsxcpy(pSt_ShortLink->tszCvtUrl, st_JsonRoot["tszCvtUrl"].asCString()); + } + if (!st_JsonRoot["tszCreateTime"].isNull()) + { + _tcsxcpy(pSt_ShortLink->tszCreateTime, st_JsonRoot["tszCreateTime"].asCString()); + } + if (!st_JsonRoot["nLength"].isNull()) + { + pSt_ShortLink->nLength = st_JsonRoot["nLength"].asInt(); + } + return true; } \ No newline at end of file diff --git a/XEngine_Source/XEngine_ModuleProtocol/ModuleProtocol_Parse/ModuleProtocol_Parse.h b/XEngine_Source/XEngine_ModuleProtocol/ModuleProtocol_Parse/ModuleProtocol_Parse.h index 2637b42b76a2575158cfe5e77ebe0fa0b20f947c..eb0168c2755a63223bc1750da9801727edb4b6ac 100644 --- a/XEngine_Source/XEngine_ModuleProtocol/ModuleProtocol_Parse/ModuleProtocol_Parse.h +++ b/XEngine_Source/XEngine_ModuleProtocol/ModuleProtocol_Parse/ModuleProtocol_Parse.h @@ -18,13 +18,14 @@ public: CModuleProtocol_Parse(); ~CModuleProtocol_Parse(); public: - BOOL ModuleProtocol_Parse_IDCard(LPCTSTR lpszMsgBuffer, XENGINE_IDCARDINFO* pSt_IDInfo); - BOOL ModuleProtocol_Parse_Bank(LPCTSTR lpszMsgBuffer, int nMsgLen, XENGINE_BANKINFO* pSt_BankInfo); - BOOL ModuleProtocol_Parse_Translation(LPCTSTR lpszMsgBuffer, int nMsgLen, XENGINE_LANGUAGEINFO* pSt_LanguageInfo); - BOOL ModuleProtocol_Parse_P2PClient(LPCTSTR lpszMsgBuffer, int nMsgLen, XENGINE_P2XPPEER_PROTOCOL* pSt_P2XPPeer); - BOOL ModuleProtocol_Parse_ZIPCode(LPCTSTR lpszMsgBuffer, int nMsgLen, XENGINE_ZIPINFO* pSt_ZIPInfo); - BOOL ModuleProtocol_Parse_XLog(LPCTSTR lpszMsgBuffer, int nMsgLen, XENGINE_XLOGINFO* pSt_XLogInfo); - BOOL ModuleProtocol_Parse_QRCode(LPCTSTR lpszMsgBuffer, int nMsgLen, XENGINE_QRCODE* pSt_QRCode); - BOOL ModuleProtocol_Parse_SocketTest(LPCTSTR lpszMsgBuffer, int nMsgLen, XENGINE_SOCKETTEST* pSt_SocketTest); + bool ModuleProtocol_Parse_IDCard(LPCXSTR lpszMsgBuffer, XENGINE_IDCARDINFO* pSt_IDInfo); + bool ModuleProtocol_Parse_Bank(LPCXSTR lpszMsgBuffer, int nMsgLen, XENGINE_BANKINFO* pSt_BankInfo); + bool ModuleProtocol_Parse_Translation(LPCXSTR lpszMsgBuffer, int nMsgLen, XENGINE_LANGUAGEINFO* pSt_LanguageInfo); + bool ModuleProtocol_Parse_P2PClient(LPCXSTR lpszMsgBuffer, int nMsgLen, XENGINE_P2XPPEER_PROTOCOL* pSt_P2XPPeer); + bool ModuleProtocol_Parse_ZIPCode(LPCXSTR lpszMsgBuffer, int nMsgLen, XENGINE_ZIPINFO* pSt_ZIPInfo); + bool ModuleProtocol_Parse_XLog(LPCXSTR lpszMsgBuffer, int nMsgLen, XENGINE_XLOGINFO* pSt_XLogInfo); + bool ModuleProtocol_Parse_QRCode(LPCXSTR lpszMsgBuffer, int nMsgLen, XENGINE_QRCODE* pSt_QRCode); + bool ModuleProtocol_Parse_SocketTest(LPCXSTR lpszMsgBuffer, int nMsgLen, XENGINE_SOCKETTEST* pSt_SocketTest); + bool ModuleProtocol_Parse_ShortLink(LPCXSTR lpszMsgBuffer, int nMsgLen, XENGINE_SHORTLINK* pSt_ShortLink); private: }; \ No newline at end of file diff --git a/XEngine_Source/XEngine_ModuleProtocol/XEngine_ModuleProtocol.def b/XEngine_Source/XEngine_ModuleProtocol/XEngine_ModuleProtocol.def index c7f4517b231955a43771a617b65d402377d91c2f..cfd70936039a58a8753b1e9c52bc9e69f588cdff 100644 --- a/XEngine_Source/XEngine_ModuleProtocol/XEngine_ModuleProtocol.def +++ b/XEngine_Source/XEngine_ModuleProtocol/XEngine_ModuleProtocol.def @@ -12,6 +12,7 @@ EXPORTS ModuleProtocol_Packet_Log ModuleProtocol_Packet_TestReport ModuleProtocol_Packet_TestReply + ModuleProtocol_Packet_ShortLink ModuleProtocol_Packet_P2PLan ModuleProtocol_Packet_P2PWLan ModuleProtocol_Packet_P2PUser @@ -24,4 +25,5 @@ EXPORTS ModuleProtocol_Parse_ZIPCode ModuleProtocol_Parse_XLog ModuleProtocol_Parse_QRCode - ModuleProtocol_Parse_SocketTest \ No newline at end of file + ModuleProtocol_Parse_SocketTest + ModuleProtocol_Parse_ShortLink \ No newline at end of file diff --git a/XEngine_Source/XEngine_ModuleProtocol/XEngine_ModuleProtocol.vcxproj b/XEngine_Source/XEngine_ModuleProtocol/XEngine_ModuleProtocol.vcxproj index d4c5a308e27d7d7a55db0020add206f531f748e6..5fb7e2f65c83a15dbebe53dcb11c60908051862e 100644 --- a/XEngine_Source/XEngine_ModuleProtocol/XEngine_ModuleProtocol.vcxproj +++ b/XEngine_Source/XEngine_ModuleProtocol/XEngine_ModuleProtocol.vcxproj @@ -30,27 +30,27 @@ DynamicLibrary true v143 - MultiByte + Unicode DynamicLibrary false v143 true - MultiByte + Unicode DynamicLibrary true v143 - MultiByte + Unicode DynamicLibrary false v143 true - MultiByte + Unicode diff --git a/XEngine_Source/XEngine_ModuleProtocol/dllmain.cpp b/XEngine_Source/XEngine_ModuleProtocol/dllmain.cpp index daed8c8f7ac50ca1466016a0529648d18125a7e7..594ff2123d474b129bb2014fb572f03c9741bf0b 100644 --- a/XEngine_Source/XEngine_ModuleProtocol/dllmain.cpp +++ b/XEngine_Source/XEngine_ModuleProtocol/dllmain.cpp @@ -1,9 +1,9 @@ // dllmain.cpp : 定义 DLL 应用程序的入口点。 #include "pch.h" -BOOL APIENTRY DllMain( HMODULE hModule, - DWORD ul_reason_for_call, - LPVOID lpReserved +bool APIENTRY DllMain( HMODULE hModule, + XLONG ul_reason_for_call, + XPVOID lpReserved ) { switch (ul_reason_for_call) @@ -14,6 +14,6 @@ BOOL APIENTRY DllMain( HMODULE hModule, case DLL_PROCESS_DETACH: break; } - return TRUE; + return true; } diff --git a/XEngine_Source/XEngine_ModuleProtocol/pch.cpp b/XEngine_Source/XEngine_ModuleProtocol/pch.cpp index 9ee47f53229789b8ec914301155118d22bb3b843..76d520422bb830767f2f107dc426d4fbcd390cda 100644 --- a/XEngine_Source/XEngine_ModuleProtocol/pch.cpp +++ b/XEngine_Source/XEngine_ModuleProtocol/pch.cpp @@ -12,15 +12,15 @@ // Purpose: 导出协议模块实现 // History: *********************************************************************/ -BOOL ModuleProtocol_IsErrorOccur = FALSE; -DWORD ModuleProtocol_dwErrorCode = 0; +bool ModuleProtocol_IsErrorOccur = false; +XLONG ModuleProtocol_dwErrorCode = 0; ////////////////////////////////////////////////////////////////////////// CModuleProtocol_Packet m_ProtocolPacket; CModuleProtocol_Parse m_ProtocolParse; ////////////////////////////////////////////////////////////////////////// /// 导出的函数 ////////////////////////////////////////////////////////////////////////// -extern "C" DWORD ModuleProtocol_GetLastError(int* pInt_SysError) +extern "C" XLONG ModuleProtocol_GetLastError(int* pInt_SysError) { if (NULL != pInt_SysError) { @@ -31,90 +31,98 @@ extern "C" DWORD ModuleProtocol_GetLastError(int* pInt_SysError) /************************************************************************/ /* 导出的协议打包函数 */ /************************************************************************/ -extern "C" BOOL ModuleProtocol_Packet_Common(TCHAR * ptszMsgBuffer, int* pInt_MsgLen, int nCode, LPCTSTR lpszMsgBuffer) +extern "C" bool ModuleProtocol_Packet_Common(XCHAR * ptszMsgBuffer, int* pInt_MsgLen, int nCode, LPCXSTR lpszMsgBuffer) { return m_ProtocolPacket.ModuleProtocol_Packet_Common(ptszMsgBuffer, pInt_MsgLen, nCode, lpszMsgBuffer); } -extern "C" BOOL ModuleProtocol_Packet_IDQuery(TCHAR * ptszMsgBuffer, int* pInt_MsgLen, XENGINE_IDCARDINFO * pSt_IDInfo, XENGINE_IDREGION * pSt_IDRegion, int nCode, LPCTSTR lpszMsgBuffer) +extern "C" bool ModuleProtocol_Packet_IDQuery(XCHAR * ptszMsgBuffer, int* pInt_MsgLen, XENGINE_IDCARDINFO * pSt_IDInfo, XENGINE_IDREGION * pSt_IDRegion, int nCode, LPCXSTR lpszMsgBuffer) { return m_ProtocolPacket.ModuleProtocol_Packet_IDQuery(ptszMsgBuffer, pInt_MsgLen, pSt_IDInfo, pSt_IDRegion, nCode, lpszMsgBuffer); } -extern "C" BOOL ModuleProtocol_Packet_BankQuery(TCHAR * ptszMsgBuffer, int* pInt_MsgLen, XENGINE_BANKINFO * pSt_BankInfo, int nCode, LPCTSTR lpszMsgBuffer) +extern "C" bool ModuleProtocol_Packet_BankQuery(XCHAR * ptszMsgBuffer, int* pInt_MsgLen, XENGINE_BANKINFO * pSt_BankInfo, int nCode, LPCXSTR lpszMsgBuffer) { return m_ProtocolPacket.ModuleProtocol_Packet_BankQuery(ptszMsgBuffer, pInt_MsgLen, pSt_BankInfo, nCode, lpszMsgBuffer); } -extern "C" BOOL ModuleProtocol_Packet_LanguageQuery(TCHAR * ptszMsgBuffer, int* pInt_MsgLen, XENGINE_LANGUAGEINFO * pSt_LanguageInfo, int nCode, LPCTSTR lpszMsgBuffer) +extern "C" bool ModuleProtocol_Packet_LanguageQuery(XCHAR * ptszMsgBuffer, int* pInt_MsgLen, XENGINE_LANGUAGEINFO * pSt_LanguageInfo, int nCode, LPCXSTR lpszMsgBuffer) { return m_ProtocolPacket.ModuleProtocol_Packet_LanguageQuery(ptszMsgBuffer, pInt_MsgLen, pSt_LanguageInfo, nCode, lpszMsgBuffer); } -extern "C" BOOL ModuleProtocol_Packet_Locker(TCHAR * ptszMsgBuffer, int* pInt_MsgLen, XNETHANDLE xhToken, int nCode, LPCTSTR lpszMsgBuffer) +extern "C" bool ModuleProtocol_Packet_Locker(XCHAR * ptszMsgBuffer, int* pInt_MsgLen, XNETHANDLE xhToken, int nCode, LPCXSTR lpszMsgBuffer) { return m_ProtocolPacket.ModuleProtocol_Packet_Locker(ptszMsgBuffer, pInt_MsgLen, xhToken, nCode, lpszMsgBuffer); } -extern "C" BOOL ModuleProtocol_Packet_ZIPCode(TCHAR * ptszMsgBuffer, int* pInt_MsgLen, XENGINE_ZIPINFO * pSt_ZIPInfo, int nCode, LPCTSTR lpszMsgBuffer) +extern "C" bool ModuleProtocol_Packet_ZIPCode(XCHAR * ptszMsgBuffer, int* pInt_MsgLen, XENGINE_ZIPINFO * pSt_ZIPInfo, int nCode, LPCXSTR lpszMsgBuffer) { return m_ProtocolPacket.ModuleProtocol_Packet_ZIPCode(ptszMsgBuffer, pInt_MsgLen, pSt_ZIPInfo, nCode, lpszMsgBuffer); } -extern "C" BOOL ModuleProtocol_Packet_Log(TCHAR * ptszMsgBuffer, int* pInt_MsgLen, XENGINE_XLOGINFO * **pppSt_XLogList, int nListCount) +extern "C" bool ModuleProtocol_Packet_Log(XCHAR * ptszMsgBuffer, int* pInt_MsgLen, XENGINE_XLOGINFO * **pppSt_XLogList, int nListCount) { return m_ProtocolPacket.ModuleProtocol_Packet_Log(ptszMsgBuffer, pInt_MsgLen, pppSt_XLogList, nListCount); } -extern "C" BOOL ModuleProtocol_Packet_TestReport(TCHAR * ptszMsgBuffer, int* pInt_MsgLen, XNETHANDLE xhToken, LPCTSTR lpszIPAddr, int nIPPort, __int64x nNumber, __int64x nFailed, __int64x nSuccess, int nStatus) +extern "C" bool ModuleProtocol_Packet_TestReport(XCHAR * ptszMsgBuffer, int* pInt_MsgLen, XNETHANDLE xhToken, LPCXSTR lpszIPAddr, int nIPPort, __int64x nNumber, __int64x nFailed, __int64x nSuccess, int nStatus) { return m_ProtocolPacket.ModuleProtocol_Packet_TestReport(ptszMsgBuffer, pInt_MsgLen, xhToken, lpszIPAddr, nIPPort, nNumber, nFailed, nSuccess, nStatus); } -extern "C" BOOL ModuleProtocol_Packet_TestReply(TCHAR * ptszMsgBuffer, int* pInt_MsgLen, XNETHANDLE xhToken) +extern "C" bool ModuleProtocol_Packet_TestReply(XCHAR * ptszMsgBuffer, int* pInt_MsgLen, XNETHANDLE xhToken) { return m_ProtocolPacket.ModuleProtocol_Packet_TestReply(ptszMsgBuffer, pInt_MsgLen, xhToken); } -extern "C" BOOL ModuleProtocol_Packet_P2PLan(TCHAR * ptszMsgBuffer, int* pInt_MsgLen, XENGINE_P2XPPEER_PROTOCOL * **pppSt_ListClients, int nListCount) +extern "C" bool ModuleProtocol_Packet_ShortLink(XCHAR * ptszMsgBuffer, int* pInt_MsgLen, XENGINE_SHORTLINK * pSt_ShortLink) +{ + return m_ProtocolPacket.ModuleProtocol_Packet_ShortLink(ptszMsgBuffer, pInt_MsgLen, pSt_ShortLink); +} +extern "C" bool ModuleProtocol_Packet_P2PLan(XCHAR * ptszMsgBuffer, int* pInt_MsgLen, XENGINE_P2XPPEER_PROTOCOL * **pppSt_ListClients, int nListCount) { return m_ProtocolPacket.ModuleProtocol_Packet_P2PLan(ptszMsgBuffer, pInt_MsgLen, pppSt_ListClients, nListCount); } -extern "C" BOOL ModuleProtocol_Packet_P2PWLan(TCHAR * ptszMsgBuffer, int* pInt_MsgLen, list*pStl_ListClients) +extern "C" bool ModuleProtocol_Packet_P2PWLan(XCHAR * ptszMsgBuffer, int* pInt_MsgLen, list*pStl_ListClients) { return m_ProtocolPacket.ModuleProtocol_Packet_P2PWLan(ptszMsgBuffer, pInt_MsgLen, pStl_ListClients); } -extern "C" BOOL ModuleProtocol_Packet_P2PUser(TCHAR * ptszMsgBuffer, int* pInt_MsgLen, XENGINE_P2XPPEER_PROTOCOL * pSt_PeerInfo) +extern "C" bool ModuleProtocol_Packet_P2PUser(XCHAR * ptszMsgBuffer, int* pInt_MsgLen, XENGINE_P2XPPEER_PROTOCOL * pSt_PeerInfo) { return m_ProtocolPacket.ModuleProtocol_Packet_P2PUser(ptszMsgBuffer, pInt_MsgLen, pSt_PeerInfo); } -extern "C" BOOL ModuleProtocol_Packet_P2PConnect(TCHAR * ptszMsgBuffer, int* pInt_MsgLen, XENGINE_P2XPIO_PROTOCOL * pSt_IOProtocol) +extern "C" bool ModuleProtocol_Packet_P2PConnect(XCHAR * ptszMsgBuffer, int* pInt_MsgLen, XENGINE_P2XPIO_PROTOCOL * pSt_IOProtocol) { return m_ProtocolPacket.ModuleProtocol_Packet_P2PConnect(ptszMsgBuffer, pInt_MsgLen, pSt_IOProtocol); } /************************************************************************/ /* 导出的协议解析函数 */ /************************************************************************/ -extern "C" BOOL ModuleProtocol_Parse_IDCard(LPCTSTR lpszMsgBuffer, XENGINE_IDCARDINFO * pSt_IDInfo) +extern "C" bool ModuleProtocol_Parse_IDCard(LPCXSTR lpszMsgBuffer, XENGINE_IDCARDINFO * pSt_IDInfo) { return m_ProtocolParse.ModuleProtocol_Parse_IDCard(lpszMsgBuffer, pSt_IDInfo); } -extern "C" BOOL ModuleProtocol_Parse_Bank(LPCTSTR lpszMsgBuffer, int nMsgLen, XENGINE_BANKINFO * pSt_BankInfo) +extern "C" bool ModuleProtocol_Parse_Bank(LPCXSTR lpszMsgBuffer, int nMsgLen, XENGINE_BANKINFO * pSt_BankInfo) { return m_ProtocolParse.ModuleProtocol_Parse_Bank(lpszMsgBuffer, nMsgLen, pSt_BankInfo); } -extern "C" BOOL ModuleProtocol_Parse_Translation(LPCTSTR lpszMsgBuffer, int nMsgLen, XENGINE_LANGUAGEINFO * pSt_LanguageInfo) +extern "C" bool ModuleProtocol_Parse_Translation(LPCXSTR lpszMsgBuffer, int nMsgLen, XENGINE_LANGUAGEINFO * pSt_LanguageInfo) { return m_ProtocolParse.ModuleProtocol_Parse_Translation(lpszMsgBuffer, nMsgLen, pSt_LanguageInfo); } -extern "C" BOOL ModuleProtocol_Parse_P2PClient(LPCTSTR lpszMsgBuffer, int nMsgLen, XENGINE_P2XPPEER_PROTOCOL * pSt_P2XPPeer) +extern "C" bool ModuleProtocol_Parse_P2PClient(LPCXSTR lpszMsgBuffer, int nMsgLen, XENGINE_P2XPPEER_PROTOCOL * pSt_P2XPPeer) { return m_ProtocolParse.ModuleProtocol_Parse_P2PClient(lpszMsgBuffer, nMsgLen, pSt_P2XPPeer); } -extern "C" BOOL ModuleProtocol_Parse_ZIPCode(LPCTSTR lpszMsgBuffer, int nMsgLen, XENGINE_ZIPINFO * pSt_ZIPInfo) +extern "C" bool ModuleProtocol_Parse_ZIPCode(LPCXSTR lpszMsgBuffer, int nMsgLen, XENGINE_ZIPINFO * pSt_ZIPInfo) { return m_ProtocolParse.ModuleProtocol_Parse_ZIPCode(lpszMsgBuffer, nMsgLen, pSt_ZIPInfo); } -extern "C" BOOL ModuleProtocol_Parse_XLog(LPCTSTR lpszMsgBuffer, int nMsgLen, XENGINE_XLOGINFO * pSt_XLogInfo) +extern "C" bool ModuleProtocol_Parse_XLog(LPCXSTR lpszMsgBuffer, int nMsgLen, XENGINE_XLOGINFO * pSt_XLogInfo) { return m_ProtocolParse.ModuleProtocol_Parse_XLog(lpszMsgBuffer, nMsgLen, pSt_XLogInfo); } -extern "C" BOOL ModuleProtocol_Parse_QRCode(LPCTSTR lpszMsgBuffer, int nMsgLen, XENGINE_QRCODE * pSt_QRCode) +extern "C" bool ModuleProtocol_Parse_QRCode(LPCXSTR lpszMsgBuffer, int nMsgLen, XENGINE_QRCODE * pSt_QRCode) { return m_ProtocolParse.ModuleProtocol_Parse_QRCode(lpszMsgBuffer, nMsgLen, pSt_QRCode); } -extern "C" BOOL ModuleProtocol_Parse_SocketTest(LPCTSTR lpszMsgBuffer, int nMsgLen, XENGINE_SOCKETTEST * pSt_SocketTest) +extern "C" bool ModuleProtocol_Parse_SocketTest(LPCXSTR lpszMsgBuffer, int nMsgLen, XENGINE_SOCKETTEST * pSt_SocketTest) { return m_ProtocolParse.ModuleProtocol_Parse_SocketTest(lpszMsgBuffer, nMsgLen, pSt_SocketTest); +} +extern "C" bool ModuleProtocol_Parse_ShortLink(LPCXSTR lpszMsgBuffer, int nMsgLen, XENGINE_SHORTLINK * pSt_ShortLink) +{ + return m_ProtocolParse.ModuleProtocol_Parse_ShortLink(lpszMsgBuffer, nMsgLen, pSt_ShortLink); } \ No newline at end of file diff --git a/XEngine_Source/XEngine_ModuleProtocol/pch.h b/XEngine_Source/XEngine_ModuleProtocol/pch.h index faf8f1c4ac17b1b509059eeaf861c79c0dae3aa1..1b2a293015cbfbfab58142f5a99c7a44eb5a2565 100644 --- a/XEngine_Source/XEngine_ModuleProtocol/pch.h +++ b/XEngine_Source/XEngine_ModuleProtocol/pch.h @@ -38,8 +38,8 @@ using namespace std; // Purpose: 公用头文件 // History: *********************************************************************/ -extern BOOL ModuleProtocol_IsErrorOccur; -extern DWORD ModuleProtocol_dwErrorCode; +extern bool ModuleProtocol_IsErrorOccur; +extern XLONG ModuleProtocol_dwErrorCode; #ifdef _MSC_BUILD #pragma comment(lib,"XEngine_BaseLib/XEngine_BaseLib") diff --git a/XEngine_Source/XEngine_PluginModule/ModulePlugin_BMIndex/BMIndex_Define.h b/XEngine_Source/XEngine_PluginModule/ModulePlugin_BMIndex/BMIndex_Define.h index df53fddf7f2247b3eedcd4ba1a8aab9dcc539851..bf604200089d15ba14d7463f7fb7935504b03f83 100644 --- a/XEngine_Source/XEngine_PluginModule/ModulePlugin_BMIndex/BMIndex_Define.h +++ b/XEngine_Source/XEngine_PluginModule/ModulePlugin_BMIndex/BMIndex_Define.h @@ -13,7 +13,7 @@ ////////////////////////////////////////////////////////////////////////// // 导出函数定义 ////////////////////////////////////////////////////////////////////////// -extern "C" DWORD PluginCore_GetLastError(); +extern "C" XLONG PluginCore_GetLastError(); /********************************************************************************* * 导出函数定义 * *********************************************************************************/ @@ -30,7 +30,7 @@ extern "C" DWORD PluginCore_GetLastError(); 意思:是否成功 备注: *********************************************************************/ -extern "C" BOOL PluginCore_Init(LPVOID lParam = NULL); +extern "C" bool PluginCore_Init(XPVOID lParam = NULL); /******************************************************************** 函数名称:PluginCore_UnInit 函数功能:卸载插件 @@ -48,4 +48,4 @@ extern "C" void PluginCore_UnInit(); 意思:是否成功 备注: *********************************************************************/ -extern "C" BOOL PluginCore_Call(TCHAR * **pppHDRList, int nListCount, int* pInt_HTTPCode, TCHAR * ptszMsgBuffer, int* pInt_MsgLen, LPCTSTR lpszMsgBuffer = NULL, int nMsgLen = 0); \ No newline at end of file +extern "C" bool PluginCore_Call(XCHAR * **pppHDRList, int nListCount, int* pInt_HTTPCode, XCHAR * ptszMsgBuffer, int* pInt_MsgLen, LPCXSTR lpszMsgBuffer = NULL, int nMsgLen = 0); \ No newline at end of file diff --git a/XEngine_Source/XEngine_PluginModule/ModulePlugin_BMIndex/Makefile b/XEngine_Source/XEngine_PluginModule/ModulePlugin_BMIndex/Makefile index 2c7af323b2869023be32efda5565e4e47a809327..a6904fae251f01327e4e77f69264ebc2fba379d7 100644 --- a/XEngine_Source/XEngine_PluginModule/ModulePlugin_BMIndex/Makefile +++ b/XEngine_Source/XEngine_PluginModule/ModulePlugin_BMIndex/Makefile @@ -1,30 +1,23 @@ CC = g++ -Wall -std=c++17 -fPIC -SHAREFLAG = -shared -SHAREDLL = so +PLATFORM = linux +PLATVER = +PLATDIR = +FILEEXT = +LIBFLAG = RELEASE = 0 UNICODE = 0 -INCLUDE = -I ./ -I ../../XEngine_ThirdPart/jsoncpp -LOADBIN = -L /usr/local/lib/XEngine_Release/XEngine_BaseLib -L ../../XEngine_ThirdPart/jsoncpp +LOADHDR = -I ./ -I ../../XEngine_ThirdPart/jsoncpp +LOADSO = -L /usr/local/lib/XEngine_Release/XEngine_BaseLib -L ../../XEngine_ThirdPart/jsoncpp LIB = -lXEngine_BaseLib -ljsoncpp -LIBEX = -ldl -lpthread -LOADSO = -Wl,-rpath=../,--disable-new-dtags -LIBINCLUDE = Plugin_BMIndex.o pch.o - -ifeq ($(shell uname),Darwin) - SHAREDLL = dylib - SHAREFLAG = -dynamiclib - LOADSO = -else - SHAREDLL = so - SHAREFLAG = -shared -endif +LIBEX = +OBJECTS = Plugin_BMIndex.o pch.o ifeq ($(RELEASE),1) -FLAGS = -c -O2 +FLAGS = -c DEBUG = else -FLAGS = -c -DEBUG = -g +FLAGS = -c -lc_p +DEBUG = -g -pg endif ifeq ($(UNICODE),1) @@ -33,23 +26,45 @@ else UNICODE = endif +ifeq ($(PLATFORM),linux) + ifeq (/etc/redhat-release,$(wildcard /etc/redhat-release)) + PLATVER = -D __CENTOS__ + PLATDIR = XEngine_Linux/Centos + else + PLATVER = -D __UBUNTU__ + PLATDIR = XEngine_Linux/Ubuntu + endif + FILEEXT = so + LIBFLAG = -shared + LIBEX = -lpthread -lrt -ldl + LOADBIN = -Wl,-rpath=./,--disable-new-dtags +else ifeq ($(PLATFORM),mac) + CC += -Wno-deprecated-declarations + PLATVER = -D __MACOS__ + PLATDIR = XEngine_Mac + FILEEXT = dylib + LIBFLAG = -dynamiclib + LIBEX = -lpthread -ldl + LOADBIN = -Wl,-rpath,@loader_path/./ +endif + -all:$(LIBINCLUDE) - $(CC) $(DEBUG) $(LIBINCLUDE) -o libModulePlugin_BMIndex.$(SHAREDLL) $(SHAREFLAG) -fPIC $(LOADBIN) $(LIB) $(LIBEX) $(LOADSO) +all:$(OBJECTS) + $(CC) $(DEBUG) $(OBJECTS) -o libModulePlugin_BMIndex.$(FILEEXT) $(LIBFLAG) $(LIB) $(LIBEX) $(LOADSO) $(LOADBIN) Plugin_BMIndex.o:./Plugin_BMIndex/Plugin_BMIndex.cpp - $(CC) $(DEBUG) $(FLAGS) $(UNICODE) $(INCLUDE) ./Plugin_BMIndex/Plugin_BMIndex.cpp + $(CC) $(DEBUG) $(FLAGS) $(UNICODE) $(PLATVER) $(LOADHDR) ./Plugin_BMIndex/Plugin_BMIndex.cpp pch.o:./pch.cpp - $(CC) $(DEBUG) $(FLAGS) $(UNICODE) $(INCLUDE) ./pch.cpp + $(CC) $(DEBUG) $(FLAGS) $(UNICODE) $(PLATVER) $(LOADHDR) ./pch.cpp InstallAll:InstallSo -InstallSo:./libModulePlugin_BMIndex.$(SHAREDLL) - cp ./libModulePlugin_BMIndex.$(SHAREDLL) ../../../XEngine_Release/XEngine_LibPlugin/libModulePlugin_BMIndex.$(SHAREDLL) +InstallSo:./libModulePlugin_BMIndex.$(FILEEXT) + cp ./libModulePlugin_BMIndex.$(FILEEXT) ../../../XEngine_Release/XEngine_LibPlugin/libModulePlugin_BMIndex.$(FILEEXT) CleanAll:CleanObj CleanMk CleanObj: rm *.o CleanMk: - rm *.$(SHAREDLL) \ No newline at end of file + rm *.$(FILEEXT) \ No newline at end of file diff --git a/XEngine_Source/XEngine_PluginModule/ModulePlugin_BMIndex/ModulePlugin_BMIndex.vcxproj b/XEngine_Source/XEngine_PluginModule/ModulePlugin_BMIndex/ModulePlugin_BMIndex.vcxproj index 4fa9af35e835f18f86b169784c8b6d9b0feb51ee..5a26533d3a3e318e575c4d21e9eefb1ab6ca6ba6 100644 --- a/XEngine_Source/XEngine_PluginModule/ModulePlugin_BMIndex/ModulePlugin_BMIndex.vcxproj +++ b/XEngine_Source/XEngine_PluginModule/ModulePlugin_BMIndex/ModulePlugin_BMIndex.vcxproj @@ -31,27 +31,27 @@ DynamicLibrary true v143 - MultiByte + Unicode DynamicLibrary false v143 true - MultiByte + Unicode DynamicLibrary true v143 - MultiByte + Unicode DynamicLibrary false v143 true - MultiByte + Unicode diff --git a/XEngine_Source/XEngine_PluginModule/ModulePlugin_BMIndex/Plugin_BMIndex/Plugin_BMIndex.cpp b/XEngine_Source/XEngine_PluginModule/ModulePlugin_BMIndex/Plugin_BMIndex/Plugin_BMIndex.cpp index 4c3d75a4cdee4e19c3b24ecc153341033cc3b594..53826306ece1454a98a46a638fff4daac023ab14 100644 --- a/XEngine_Source/XEngine_PluginModule/ModulePlugin_BMIndex/Plugin_BMIndex/Plugin_BMIndex.cpp +++ b/XEngine_Source/XEngine_PluginModule/ModulePlugin_BMIndex/Plugin_BMIndex/Plugin_BMIndex.cpp @@ -33,11 +33,11 @@ CPlugin_BMIndex::~CPlugin_BMIndex() 意思:是否成功 备注: *********************************************************************/ -BOOL CPlugin_BMIndex::PluginCore_Init(LPVOID lParam) +bool CPlugin_BMIndex::PluginCore_Init(XPVOID lParam) { - BMIndex_IsErrorOccur = FALSE; + BMIndex_IsErrorOccur = false; - return TRUE; + return true; } /******************************************************************** 函数名称:PluginCore_UnInit @@ -49,7 +49,7 @@ BOOL CPlugin_BMIndex::PluginCore_Init(LPVOID lParam) *********************************************************************/ void CPlugin_BMIndex::PluginCore_UnInit() { - BMIndex_IsErrorOccur = FALSE; + BMIndex_IsErrorOccur = false; } /******************************************************************** 函数名称:PluginCore_Call @@ -59,19 +59,19 @@ void CPlugin_BMIndex::PluginCore_UnInit() 意思:是否成功 备注: *********************************************************************/ -BOOL CPlugin_BMIndex::PluginCore_Call(TCHAR*** pppHDRList, int nListCount, int* pInt_HTTPCode, TCHAR* ptszMsgBuffer, int* pInt_MsgLen, LPCTSTR lpszMsgBuffer, int nMsgLen) +bool CPlugin_BMIndex::PluginCore_Call(XCHAR*** pppHDRList, int nListCount, int* pInt_HTTPCode, XCHAR* ptszMsgBuffer, int* pInt_MsgLen, LPCXSTR lpszMsgBuffer, int nMsgLen) { - BMIndex_IsErrorOccur = FALSE; + BMIndex_IsErrorOccur = false; if ((NULL == pInt_HTTPCode) || (NULL == ptszMsgBuffer) || (NULL == pInt_MsgLen)) { - BMIndex_IsErrorOccur = TRUE; + BMIndex_IsErrorOccur = true; BMIndex_dwErrorCode = ERROR_XENGINE_APISERVICE_PLUGIN_MODULE_BMINDEX_PARAMENT; - return FALSE; + return false; } - TCHAR tszKeyName[128]; - TCHAR tszParamHigh[128]; - TCHAR tszParamWeight[128]; + XCHAR tszKeyName[128]; + XCHAR tszParamHigh[128]; + XCHAR tszParamWeight[128]; memset(tszKeyName, '\0', sizeof(tszKeyName)); memset(tszParamHigh, '\0', sizeof(tszParamHigh)); @@ -82,21 +82,21 @@ BOOL CPlugin_BMIndex::PluginCore_Call(TCHAR*** pppHDRList, int nListCount, int* Plugin_Timezone_BMIndex(tszParamHigh, tszParamWeight, ptszMsgBuffer, pInt_MsgLen); *pInt_HTTPCode = 200; - return TRUE; + return true; } ////////////////////////////////////////////////////////////////////////// // 保护函数 ////////////////////////////////////////////////////////////////////////// -BOOL CPlugin_BMIndex::Plugin_Timezone_BMIndex(LPCTSTR lpszHigh, LPCTSTR lpszWeight, TCHAR* ptszMsgBufer, int* pInt_Len) +bool CPlugin_BMIndex::Plugin_Timezone_BMIndex(LPCXSTR lpszHigh, LPCXSTR lpszWeight, XCHAR* ptszMsgBufer, int* pInt_Len) { - BMIndex_IsErrorOccur = FALSE; + BMIndex_IsErrorOccur = false; Json::Value st_JsonRoot; Json::Value st_JsonObject; Json::StreamWriterBuilder st_JsonBuilder; - double dlHigh = _ttof(lpszHigh); - double dlWeight = _ttof(lpszWeight); + double dlHigh = _ttxof(lpszHigh); + double dlWeight = _ttxof(lpszWeight); double dlValue = dlWeight / (dlHigh * dlHigh); if (dlValue < 18.5) { @@ -133,5 +133,5 @@ BOOL CPlugin_BMIndex::Plugin_Timezone_BMIndex(LPCTSTR lpszHigh, LPCTSTR lpszWeig *pInt_Len = Json::writeString(st_JsonBuilder, st_JsonRoot).length(); memcpy(ptszMsgBufer, Json::writeString(st_JsonBuilder, st_JsonRoot).c_str(), *pInt_Len); - return TRUE; + return true; } \ No newline at end of file diff --git a/XEngine_Source/XEngine_PluginModule/ModulePlugin_BMIndex/Plugin_BMIndex/Plugin_BMIndex.h b/XEngine_Source/XEngine_PluginModule/ModulePlugin_BMIndex/Plugin_BMIndex/Plugin_BMIndex.h index 65e481bfa5008c78d54dd69d17d2430296f87d29..8edef4047ead4cb36f5cd569714b5ad795f77879 100644 --- a/XEngine_Source/XEngine_PluginModule/ModulePlugin_BMIndex/Plugin_BMIndex/Plugin_BMIndex.h +++ b/XEngine_Source/XEngine_PluginModule/ModulePlugin_BMIndex/Plugin_BMIndex/Plugin_BMIndex.h @@ -17,10 +17,10 @@ public: CPlugin_BMIndex(); ~CPlugin_BMIndex(); public: - BOOL PluginCore_Init(LPVOID lParam); + bool PluginCore_Init(XPVOID lParam); void PluginCore_UnInit(); - BOOL PluginCore_Call(TCHAR*** pppHDRList, int nListCount, int* pInt_HTTPCode, TCHAR* ptszMsgBuffer, int* pInt_MsgLen, LPCTSTR lpszMsgBuffer, int nMsgLen); + bool PluginCore_Call(XCHAR*** pppHDRList, int nListCount, int* pInt_HTTPCode, XCHAR* ptszMsgBuffer, int* pInt_MsgLen, LPCXSTR lpszMsgBuffer, int nMsgLen); protected: - BOOL Plugin_Timezone_BMIndex(LPCTSTR lpszHigh, LPCTSTR lpszWeight, TCHAR* ptszMsgBufer, int* pInt_Len); + bool Plugin_Timezone_BMIndex(LPCXSTR lpszHigh, LPCXSTR lpszWeight, XCHAR* ptszMsgBufer, int* pInt_Len); private: }; diff --git a/XEngine_Source/XEngine_PluginModule/ModulePlugin_BMIndex/dllmain.cpp b/XEngine_Source/XEngine_PluginModule/ModulePlugin_BMIndex/dllmain.cpp index daed8c8f7ac50ca1466016a0529648d18125a7e7..594ff2123d474b129bb2014fb572f03c9741bf0b 100644 --- a/XEngine_Source/XEngine_PluginModule/ModulePlugin_BMIndex/dllmain.cpp +++ b/XEngine_Source/XEngine_PluginModule/ModulePlugin_BMIndex/dllmain.cpp @@ -1,9 +1,9 @@ // dllmain.cpp : 定义 DLL 应用程序的入口点。 #include "pch.h" -BOOL APIENTRY DllMain( HMODULE hModule, - DWORD ul_reason_for_call, - LPVOID lpReserved +bool APIENTRY DllMain( HMODULE hModule, + XLONG ul_reason_for_call, + XPVOID lpReserved ) { switch (ul_reason_for_call) @@ -14,6 +14,6 @@ BOOL APIENTRY DllMain( HMODULE hModule, case DLL_PROCESS_DETACH: break; } - return TRUE; + return true; } diff --git a/XEngine_Source/XEngine_PluginModule/ModulePlugin_BMIndex/pch.cpp b/XEngine_Source/XEngine_PluginModule/ModulePlugin_BMIndex/pch.cpp index f5bb721c00411c0ec216cfdbde41f363443bc638..95aa4545753756820f48317b2b07f6a505913ba8 100644 --- a/XEngine_Source/XEngine_PluginModule/ModulePlugin_BMIndex/pch.cpp +++ b/XEngine_Source/XEngine_PluginModule/ModulePlugin_BMIndex/pch.cpp @@ -11,21 +11,21 @@ // Purpose: 导出实现 // History: *********************************************************************/ -BOOL BMIndex_IsErrorOccur = FALSE; -DWORD BMIndex_dwErrorCode = 0; +bool BMIndex_IsErrorOccur = false; +XLONG BMIndex_dwErrorCode = 0; ////////////////////////////////////////////////////////////////////////// CPlugin_BMIndex m_PluginBMIndex; ////////////////////////////////////////////////////////////////////////// // 导出函数定义 ////////////////////////////////////////////////////////////////////////// -extern "C" DWORD PluginCore_GetLastError() +extern "C" XLONG PluginCore_GetLastError() { return BMIndex_dwErrorCode; } /********************************************************************************* * 导出函数定义 * *********************************************************************************/ -extern "C" BOOL PluginCore_Init(LPVOID lParam) +extern "C" bool PluginCore_Init(XPVOID lParam) { return m_PluginBMIndex.PluginCore_Init(lParam); } @@ -33,7 +33,7 @@ extern "C" void PluginCore_UnInit() { m_PluginBMIndex.PluginCore_UnInit(); } -extern "C" BOOL PluginCore_Call(TCHAR * **pppHDRList, int nListCount, int* pInt_HTTPCode, TCHAR * ptszMsgBuffer, int* pInt_MsgLen, LPCTSTR lpszMsgBuffer, int nMsgLen) +extern "C" bool PluginCore_Call(XCHAR * **pppHDRList, int nListCount, int* pInt_HTTPCode, XCHAR * ptszMsgBuffer, int* pInt_MsgLen, LPCXSTR lpszMsgBuffer, int nMsgLen) { return m_PluginBMIndex.PluginCore_Call(pppHDRList, nListCount, pInt_HTTPCode, ptszMsgBuffer, pInt_MsgLen, lpszMsgBuffer, nMsgLen); } \ No newline at end of file diff --git a/XEngine_Source/XEngine_PluginModule/ModulePlugin_BMIndex/pch.h b/XEngine_Source/XEngine_PluginModule/ModulePlugin_BMIndex/pch.h index 44ce4344b593fda78909c718dfddd89133a66c43..ae71229f43736d5861652161d32d6b0c7a7fb5e1 100644 --- a/XEngine_Source/XEngine_PluginModule/ModulePlugin_BMIndex/pch.h +++ b/XEngine_Source/XEngine_PluginModule/ModulePlugin_BMIndex/pch.h @@ -37,8 +37,8 @@ using namespace std; // Purpose: 公用头文件 // History: *********************************************************************/ -extern BOOL BMIndex_IsErrorOccur; -extern DWORD BMIndex_dwErrorCode; +extern bool BMIndex_IsErrorOccur; +extern XLONG BMIndex_dwErrorCode; #ifdef _MSC_BUILD diff --git a/XEngine_Source/XEngine_PluginModule/ModulePlugin_IPAddr/Makefile b/XEngine_Source/XEngine_PluginModule/ModulePlugin_IPAddr/Makefile index f28a84996b9da2a7f9936766d30221c5a6de77e7..26480fa255a9cc4292b7975b39013c61ca66bfc0 100644 --- a/XEngine_Source/XEngine_PluginModule/ModulePlugin_IPAddr/Makefile +++ b/XEngine_Source/XEngine_PluginModule/ModulePlugin_IPAddr/Makefile @@ -1,30 +1,23 @@ -CC = g++ -Wall -std=c++17 -fPIC -Wno-deprecated-declarations -SHAREFLAG = -shared -SHAREDLL = so +CC = g++ -Wall -std=c++17 -fPIC +PLATFORM = linux +PLATVER = +PLATDIR = +FILEEXT = +LIBFLAG = RELEASE = 0 UNICODE = 0 -INCLUDE = -I ./ -I ../../XEngine_ThirdPart/jsoncpp -LOADBIN = -L /usr/local/lib/XEngine_Release/XEngine_BaseLib -L ../../XEngine_ThirdPart/jsoncpp +LOADHDR = -I ./ -I ../../XEngine_ThirdPart/jsoncpp +LOADSO = -L /usr/local/lib/XEngine_Release/XEngine_BaseLib -L ../../XEngine_ThirdPart/jsoncpp LIB = -lXEngine_BaseLib -ljsoncpp -LIBEX = -ldl -lpthread -LOADSO = -Wl,-rpath=../,--disable-new-dtags -LIBINCLUDE = ModulePlugin_IPAddr.o ModulePlugin_Interface.o pch.o - -ifeq ($(shell uname),Darwin) - SHAREDLL = dylib - SHAREFLAG = -dynamiclib - LOADSO = -else - SHAREDLL = so - SHAREFLAG = -shared -endif +LIBEX = +OBJECTS = ModulePlugin_IPAddr.o ModulePlugin_Interface.o pch.o ifeq ($(RELEASE),1) -FLAGS = -c -O2 +FLAGS = -c DEBUG = else -FLAGS = -c -DEBUG = -g +FLAGS = -c -lc_p +DEBUG = -g -pg endif ifeq ($(UNICODE),1) @@ -33,25 +26,47 @@ else UNICODE = endif +ifeq ($(PLATFORM),linux) + ifeq (/etc/redhat-release,$(wildcard /etc/redhat-release)) + PLATVER = -D __CENTOS__ + PLATDIR = XEngine_Linux/Centos + else + PLATVER = -D __UBUNTU__ + PLATDIR = XEngine_Linux/Ubuntu + endif + FILEEXT = so + LIBFLAG = -shared + LIBEX = -lpthread -lrt -ldl + LOADBIN = -Wl,-rpath=./,--disable-new-dtags +else ifeq ($(PLATFORM),mac) + CC += -Wno-deprecated-declarations + PLATVER = -D __MACOS__ + PLATDIR = XEngine_Mac + FILEEXT = dylib + LIBFLAG = -dynamiclib + LIBEX = -lpthread -ldl + LOADBIN = -Wl,-rpath,@loader_path/./ +endif + -all:$(LIBINCLUDE) - $(CC) $(DEBUG) $(LIBINCLUDE) -o libModulePlugin_IPAddr.$(SHAREDLL) $(SHAREFLAG) -fPIC $(LOADBIN) $(LIB) $(LIBEX) $(LOADSO) +all:$(OBJECTS) + $(CC) $(DEBUG) $(OBJECTS) -o libModulePlugin_IPAddr.$(FILEEXT) $(LIBFLAG) $(LIB) $(LIBEX) $(LOADSO) $(LOADBIN) ModulePlugin_IPAddr.o:./ModulePlugin_IPAddr/ModulePlugin_IPAddr.cpp - $(CC) $(DEBUG) $(FLAGS) $(UNICODE) $(INCLUDE) ./ModulePlugin_IPAddr/ModulePlugin_IPAddr.cpp + $(CC) $(DEBUG) $(FLAGS) $(UNICODE) $(PLATVER) $(LOADHDR) ./ModulePlugin_IPAddr/ModulePlugin_IPAddr.cpp ModulePlugin_Interface.o:./ModulePlugin_Interface/ModulePlugin_Interface.cpp - $(CC) $(DEBUG) $(FLAGS) $(UNICODE) $(INCLUDE) ./ModulePlugin_Interface/ModulePlugin_Interface.cpp + $(CC) $(DEBUG) $(FLAGS) $(UNICODE) $(PLATVER) $(LOADHDR) ./ModulePlugin_Interface/ModulePlugin_Interface.cpp pch.o:./pch.cpp - $(CC) $(DEBUG) $(FLAGS) $(UNICODE) $(INCLUDE) ./pch.cpp + $(CC) $(DEBUG) $(FLAGS) $(UNICODE) $(PLATVER) $(LOADHDR) ./pch.cpp InstallAll:InstallSo -InstallSo:./libModulePlugin_IPAddr.$(SHAREDLL) - cp ./libModulePlugin_IPAddr.$(SHAREDLL) ../../../XEngine_Release/XEngine_LibPlugin/libModulePlugin_IPAddr.$(SHAREDLL) +InstallSo:./libModulePlugin_IPAddr.$(FILEEXT) + cp ./libModulePlugin_IPAddr.$(FILEEXT) ../../../XEngine_Release/XEngine_LibPlugin/libModulePlugin_IPAddr.$(FILEEXT) CleanAll:CleanObj CleanMk CleanObj: rm *.o CleanMk: - rm *.$(SHAREDLL) \ No newline at end of file + rm *.$(FILEEXT) \ No newline at end of file diff --git a/XEngine_Source/XEngine_PluginModule/ModulePlugin_IPAddr/ModulePlugin_IPAddr.vcxproj b/XEngine_Source/XEngine_PluginModule/ModulePlugin_IPAddr/ModulePlugin_IPAddr.vcxproj index adc691c68c50f636ac0f5acfc3d5c032bd1069c5..e79494bccf3eab92c942bd32bb5dc20dcb03fe6b 100644 --- a/XEngine_Source/XEngine_PluginModule/ModulePlugin_IPAddr/ModulePlugin_IPAddr.vcxproj +++ b/XEngine_Source/XEngine_PluginModule/ModulePlugin_IPAddr/ModulePlugin_IPAddr.vcxproj @@ -31,27 +31,27 @@ DynamicLibrary true v143 - MultiByte + Unicode DynamicLibrary false v143 true - MultiByte + Unicode DynamicLibrary true v143 - MultiByte + Unicode DynamicLibrary false v143 true - MultiByte + Unicode diff --git a/XEngine_Source/XEngine_PluginModule/ModulePlugin_IPAddr/ModulePlugin_Interface/ModulePlugin_Interface.cpp b/XEngine_Source/XEngine_PluginModule/ModulePlugin_IPAddr/ModulePlugin_Interface/ModulePlugin_Interface.cpp index 451214ba2af2d2cccb15437e3201ac4605f50797..57495ea66f93396865eca9d759b99278de7b370f 100644 --- a/XEngine_Source/XEngine_PluginModule/ModulePlugin_IPAddr/ModulePlugin_Interface/ModulePlugin_Interface.cpp +++ b/XEngine_Source/XEngine_PluginModule/ModulePlugin_IPAddr/ModulePlugin_Interface/ModulePlugin_Interface.cpp @@ -33,9 +33,9 @@ CModulePlugin_Interface::~CModulePlugin_Interface() 意思:是否成功 备注: *********************************************************************/ -BOOL CModulePlugin_Interface::PluginCore_Init(LPVOID lParam) +bool CModulePlugin_Interface::PluginCore_Init(XPVOID lParam) { - IPAddr_IsErrorOccur = FALSE; + IPAddr_IsErrorOccur = false; const char* db_path = "./XEngine_DBFile/ip2region.xdb"; // 1、从 db_path 初始化 xdb 查询对象 @@ -43,9 +43,9 @@ BOOL CModulePlugin_Interface::PluginCore_Init(LPVOID lParam) if (err != 0) { printf("failed to create xdb searcher from `%s` with errno=%d\n", db_path, err); - return FALSE; + return false; } - return TRUE; + return true; } /******************************************************************** 函数名称:PluginCore_UnInit @@ -57,7 +57,7 @@ BOOL CModulePlugin_Interface::PluginCore_Init(LPVOID lParam) *********************************************************************/ void CModulePlugin_Interface::PluginCore_UnInit() { - IPAddr_IsErrorOccur = FALSE; + IPAddr_IsErrorOccur = false; xdb_close(&st_DBSearch); } /******************************************************************** @@ -68,18 +68,18 @@ void CModulePlugin_Interface::PluginCore_UnInit() 意思:是否成功 备注: *********************************************************************/ -BOOL CModulePlugin_Interface::PluginCore_Call(TCHAR*** pppHDRList, int nListCount, int* pInt_HTTPCode, TCHAR* ptszMsgBuffer, int* pInt_MsgLen, LPCTSTR lpszMsgBuffer, int nMsgLen) +bool CModulePlugin_Interface::PluginCore_Call(XCHAR*** pppHDRList, int nListCount, int* pInt_HTTPCode, XCHAR* ptszMsgBuffer, int* pInt_MsgLen, LPCXSTR lpszMsgBuffer, int nMsgLen) { - IPAddr_IsErrorOccur = FALSE; + IPAddr_IsErrorOccur = false; if ((NULL == pInt_HTTPCode) || (NULL == ptszMsgBuffer) || (NULL == pInt_MsgLen)) { - IPAddr_IsErrorOccur = TRUE; + IPAddr_IsErrorOccur = true; IPAddr_dwErrorCode = ERROR_XENGINE_APISERVICE_PLUGIN_MODULE_IPADDR_PARAMENT; - return FALSE; + return false; } - TCHAR tszKeyName[128]; - TCHAR tszMsgBuffer[128]; + XCHAR tszKeyName[128]; + XCHAR tszMsgBuffer[128]; XENGINE_IPADDRINFO st_IPAddr; Json::Value st_JsonRoot; Json::Value st_JsonObject; @@ -92,12 +92,12 @@ BOOL CModulePlugin_Interface::PluginCore_Call(TCHAR*** pppHDRList, int nListCoun BaseLib_OperatorString_GetKeyValue((*pppHDRList)[1], "=", tszKeyName, st_IPAddr.tszIPAddr); if (0 != xdb_search_by_string(&st_DBSearch, st_IPAddr.tszIPAddr, tszMsgBuffer, sizeof(tszMsgBuffer))) { - IPAddr_IsErrorOccur = TRUE; + IPAddr_IsErrorOccur = true; IPAddr_dwErrorCode = ERROR_XENGINE_APISERVICE_PLUGIN_MODULE_IPADDR_NOTFOUND; - return FALSE; + return false; } //中国|0|内蒙古|通辽市|联通 - _stscanf(tszMsgBuffer, _T("%[^|]|%[^|]|%[^|]|%[^|]|%[^|]"), st_IPAddr.tszIPCountry, st_IPAddr.tszIPCounty, st_IPAddr.tszIPProvince, st_IPAddr.tszIPCity, st_IPAddr.tszIPISP); + _stxscanf(tszMsgBuffer, _X("%[^|]|%[^|]|%[^|]|%[^|]|%[^|]"), st_IPAddr.tszIPCountry, st_IPAddr.tszIPCounty, st_IPAddr.tszIPProvince, st_IPAddr.tszIPCity, st_IPAddr.tszIPISP); st_JsonObject["tszIPAddr"] = st_IPAddr.tszIPAddr; st_JsonObject["tszIPCountry"] = st_IPAddr.tszIPCountry; st_JsonObject["tszIPProvince"] = st_IPAddr.tszIPProvince; @@ -114,5 +114,5 @@ BOOL CModulePlugin_Interface::PluginCore_Call(TCHAR*** pppHDRList, int nListCoun *pInt_HTTPCode = 200; *pInt_MsgLen = Json::writeString(st_JsonBuilder, st_JsonRoot).length(); memcpy(ptszMsgBuffer, Json::writeString(st_JsonBuilder, st_JsonRoot).c_str(), *pInt_MsgLen); - return TRUE; + return true; } \ No newline at end of file diff --git a/XEngine_Source/XEngine_PluginModule/ModulePlugin_IPAddr/ModulePlugin_Interface/ModulePlugin_Interface.h b/XEngine_Source/XEngine_PluginModule/ModulePlugin_IPAddr/ModulePlugin_Interface/ModulePlugin_Interface.h index 2e67cc867458ccf7bcb0dbaf3c8e43f902dd1f8a..c3045d4db6082d82138b3290f35e644c10038d84 100644 --- a/XEngine_Source/XEngine_PluginModule/ModulePlugin_IPAddr/ModulePlugin_Interface/ModulePlugin_Interface.h +++ b/XEngine_Source/XEngine_PluginModule/ModulePlugin_IPAddr/ModulePlugin_Interface/ModulePlugin_Interface.h @@ -17,9 +17,9 @@ public: CModulePlugin_Interface(); ~CModulePlugin_Interface(); public: - BOOL PluginCore_Init(LPVOID lParam); + bool PluginCore_Init(XPVOID lParam); void PluginCore_UnInit(); - BOOL PluginCore_Call(TCHAR*** pppHDRList, int nListCount, int* pInt_HTTPCode, TCHAR* ptszMsgBuffer, int* pInt_MsgLen, LPCTSTR lpszMsgBuffer, int nMsgLen); + bool PluginCore_Call(XCHAR*** pppHDRList, int nListCount, int* pInt_HTTPCode, XCHAR* ptszMsgBuffer, int* pInt_MsgLen, LPCXSTR lpszMsgBuffer, int nMsgLen); protected: private: xdb_searcher_t st_DBSearch; diff --git a/XEngine_Source/XEngine_PluginModule/ModulePlugin_IPAddr/PluginIPAddr_Define.h b/XEngine_Source/XEngine_PluginModule/ModulePlugin_IPAddr/PluginIPAddr_Define.h index 79167fadb1d260dbf37153152f6ff91d375f0e28..5136adebe6161f7f3b2546086374493be5df1436 100644 --- a/XEngine_Source/XEngine_PluginModule/ModulePlugin_IPAddr/PluginIPAddr_Define.h +++ b/XEngine_Source/XEngine_PluginModule/ModulePlugin_IPAddr/PluginIPAddr_Define.h @@ -13,18 +13,18 @@ //IP地址信息 typedef struct { - TCHAR tszIPAddr[128]; //IP地址 - TCHAR tszIPCountry[128]; //国家/地区 - TCHAR tszIPProvince[128]; //省/自治区 - TCHAR tszIPCity[128]; //市 - TCHAR tszIPCounty[128]; //县 - TCHAR tszIPAddress[128]; //详细地址 - TCHAR tszIPISP[128]; //运营商 + XCHAR tszIPAddr[128]; //IP地址 + XCHAR tszIPCountry[128]; //国家/地区 + XCHAR tszIPProvince[128]; //省/自治区 + XCHAR tszIPCity[128]; //市 + XCHAR tszIPCounty[128]; //县 + XCHAR tszIPAddress[128]; //详细地址 + XCHAR tszIPISP[128]; //运营商 }XENGINE_IPADDRINFO; ////////////////////////////////////////////////////////////////////////// // 导出函数定义 ////////////////////////////////////////////////////////////////////////// -extern "C" DWORD PluginCore_GetLastError(); +extern "C" XLONG PluginCore_GetLastError(); /********************************************************************************* * 导出函数定义 * *********************************************************************************/ @@ -41,7 +41,7 @@ extern "C" DWORD PluginCore_GetLastError(); 意思:是否成功 备注: *********************************************************************/ -extern "C" BOOL PluginCore_Init(LPVOID lParam = NULL); +extern "C" bool PluginCore_Init(XPVOID lParam = NULL); /******************************************************************** 函数名称:PluginCore_UnInit 函数功能:卸载插件 @@ -59,4 +59,4 @@ extern "C" void PluginCore_UnInit(); 意思:是否成功 备注: *********************************************************************/ -extern "C" BOOL PluginCore_Call(TCHAR * **pppHDRList, int nListCount, int* pInt_HTTPCode, TCHAR * ptszMsgBuffer, int* pInt_MsgLen, LPCTSTR lpszMsgBuffer = NULL, int nMsgLen = 0); \ No newline at end of file +extern "C" bool PluginCore_Call(XCHAR * **pppHDRList, int nListCount, int* pInt_HTTPCode, XCHAR * ptszMsgBuffer, int* pInt_MsgLen, LPCXSTR lpszMsgBuffer = NULL, int nMsgLen = 0); \ No newline at end of file diff --git a/XEngine_Source/XEngine_PluginModule/ModulePlugin_IPAddr/dllmain.cpp b/XEngine_Source/XEngine_PluginModule/ModulePlugin_IPAddr/dllmain.cpp index fb5e929d83a343845a89ee3164d3c4fb504b447c..897dff745af0abaab58dfe72e37126fb2b23bf83 100644 --- a/XEngine_Source/XEngine_PluginModule/ModulePlugin_IPAddr/dllmain.cpp +++ b/XEngine_Source/XEngine_PluginModule/ModulePlugin_IPAddr/dllmain.cpp @@ -1,9 +1,9 @@ // dllmain.cpp : 定义 DLL 应用程序的入口点。 #include "pch.h" -BOOL APIENTRY DllMain( HMODULE hModule, - DWORD ul_reason_for_call, - LPVOID lpReserved +bool APIENTRY DllMain( HMODULE hModule, + XLONG ul_reason_for_call, + XPVOID lpReserved ) { switch (ul_reason_for_call) @@ -14,5 +14,5 @@ BOOL APIENTRY DllMain( HMODULE hModule, case DLL_PROCESS_DETACH: break; } - return TRUE; + return true; } \ No newline at end of file diff --git a/XEngine_Source/XEngine_PluginModule/ModulePlugin_IPAddr/pch.cpp b/XEngine_Source/XEngine_PluginModule/ModulePlugin_IPAddr/pch.cpp index a6df6c2df147eefa55a93e66a71620dbdf449506..859960137dfa908f7cce3fb9176bee9c8a9bce70 100644 --- a/XEngine_Source/XEngine_PluginModule/ModulePlugin_IPAddr/pch.cpp +++ b/XEngine_Source/XEngine_PluginModule/ModulePlugin_IPAddr/pch.cpp @@ -11,21 +11,21 @@ // Purpose: 导出实现 // History: *********************************************************************/ -BOOL IPAddr_IsErrorOccur = FALSE; -DWORD IPAddr_dwErrorCode = 0; +bool IPAddr_IsErrorOccur = false; +XLONG IPAddr_dwErrorCode = 0; ////////////////////////////////////////////////////////////////////////// CModulePlugin_Interface m_PluginIPAddr; ////////////////////////////////////////////////////////////////////////// // 导出函数定义 ////////////////////////////////////////////////////////////////////////// -extern "C" DWORD PluginCore_GetLastError() +extern "C" XLONG PluginCore_GetLastError() { return IPAddr_dwErrorCode; } /********************************************************************************* * 导出函数定义 * *********************************************************************************/ -extern "C" BOOL PluginCore_Init(LPVOID lParam) +extern "C" bool PluginCore_Init(XPVOID lParam) { return m_PluginIPAddr.PluginCore_Init(lParam); } @@ -33,7 +33,7 @@ extern "C" void PluginCore_UnInit() { m_PluginIPAddr.PluginCore_UnInit(); } -extern "C" BOOL PluginCore_Call(TCHAR * **pppHDRList, int nListCount, int* pInt_HTTPCode, TCHAR * ptszMsgBuffer, int* pInt_MsgLen, LPCTSTR lpszMsgBuffer, int nMsgLen) +extern "C" bool PluginCore_Call(XCHAR * **pppHDRList, int nListCount, int* pInt_HTTPCode, XCHAR * ptszMsgBuffer, int* pInt_MsgLen, LPCXSTR lpszMsgBuffer, int nMsgLen) { return m_PluginIPAddr.PluginCore_Call(pppHDRList, nListCount, pInt_HTTPCode, ptszMsgBuffer, pInt_MsgLen, lpszMsgBuffer, nMsgLen); } \ No newline at end of file diff --git a/XEngine_Source/XEngine_PluginModule/ModulePlugin_IPAddr/pch.h b/XEngine_Source/XEngine_PluginModule/ModulePlugin_IPAddr/pch.h index 73ddbe9f03bfd9a9a751eed0746daf7185f6afb1..e5b8c1ca8faff2f687d479a93ad5b80c716aeaa2 100644 --- a/XEngine_Source/XEngine_PluginModule/ModulePlugin_IPAddr/pch.h +++ b/XEngine_Source/XEngine_PluginModule/ModulePlugin_IPAddr/pch.h @@ -33,8 +33,8 @@ using namespace std; // Purpose: 公用头文件 // History: *********************************************************************/ -extern BOOL IPAddr_IsErrorOccur; -extern DWORD IPAddr_dwErrorCode; +extern bool IPAddr_IsErrorOccur; +extern XLONG IPAddr_dwErrorCode; #include "ModulePlugin_IPAddr/ModulePlugin_IPAddr.h" diff --git a/XEngine_Source/XEngine_PluginModule/ModulePlugin_Meter/Makefile b/XEngine_Source/XEngine_PluginModule/ModulePlugin_Meter/Makefile index 1cda5c95621b8aa9f24b09d078b1f4b0c6df649f..a31909b93c5b3e3b626b9f100df0fd5344434324 100644 --- a/XEngine_Source/XEngine_PluginModule/ModulePlugin_Meter/Makefile +++ b/XEngine_Source/XEngine_PluginModule/ModulePlugin_Meter/Makefile @@ -1,30 +1,23 @@ CC = g++ -Wall -std=c++17 -fPIC -SHAREFLAG = -shared -SHAREDLL = so +PLATFORM = linux +PLATVER = +PLATDIR = +FILEEXT = +LIBFLAG = RELEASE = 0 UNICODE = 0 -INCLUDE = -I ./ -I ../../XEngine_ThirdPart/jsoncpp -LOADBIN = -L /usr/local/lib/XEngine_Release/XEngine_BaseLib -L ../../XEngine_ThirdPart/jsoncpp +LOADHDR = -I ./ -I ../../XEngine_ThirdPart/jsoncpp +LOADSO = -L /usr/local/lib/XEngine_Release/XEngine_BaseLib -L ../../XEngine_ThirdPart/jsoncpp LIB = -lXEngine_BaseLib -ljsoncpp -LIBEX = -ldl -lpthread -LOADSO = -Wl,-rpath=../,--disable-new-dtags -LIBINCLUDE = Plugin_Meter.o pch.o - -ifeq ($(shell uname),Darwin) - SHAREDLL = dylib - SHAREFLAG = -dynamiclib - LOADSO = -else - SHAREDLL = so - SHAREFLAG = -shared -endif +LIBEX = +OBJECTS = Plugin_Meter.o pch.o ifeq ($(RELEASE),1) -FLAGS = -c -O2 +FLAGS = -c DEBUG = else -FLAGS = -c -DEBUG = -g +FLAGS = -c -lc_p +DEBUG = -g -pg endif ifeq ($(UNICODE),1) @@ -33,23 +26,44 @@ else UNICODE = endif +ifeq ($(PLATFORM),linux) + ifeq (/etc/redhat-release,$(wildcard /etc/redhat-release)) + PLATVER = -D __CENTOS__ + PLATDIR = XEngine_Linux/Centos + else + PLATVER = -D __UBUNTU__ + PLATDIR = XEngine_Linux/Ubuntu + endif + FILEEXT = so + LIBFLAG = -shared + LIBEX = -lpthread -lrt -ldl + LOADBIN = -Wl,-rpath=./,--disable-new-dtags +else ifeq ($(PLATFORM),mac) + CC += -Wno-deprecated-declarations + PLATVER = -D __MACOS__ + PLATDIR = XEngine_Mac + FILEEXT = dylib + LIBFLAG = -dynamiclib + LIBEX = -lpthread -ldl + LOADBIN = -Wl,-rpath,@loader_path/./ +endif -all:$(LIBINCLUDE) - $(CC) $(DEBUG) $(LIBINCLUDE) -o libModulePlugin_Meter.$(SHAREDLL) $(SHAREFLAG) -fPIC $(LOADBIN) $(LIB) $(LIBEX) $(LOADSO) -Plugin_Meter.o:./Plugin_Meter/Plugin_Meter.cpp - $(CC) $(DEBUG) $(FLAGS) $(UNICODE) $(INCLUDE) ./Plugin_Meter/Plugin_Meter.cpp +all:$(OBJECTS) + $(CC) $(DEBUG) $(OBJECTS) -o libModulePlugin_Meter.$(FILEEXT) $(LIBFLAG) $(LIB) $(LIBEX) $(LOADSO) $(LOADBIN) +Plugin_Meter.o:./Plugin_Meter/Plugin_Meter.cpp + $(CC) $(DEBUG) $(FLAGS) $(UNICODE) $(PLATVER) $(LOADHDR) ./Plugin_Meter/Plugin_Meter.cpp pch.o:./pch.cpp - $(CC) $(DEBUG) $(FLAGS) $(UNICODE) $(INCLUDE) ./pch.cpp + $(CC) $(DEBUG) $(FLAGS) $(UNICODE) $(PLATVER) $(LOADHDR) ./pch.cpp InstallAll:InstallSo -InstallSo:./libModulePlugin_Meter.$(SHAREDLL) - cp ./libModulePlugin_Meter.$(SHAREDLL) ../../../XEngine_Release/XEngine_LibPlugin/libModulePlugin_Meter.$(SHAREDLL) +InstallSo:./libModulePlugin_Meter.$(FILEEXT) + cp ./libModulePlugin_Meter.$(FILEEXT) ../../../XEngine_Release/XEngine_LibPlugin/libModulePlugin_Meter.$(FILEEXT) CleanAll:CleanObj CleanMk CleanObj: rm *.o CleanMk: - rm *.$(SHAREDLL) \ No newline at end of file + rm *.$(FILEEXT) \ No newline at end of file diff --git a/XEngine_Source/XEngine_PluginModule/ModulePlugin_Meter/ModulePlugin_Meter.vcxproj b/XEngine_Source/XEngine_PluginModule/ModulePlugin_Meter/ModulePlugin_Meter.vcxproj index 37c1c1eae6a829948efcd23fde4267cf4d453673..f5f2394a3b177fdda65523f0b2214a39ccf78d41 100644 --- a/XEngine_Source/XEngine_PluginModule/ModulePlugin_Meter/ModulePlugin_Meter.vcxproj +++ b/XEngine_Source/XEngine_PluginModule/ModulePlugin_Meter/ModulePlugin_Meter.vcxproj @@ -31,27 +31,27 @@ DynamicLibrary true v143 - MultiByte + Unicode DynamicLibrary false v143 true - MultiByte + Unicode DynamicLibrary true v143 - MultiByte + Unicode DynamicLibrary false v143 true - MultiByte + Unicode diff --git a/XEngine_Source/XEngine_PluginModule/ModulePlugin_Meter/PluginMeter_Define.h b/XEngine_Source/XEngine_PluginModule/ModulePlugin_Meter/PluginMeter_Define.h index a17f727190561401ff742e57979f56124f6421ea..ef80d1bf82744de0223f32ae5ed23af77f40cd6d 100644 --- a/XEngine_Source/XEngine_PluginModule/ModulePlugin_Meter/PluginMeter_Define.h +++ b/XEngine_Source/XEngine_PluginModule/ModulePlugin_Meter/PluginMeter_Define.h @@ -66,7 +66,7 @@ typedef enum ////////////////////////////////////////////////////////////////////////// // 导出函数定义 ////////////////////////////////////////////////////////////////////////// -extern "C" DWORD PluginCore_GetLastError(); +extern "C" XLONG PluginCore_GetLastError(); /********************************************************************************* * 导出函数定义 * *********************************************************************************/ @@ -83,7 +83,7 @@ extern "C" DWORD PluginCore_GetLastError(); 意思:是否成功 备注: *********************************************************************/ -extern "C" BOOL PluginCore_Init(LPVOID lParam = NULL); +extern "C" bool PluginCore_Init(XPVOID lParam = NULL); /******************************************************************** 函数名称:PluginCore_UnInit 函数功能:卸载插件 @@ -101,4 +101,4 @@ extern "C" void PluginCore_UnInit(); 意思:是否成功 备注: *********************************************************************/ -extern "C" BOOL PluginCore_Call(TCHAR * **pppHDRList, int nListCount, int* pInt_HTTPCode, TCHAR * ptszMsgBuffer, int* pInt_MsgLen, LPCTSTR lpszMsgBuffer = NULL, int nMsgLen = 0); \ No newline at end of file +extern "C" bool PluginCore_Call(XCHAR * **pppHDRList, int nListCount, int* pInt_HTTPCode, XCHAR * ptszMsgBuffer, int* pInt_MsgLen, LPCXSTR lpszMsgBuffer = NULL, int nMsgLen = 0); \ No newline at end of file diff --git a/XEngine_Source/XEngine_PluginModule/ModulePlugin_Meter/Plugin_Meter/Plugin_Meter.cpp b/XEngine_Source/XEngine_PluginModule/ModulePlugin_Meter/Plugin_Meter/Plugin_Meter.cpp index ea78d02ff28199e4233b0b733a157576327a6893..c652dee737551dc267a2fa4a83ad5183dd84aaa8 100644 --- a/XEngine_Source/XEngine_PluginModule/ModulePlugin_Meter/Plugin_Meter/Plugin_Meter.cpp +++ b/XEngine_Source/XEngine_PluginModule/ModulePlugin_Meter/Plugin_Meter/Plugin_Meter.cpp @@ -33,11 +33,11 @@ CPlugin_Meter::~CPlugin_Meter() 意思:是否成功 备注: *********************************************************************/ -BOOL CPlugin_Meter::PluginCore_Init(LPVOID lParam) +bool CPlugin_Meter::PluginCore_Init(XPVOID lParam) { - Meter_IsErrorOccur = FALSE; + Meter_IsErrorOccur = false; - return TRUE; + return true; } /******************************************************************** 函数名称:PluginCore_UnInit @@ -49,7 +49,7 @@ BOOL CPlugin_Meter::PluginCore_Init(LPVOID lParam) *********************************************************************/ void CPlugin_Meter::PluginCore_UnInit() { - Meter_IsErrorOccur = FALSE; + Meter_IsErrorOccur = false; } /******************************************************************** 函数名称:PluginCore_Call @@ -59,20 +59,20 @@ void CPlugin_Meter::PluginCore_UnInit() 意思:是否成功 备注: *********************************************************************/ -BOOL CPlugin_Meter::PluginCore_Call(TCHAR*** pppHDRList, int nListCount, int* pInt_HTTPCode, TCHAR* ptszMsgBuffer, int* pInt_MsgLen, LPCTSTR lpszMsgBuffer, int nMsgLen) +bool CPlugin_Meter::PluginCore_Call(XCHAR*** pppHDRList, int nListCount, int* pInt_HTTPCode, XCHAR* ptszMsgBuffer, int* pInt_MsgLen, LPCXSTR lpszMsgBuffer, int nMsgLen) { - Meter_IsErrorOccur = FALSE; + Meter_IsErrorOccur = false; if ((NULL == pInt_HTTPCode) || (NULL == ptszMsgBuffer) || (NULL == pInt_MsgLen)) { - Meter_IsErrorOccur = TRUE; + Meter_IsErrorOccur = true; Meter_dwErrorCode = ERROR_XENGINE_APISERVICE_PLUGIN_MODULE_METER_PARAMENT; - return FALSE; + return false; } - TCHAR tszKeyName[128]; - TCHAR tszParamType[128]; - TCHAR tszParamValue[128]; - TCHAR tszParamSource[128]; + XCHAR tszKeyName[128]; + XCHAR tszParamType[128]; + XCHAR tszParamValue[128]; + XCHAR tszParamSource[128]; Json::Value st_JsonRoot; Json::Value st_JsonObject; @@ -88,26 +88,26 @@ BOOL CPlugin_Meter::PluginCore_Call(TCHAR*** pppHDRList, int nListCount, int* pI BaseLib_OperatorString_GetKeyValue((*pppHDRList)[2], "=", tszKeyName, tszParamSource); BaseLib_OperatorString_GetKeyValue((*pppHDRList)[3], "=", tszKeyName, tszParamValue); - if (0 == _ttoi(tszParamType)) + if (0 == _ttxoi(tszParamType)) { - Plugin_Meter_LengthConvert(_ttoi(tszParamSource), _ttoi64(tszParamValue), &st_JsonObject); + Plugin_Meter_LengthConvert(_ttxoi(tszParamSource), _ttxoll(tszParamValue), &st_JsonObject); } - else if (1 == _ttoi(tszParamType)) + else if (1 == _ttxoi(tszParamType)) { - Plugin_Meter_TemperatureConvert(_ttoi(tszParamSource), _ttoi64(tszParamValue), &st_JsonObject); + Plugin_Meter_TemperatureConvert(_ttxoi(tszParamSource), _ttxoll(tszParamValue), &st_JsonObject); } - else if (2 == _ttoi(tszParamType)) + else if (2 == _ttxoi(tszParamType)) { - Plugin_Meter_PowerConvert(_ttoi(tszParamSource), _ttoi64(tszParamValue), &st_JsonObject); + Plugin_Meter_PowerConvert(_ttxoi(tszParamSource), _ttxoll(tszParamValue), &st_JsonObject); } - else if (3 == _ttoi(tszParamType)) + else if (3 == _ttxoi(tszParamType)) { - Plugin_Meter_SpeedConvert(_ttoi(tszParamSource), _ttoi64(tszParamValue), &st_JsonObject); + Plugin_Meter_SpeedConvert(_ttxoi(tszParamSource), _ttxoll(tszParamValue), &st_JsonObject); } - st_JsonObject["tszParamType"] = _ttoi(tszParamType); - st_JsonObject["tszParamSource"] = _ttoi(tszParamSource); - st_JsonObject["tszParamValue"] = _ttof(tszParamValue); + st_JsonObject["tszParamType"] = _ttxoi(tszParamType); + st_JsonObject["tszParamSource"] = _ttxoi(tszParamSource); + st_JsonObject["tszParamValue"] = _ttxof(tszParamValue); st_JsonRoot["data"] = st_JsonObject; st_JsonRoot["code"] = 0; @@ -117,14 +117,14 @@ BOOL CPlugin_Meter::PluginCore_Call(TCHAR*** pppHDRList, int nListCount, int* pI *pInt_HTTPCode = 200; *pInt_MsgLen = Json::writeString(st_JsonBuilder, st_JsonRoot).length(); memcpy(ptszMsgBuffer, Json::writeString(st_JsonBuilder, st_JsonRoot).c_str(), *pInt_MsgLen); - return TRUE; + return true; } ////////////////////////////////////////////////////////////////////////// // 保护函数 ////////////////////////////////////////////////////////////////////////// -BOOL CPlugin_Meter::Plugin_Meter_LengthConvert(int nSource, __int64x nValue, Json::Value *pSt_JsonObject) +bool CPlugin_Meter::Plugin_Meter_LengthConvert(int nSource, __int64x nValue, Json::Value *pSt_JsonObject) { - Meter_IsErrorOccur = FALSE; + Meter_IsErrorOccur = false; Json::Value st_JsonObejct; if (ENUM_APISERVICE_PLUGIN_METER_LENGTH_KILOMETRE == nSource) @@ -191,11 +191,11 @@ BOOL CPlugin_Meter::Plugin_Meter_LengthConvert(int nSource, __int64x nValue, Jso st_JsonObejct["foot"] = double(nValue * 0.32808399); } (*pSt_JsonObject)["Length"] = st_JsonObejct; - return TRUE; + return true; } -BOOL CPlugin_Meter::Plugin_Meter_TemperatureConvert(int nSource, __int64x nValue, Json::Value* pSt_JsonObject) +bool CPlugin_Meter::Plugin_Meter_TemperatureConvert(int nSource, __int64x nValue, Json::Value* pSt_JsonObject) { - Meter_IsErrorOccur = FALSE; + Meter_IsErrorOccur = false; Json::Value st_JsonObejct; if (ENUM_APISERVICE_PLUGIN_METER_TEMPERATURE_C == nSource) @@ -206,11 +206,11 @@ BOOL CPlugin_Meter::Plugin_Meter_TemperatureConvert(int nSource, __int64x nValue st_JsonObejct["degree"] = double(nValue * 0.8); } (*pSt_JsonObject)["Temperature"] = st_JsonObejct; - return TRUE; + return true; } -BOOL CPlugin_Meter::Plugin_Meter_PowerConvert(int nSource, __int64x nValue, Json::Value* pSt_JsonObject) +bool CPlugin_Meter::Plugin_Meter_PowerConvert(int nSource, __int64x nValue, Json::Value* pSt_JsonObject) { - Meter_IsErrorOccur = FALSE; + Meter_IsErrorOccur = false; Json::Value st_JsonObejct; if (ENUM_APISERVICE_PLUGIN_METER_POWER_W == nSource) @@ -220,11 +220,11 @@ BOOL CPlugin_Meter::Plugin_Meter_PowerConvert(int nSource, __int64x nValue, Json st_JsonObejct["ps"] = double(nValue * 0.00136); } (*pSt_JsonObject)["Power"] = st_JsonObejct; - return TRUE; + return true; } -BOOL CPlugin_Meter::Plugin_Meter_SpeedConvert(int nSource, __int64x nValue, Json::Value* pSt_JsonObject) +bool CPlugin_Meter::Plugin_Meter_SpeedConvert(int nSource, __int64x nValue, Json::Value* pSt_JsonObject) { - Meter_IsErrorOccur = FALSE; + Meter_IsErrorOccur = false; Json::Value st_JsonObejct; if (ENUM_APISERVICE_PLUGIN_METER_SPEED_KNOT == nSource) @@ -243,5 +243,5 @@ BOOL CPlugin_Meter::Plugin_Meter_SpeedConvert(int nSource, __int64x nValue, Json st_JsonObejct["kilometer"] = double(nValue * 00.621); } (*pSt_JsonObject)["Power"] = st_JsonObejct; - return TRUE; + return true; } \ No newline at end of file diff --git a/XEngine_Source/XEngine_PluginModule/ModulePlugin_Meter/Plugin_Meter/Plugin_Meter.h b/XEngine_Source/XEngine_PluginModule/ModulePlugin_Meter/Plugin_Meter/Plugin_Meter.h index 9e7b043dfcb31fd03ece3c43c2dc5f6542b336c8..99cb64cb4ba25e7776798b03f16658180adaf0d9 100644 --- a/XEngine_Source/XEngine_PluginModule/ModulePlugin_Meter/Plugin_Meter/Plugin_Meter.h +++ b/XEngine_Source/XEngine_PluginModule/ModulePlugin_Meter/Plugin_Meter/Plugin_Meter.h @@ -17,13 +17,13 @@ public: CPlugin_Meter(); ~CPlugin_Meter(); public: - BOOL PluginCore_Init(LPVOID lParam); + bool PluginCore_Init(XPVOID lParam); void PluginCore_UnInit(); - BOOL PluginCore_Call(TCHAR*** pppHDRList, int nListCount, int* pInt_HTTPCode, TCHAR* ptszMsgBuffer, int* pInt_MsgLen, LPCTSTR lpszMsgBuffer, int nMsgLen); + bool PluginCore_Call(XCHAR*** pppHDRList, int nListCount, int* pInt_HTTPCode, XCHAR* ptszMsgBuffer, int* pInt_MsgLen, LPCXSTR lpszMsgBuffer, int nMsgLen); protected: - BOOL Plugin_Meter_LengthConvert(int nSource, __int64x nValue, Json::Value *pSt_JsonObject); - BOOL Plugin_Meter_TemperatureConvert(int nSource, __int64x nValue, Json::Value* pSt_JsonObject); - BOOL Plugin_Meter_PowerConvert(int nSource, __int64x nValue, Json::Value* pSt_JsonObject); - BOOL Plugin_Meter_SpeedConvert(int nSource, __int64x nValue, Json::Value* pSt_JsonObject); + bool Plugin_Meter_LengthConvert(int nSource, __int64x nValue, Json::Value *pSt_JsonObject); + bool Plugin_Meter_TemperatureConvert(int nSource, __int64x nValue, Json::Value* pSt_JsonObject); + bool Plugin_Meter_PowerConvert(int nSource, __int64x nValue, Json::Value* pSt_JsonObject); + bool Plugin_Meter_SpeedConvert(int nSource, __int64x nValue, Json::Value* pSt_JsonObject); private: }; diff --git a/XEngine_Source/XEngine_PluginModule/ModulePlugin_Meter/dllmain.cpp b/XEngine_Source/XEngine_PluginModule/ModulePlugin_Meter/dllmain.cpp index daed8c8f7ac50ca1466016a0529648d18125a7e7..594ff2123d474b129bb2014fb572f03c9741bf0b 100644 --- a/XEngine_Source/XEngine_PluginModule/ModulePlugin_Meter/dllmain.cpp +++ b/XEngine_Source/XEngine_PluginModule/ModulePlugin_Meter/dllmain.cpp @@ -1,9 +1,9 @@ // dllmain.cpp : 定义 DLL 应用程序的入口点。 #include "pch.h" -BOOL APIENTRY DllMain( HMODULE hModule, - DWORD ul_reason_for_call, - LPVOID lpReserved +bool APIENTRY DllMain( HMODULE hModule, + XLONG ul_reason_for_call, + XPVOID lpReserved ) { switch (ul_reason_for_call) @@ -14,6 +14,6 @@ BOOL APIENTRY DllMain( HMODULE hModule, case DLL_PROCESS_DETACH: break; } - return TRUE; + return true; } diff --git a/XEngine_Source/XEngine_PluginModule/ModulePlugin_Meter/pch.cpp b/XEngine_Source/XEngine_PluginModule/ModulePlugin_Meter/pch.cpp index 924816150a97dfb6046122a5fd450fb9315a08c8..ffe1cc0ca1e10645404ce515324db1363eba5552 100644 --- a/XEngine_Source/XEngine_PluginModule/ModulePlugin_Meter/pch.cpp +++ b/XEngine_Source/XEngine_PluginModule/ModulePlugin_Meter/pch.cpp @@ -11,21 +11,21 @@ // Purpose: 导出实现 // History: *********************************************************************/ -BOOL Meter_IsErrorOccur = FALSE; -DWORD Meter_dwErrorCode = 0; +bool Meter_IsErrorOccur = false; +XLONG Meter_dwErrorCode = 0; ////////////////////////////////////////////////////////////////////////// CPlugin_Meter m_PluginMeter; ////////////////////////////////////////////////////////////////////////// // 导出函数定义 ////////////////////////////////////////////////////////////////////////// -extern "C" DWORD PluginCore_GetLastError() +extern "C" XLONG PluginCore_GetLastError() { return Meter_dwErrorCode; } /********************************************************************************* * 导出函数定义 * *********************************************************************************/ -extern "C" BOOL PluginCore_Init(LPVOID lParam) +extern "C" bool PluginCore_Init(XPVOID lParam) { return m_PluginMeter.PluginCore_Init(lParam); } @@ -33,7 +33,7 @@ extern "C" void PluginCore_UnInit() { m_PluginMeter.PluginCore_UnInit(); } -extern "C" BOOL PluginCore_Call(TCHAR * **pppHDRList, int nListCount, int* pInt_HTTPCode, TCHAR * ptszMsgBuffer, int* pInt_MsgLen, LPCTSTR lpszMsgBuffer, int nMsgLen) +extern "C" bool PluginCore_Call(XCHAR * **pppHDRList, int nListCount, int* pInt_HTTPCode, XCHAR * ptszMsgBuffer, int* pInt_MsgLen, LPCXSTR lpszMsgBuffer, int nMsgLen) { return m_PluginMeter.PluginCore_Call(pppHDRList, nListCount, pInt_HTTPCode, ptszMsgBuffer, pInt_MsgLen, lpszMsgBuffer, nMsgLen); } \ No newline at end of file diff --git a/XEngine_Source/XEngine_PluginModule/ModulePlugin_Meter/pch.h b/XEngine_Source/XEngine_PluginModule/ModulePlugin_Meter/pch.h index abb8e8b6694b11324c6060683ccce421e37b5531..1f13d1bee79d3fb52c6e12253c88e70f94a25f80 100644 --- a/XEngine_Source/XEngine_PluginModule/ModulePlugin_Meter/pch.h +++ b/XEngine_Source/XEngine_PluginModule/ModulePlugin_Meter/pch.h @@ -35,8 +35,8 @@ // Purpose: 公用头文件 // History: *********************************************************************/ -extern BOOL Meter_IsErrorOccur; -extern DWORD Meter_dwErrorCode; +extern bool Meter_IsErrorOccur; +extern XLONG Meter_dwErrorCode; #ifdef _MSC_BUILD diff --git a/XEngine_Source/XEngine_PluginModule/ModulePlugin_Password/Makefile b/XEngine_Source/XEngine_PluginModule/ModulePlugin_Password/Makefile index c1bd76e38ad775ad96188e0e4d9a3bb35c85d633..64df18d06d09bc544048b40b4a871d662d379162 100644 --- a/XEngine_Source/XEngine_PluginModule/ModulePlugin_Password/Makefile +++ b/XEngine_Source/XEngine_PluginModule/ModulePlugin_Password/Makefile @@ -1,30 +1,23 @@ -CC = g++ -Wall -std=c++17 -fPIC -Wno-deprecated-declarations -SHAREFLAG = -shared -SHAREDLL = so +CC = g++ -Wall -std=c++17 -fPIC +PLATFORM = linux +PLATVER = +PLATDIR = +FILEEXT = +LIBFLAG = RELEASE = 0 UNICODE = 0 -INCLUDE = -I ./ -I ../../XEngine_ThirdPart/jsoncpp -LOADBIN = -L /usr/local/lib/XEngine_Release/XEngine_BaseLib -L ../../XEngine_ThirdPart/jsoncpp +LOADHDR = -I ./ -I ../../XEngine_ThirdPart/jsoncpp +LOADSO = -L /usr/local/lib/XEngine_Release/XEngine_BaseLib -L ../../XEngine_ThirdPart/jsoncpp LIB = -lXEngine_BaseLib -ljsoncpp -LIBEX = -ldl -lpthread -LOADSO = -Wl,-rpath=../,--disable-new-dtags -LIBINCLUDE = Plugin_Password.o pch.o - -ifeq ($(shell uname),Darwin) - SHAREDLL = dylib - SHAREFLAG = -dynamiclib - LOADSO = -else - SHAREDLL = so - SHAREFLAG = -shared -endif +LIBEX = +OBJECTS = Plugin_Password.o pch.o ifeq ($(RELEASE),1) -FLAGS = -c -O2 +FLAGS = -c DEBUG = else -FLAGS = -c -DEBUG = -g +FLAGS = -c -lc_p +DEBUG = -g -pg endif ifeq ($(UNICODE),1) @@ -33,23 +26,45 @@ else UNICODE = endif +ifeq ($(PLATFORM),linux) + ifeq (/etc/redhat-release,$(wildcard /etc/redhat-release)) + PLATVER = -D __CENTOS__ + PLATDIR = XEngine_Linux/Centos + else + PLATVER = -D __UBUNTU__ + PLATDIR = XEngine_Linux/Ubuntu + endif + FILEEXT = so + LIBFLAG = -shared + LIBEX = -lpthread -lrt -ldl + LOADBIN = -Wl,-rpath=./,--disable-new-dtags +else ifeq ($(PLATFORM),mac) + CC += -Wno-deprecated-declarations + PLATVER = -D __MACOS__ + PLATDIR = XEngine_Mac + FILEEXT = dylib + LIBFLAG = -dynamiclib + LIBEX = -lpthread -ldl + LOADBIN = -Wl,-rpath,@loader_path/./ +endif + -all:$(LIBINCLUDE) - $(CC) $(DEBUG) $(LIBINCLUDE) -o libModulePlugin_Password.$(SHAREDLL) $(SHAREFLAG) -fPIC $(LOADBIN) $(LIB) $(LIBEX) $(LOADSO) +all:$(OBJECTS) + $(CC) $(DEBUG) $(OBJECTS) -o libModulePlugin_Password.$(FILEEXT) $(LIBFLAG) $(LIB) $(LIBEX) $(LOADSO) $(LOADBIN) Plugin_Password.o:./Plugin_Password/Plugin_Password.cpp - $(CC) $(DEBUG) $(FLAGS) $(UNICODE) $(INCLUDE) ./Plugin_Password/Plugin_Password.cpp + $(CC) $(DEBUG) $(FLAGS) $(UNICODE) $(PLATVER) $(LOADHDR) ./Plugin_Password/Plugin_Password.cpp pch.o:./pch.cpp - $(CC) $(DEBUG) $(FLAGS) $(UNICODE) $(INCLUDE) ./pch.cpp + $(CC) $(DEBUG) $(FLAGS) $(UNICODE) $(PLATVER) $(LOADHDR) ./pch.cpp InstallAll:InstallSo -InstallSo:./libModulePlugin_Password.$(SHAREDLL) - cp ./libModulePlugin_Password.$(SHAREDLL) ../../../XEngine_Release/XEngine_LibPlugin/libModulePlugin_Password.$(SHAREDLL) +InstallSo:./libModulePlugin_Password.$(FILEEXT) + cp ./libModulePlugin_Password.$(FILEEXT) ../../../XEngine_Release/XEngine_LibPlugin/libModulePlugin_Password.$(FILEEXT) CleanAll:CleanObj CleanMk CleanObj: rm *.o CleanMk: - rm *.$(SHAREDLL) \ No newline at end of file + rm *.$(FILEEXT) \ No newline at end of file diff --git a/XEngine_Source/XEngine_PluginModule/ModulePlugin_Password/ModulePlugin_Password.vcxproj b/XEngine_Source/XEngine_PluginModule/ModulePlugin_Password/ModulePlugin_Password.vcxproj index c6920277191eee364fc08ed499c6e029d22fedbb..f3effd55434134a0be72ae2104b222877d61158c 100644 --- a/XEngine_Source/XEngine_PluginModule/ModulePlugin_Password/ModulePlugin_Password.vcxproj +++ b/XEngine_Source/XEngine_PluginModule/ModulePlugin_Password/ModulePlugin_Password.vcxproj @@ -31,27 +31,27 @@ DynamicLibrary true v143 - MultiByte + Unicode DynamicLibrary false v143 true - MultiByte + Unicode DynamicLibrary true v143 - MultiByte + Unicode DynamicLibrary false v143 true - MultiByte + Unicode diff --git a/XEngine_Source/XEngine_PluginModule/ModulePlugin_Password/PluginPass_Define.h b/XEngine_Source/XEngine_PluginModule/ModulePlugin_Password/PluginPass_Define.h index acbc83bc7aab76a5b74f7a6d39c022ccfd4707ab..0226572a11cb1d163ad01198e923115cedd17650 100644 --- a/XEngine_Source/XEngine_PluginModule/ModulePlugin_Password/PluginPass_Define.h +++ b/XEngine_Source/XEngine_PluginModule/ModulePlugin_Password/PluginPass_Define.h @@ -13,7 +13,7 @@ ////////////////////////////////////////////////////////////////////////// // 导出函数定义 ////////////////////////////////////////////////////////////////////////// -extern "C" DWORD PluginCore_GetLastError(); +extern "C" XLONG PluginCore_GetLastError(); /********************************************************************************* * 导出函数定义 * *********************************************************************************/ @@ -30,7 +30,7 @@ extern "C" DWORD PluginCore_GetLastError(); 意思:是否成功 备注: *********************************************************************/ -extern "C" BOOL PluginCore_Init(LPVOID lParam = NULL); +extern "C" bool PluginCore_Init(XPVOID lParam = NULL); /******************************************************************** 函数名称:PluginCore_UnInit 函数功能:卸载插件 @@ -48,4 +48,4 @@ extern "C" void PluginCore_UnInit(); 意思:是否成功 备注: *********************************************************************/ -extern "C" BOOL PluginCore_Call(TCHAR * **pppHDRList, int nListCount, int* pInt_HTTPCode, TCHAR * ptszMsgBuffer, int* pInt_MsgLen, LPCTSTR lpszMsgBuffer = NULL, int nMsgLen = 0); \ No newline at end of file +extern "C" bool PluginCore_Call(XCHAR * **pppHDRList, int nListCount, int* pInt_HTTPCode, XCHAR * ptszMsgBuffer, int* pInt_MsgLen, LPCXSTR lpszMsgBuffer = NULL, int nMsgLen = 0); \ No newline at end of file diff --git a/XEngine_Source/XEngine_PluginModule/ModulePlugin_Password/Plugin_Password/Plugin_Password.cpp b/XEngine_Source/XEngine_PluginModule/ModulePlugin_Password/Plugin_Password/Plugin_Password.cpp index e92a222335ddcd15b057c7c371a02f94b267aa9f..ca43367ca469083e2bc327fa02875b85c506c2c7 100644 --- a/XEngine_Source/XEngine_PluginModule/ModulePlugin_Password/Plugin_Password/Plugin_Password.cpp +++ b/XEngine_Source/XEngine_PluginModule/ModulePlugin_Password/Plugin_Password/Plugin_Password.cpp @@ -33,11 +33,11 @@ CPlugin_Password::~CPlugin_Password() 意思:是否成功 备注: *********************************************************************/ -BOOL CPlugin_Password::PluginCore_Init(LPVOID lParam) +bool CPlugin_Password::PluginCore_Init(XPVOID lParam) { - Pass_IsErrorOccur = FALSE; + Pass_IsErrorOccur = false; - return TRUE; + return true; } /******************************************************************** 函数名称:PluginCore_UnInit @@ -49,7 +49,7 @@ BOOL CPlugin_Password::PluginCore_Init(LPVOID lParam) *********************************************************************/ void CPlugin_Password::PluginCore_UnInit() { - Pass_IsErrorOccur = FALSE; + Pass_IsErrorOccur = false; } /******************************************************************** 函数名称:PluginCore_Call @@ -59,20 +59,20 @@ void CPlugin_Password::PluginCore_UnInit() 意思:是否成功 备注: *********************************************************************/ -BOOL CPlugin_Password::PluginCore_Call(TCHAR*** pppHDRList, int nListCount, int* pInt_HTTPCode, TCHAR* ptszMsgBuffer, int* pInt_MsgLen, LPCTSTR lpszMsgBuffer, int nMsgLen) +bool CPlugin_Password::PluginCore_Call(XCHAR*** pppHDRList, int nListCount, int* pInt_HTTPCode, XCHAR* ptszMsgBuffer, int* pInt_MsgLen, LPCXSTR lpszMsgBuffer, int nMsgLen) { - Pass_IsErrorOccur = FALSE; + Pass_IsErrorOccur = false; if ((NULL == pInt_HTTPCode) || (NULL == ptszMsgBuffer) || (NULL == pInt_MsgLen)) { - Pass_IsErrorOccur = TRUE; + Pass_IsErrorOccur = true; Pass_dwErrorCode = ERROR_XENGINE_APISERVICE_PLUGIN_MODULE_PASS_PARAMENT; - return FALSE; + return false; } - TCHAR tszKeyName[128]; - TCHAR tszParamType[128]; - TCHAR tszParamLength[128]; - TCHAR tszPassword[MAX_PATH]; + XCHAR tszKeyName[128]; + XCHAR tszParamType[128]; + XCHAR tszParamLength[128]; + XCHAR tszPassword[MAX_PATH]; Json::Value st_JsonRoot; Json::Value st_JsonObject; Json::StreamWriterBuilder st_JsonBuilder; @@ -97,18 +97,18 @@ BOOL CPlugin_Password::PluginCore_Call(TCHAR*** pppHDRList, int nListCount, int* *pInt_HTTPCode = 200; *pInt_MsgLen = Json::writeString(st_JsonBuilder, st_JsonRoot).length(); memcpy(ptszMsgBuffer, Json::writeString(st_JsonBuilder, st_JsonRoot).c_str(), *pInt_MsgLen); - return TRUE; + return true; } ////////////////////////////////////////////////////////////////////////// // 保护函数 ////////////////////////////////////////////////////////////////////////// -BOOL CPlugin_Password::Plugin_Password_Creator(LPCTSTR lpszPassType, LPCTSTR lpszLength, TCHAR* ptszPassStr) +bool CPlugin_Password::Plugin_Password_Creator(LPCXSTR lpszPassType, LPCXSTR lpszLength, XCHAR* ptszPassStr) { - Pass_IsErrorOccur = FALSE; + Pass_IsErrorOccur = false; - int nType = _ttoi(lpszPassType); - int nLen = _ttoi(lpszLength); - TCHAR tszPassBuffer[MAX_PATH]; + int nType = _ttxoi(lpszPassType); + int nLen = _ttxoi(lpszLength); + XCHAR tszPassBuffer[MAX_PATH]; memset(tszPassBuffer, '\0', MAX_PATH); if (0 == nType) @@ -119,15 +119,15 @@ BOOL CPlugin_Password::Plugin_Password_Creator(LPCTSTR lpszPassType, LPCTSTR lps { for (int i = 0; i < nLen; i++) { - _stprintf(&tszPassBuffer[i], _T("%d"), rand() % 9); + _xstprintf(&tszPassBuffer[i], _X("%d"), rand() % 9); } } else if (2 == nType) { for (int i = 0; i < nLen; i++) { - _stprintf(&tszPassBuffer[i], _T("%c"), (rand() % 26) + 65); + _xstprintf(&tszPassBuffer[i], _X("%c"), (rand() % 26) + 65); } } - return TRUE; + return true; } \ No newline at end of file diff --git a/XEngine_Source/XEngine_PluginModule/ModulePlugin_Password/Plugin_Password/Plugin_Password.h b/XEngine_Source/XEngine_PluginModule/ModulePlugin_Password/Plugin_Password/Plugin_Password.h index e335ff5f279bd6eef6bf59df67101ad1ae34ce65..bf79a251e25d457bdaa35d096a763ad256e8ad7d 100644 --- a/XEngine_Source/XEngine_PluginModule/ModulePlugin_Password/Plugin_Password/Plugin_Password.h +++ b/XEngine_Source/XEngine_PluginModule/ModulePlugin_Password/Plugin_Password/Plugin_Password.h @@ -17,10 +17,10 @@ public: CPlugin_Password(); ~CPlugin_Password(); public: - BOOL PluginCore_Init(LPVOID lParam); + bool PluginCore_Init(XPVOID lParam); void PluginCore_UnInit(); - BOOL PluginCore_Call(TCHAR*** pppHDRList, int nListCount, int* pInt_HTTPCode, TCHAR* ptszMsgBuffer, int* pInt_MsgLen, LPCTSTR lpszMsgBuffer, int nMsgLen); + bool PluginCore_Call(XCHAR*** pppHDRList, int nListCount, int* pInt_HTTPCode, XCHAR* ptszMsgBuffer, int* pInt_MsgLen, LPCXSTR lpszMsgBuffer, int nMsgLen); protected: - BOOL Plugin_Password_Creator(LPCTSTR lpszPassType, LPCTSTR lpszLength, TCHAR* ptszPassStr); + bool Plugin_Password_Creator(LPCXSTR lpszPassType, LPCXSTR lpszLength, XCHAR* ptszPassStr); private: }; diff --git a/XEngine_Source/XEngine_PluginModule/ModulePlugin_Password/dllmain.cpp b/XEngine_Source/XEngine_PluginModule/ModulePlugin_Password/dllmain.cpp index daed8c8f7ac50ca1466016a0529648d18125a7e7..594ff2123d474b129bb2014fb572f03c9741bf0b 100644 --- a/XEngine_Source/XEngine_PluginModule/ModulePlugin_Password/dllmain.cpp +++ b/XEngine_Source/XEngine_PluginModule/ModulePlugin_Password/dllmain.cpp @@ -1,9 +1,9 @@ // dllmain.cpp : 定义 DLL 应用程序的入口点。 #include "pch.h" -BOOL APIENTRY DllMain( HMODULE hModule, - DWORD ul_reason_for_call, - LPVOID lpReserved +bool APIENTRY DllMain( HMODULE hModule, + XLONG ul_reason_for_call, + XPVOID lpReserved ) { switch (ul_reason_for_call) @@ -14,6 +14,6 @@ BOOL APIENTRY DllMain( HMODULE hModule, case DLL_PROCESS_DETACH: break; } - return TRUE; + return true; } diff --git a/XEngine_Source/XEngine_PluginModule/ModulePlugin_Password/pch.cpp b/XEngine_Source/XEngine_PluginModule/ModulePlugin_Password/pch.cpp index 4bcb196cf4141ff05689bfb7885f290d31f46c21..9ca32e60311ce790c3204d0aa876bd645348444f 100644 --- a/XEngine_Source/XEngine_PluginModule/ModulePlugin_Password/pch.cpp +++ b/XEngine_Source/XEngine_PluginModule/ModulePlugin_Password/pch.cpp @@ -11,21 +11,21 @@ // Purpose: 导出实现 // History: *********************************************************************/ -BOOL Pass_IsErrorOccur = FALSE; -DWORD Pass_dwErrorCode = 0; +bool Pass_IsErrorOccur = false; +XLONG Pass_dwErrorCode = 0; ////////////////////////////////////////////////////////////////////////// CPlugin_Password m_PluginPass; ////////////////////////////////////////////////////////////////////////// // 导出函数定义 ////////////////////////////////////////////////////////////////////////// -extern "C" DWORD PluginCore_GetLastError() +extern "C" XLONG PluginCore_GetLastError() { return Pass_dwErrorCode; } /********************************************************************************* * 导出函数定义 * *********************************************************************************/ -extern "C" BOOL PluginCore_Init(LPVOID lParam) +extern "C" bool PluginCore_Init(XPVOID lParam) { return m_PluginPass.PluginCore_Init(lParam); } @@ -33,7 +33,7 @@ extern "C" void PluginCore_UnInit() { m_PluginPass.PluginCore_UnInit(); } -extern "C" BOOL PluginCore_Call(TCHAR * **pppHDRList, int nListCount, int* pInt_HTTPCode, TCHAR * ptszMsgBuffer, int* pInt_MsgLen, LPCTSTR lpszMsgBuffer, int nMsgLen) +extern "C" bool PluginCore_Call(XCHAR * **pppHDRList, int nListCount, int* pInt_HTTPCode, XCHAR * ptszMsgBuffer, int* pInt_MsgLen, LPCXSTR lpszMsgBuffer, int nMsgLen) { return m_PluginPass.PluginCore_Call(pppHDRList, nListCount, pInt_HTTPCode, ptszMsgBuffer, pInt_MsgLen, lpszMsgBuffer, nMsgLen); } \ No newline at end of file diff --git a/XEngine_Source/XEngine_PluginModule/ModulePlugin_Password/pch.h b/XEngine_Source/XEngine_PluginModule/ModulePlugin_Password/pch.h index e1d725355c41ea14c9231884333b8c405cf1473c..b428935286ac184b7d2d3d5a6871f91ec4fac747 100644 --- a/XEngine_Source/XEngine_PluginModule/ModulePlugin_Password/pch.h +++ b/XEngine_Source/XEngine_PluginModule/ModulePlugin_Password/pch.h @@ -33,8 +33,8 @@ using namespace std; // Purpose: 公用头文件 // History: *********************************************************************/ -extern BOOL Pass_IsErrorOccur; -extern DWORD Pass_dwErrorCode; +extern bool Pass_IsErrorOccur; +extern XLONG Pass_dwErrorCode; #ifdef _MSC_BUILD diff --git a/XEngine_Source/XEngine_PluginModule/ModulePlugin_Phone/Makefile b/XEngine_Source/XEngine_PluginModule/ModulePlugin_Phone/Makefile index 34066e4ba943ca2034f192cbb9273ecc80de7556..fc60636d147773de1284f8d92f745beb1ec9a8a9 100644 --- a/XEngine_Source/XEngine_PluginModule/ModulePlugin_Phone/Makefile +++ b/XEngine_Source/XEngine_PluginModule/ModulePlugin_Phone/Makefile @@ -1,30 +1,23 @@ CC = g++ -Wall -std=c++17 -fPIC -SHAREFLAG = -shared -SHAREDLL = so +PLATFORM = linux +PLATVER = +PLATDIR = +FILEEXT = +LIBFLAG = RELEASE = 0 UNICODE = 0 -INCLUDE = -I ./ -I ../../XEngine_ThirdPart/jsoncpp -LOADBIN = -L /usr/local/lib/XEngine_Release/XEngine_BaseLib -L ../../XEngine_ThirdPart/jsoncpp +LOADHDR = -I ./ -I ../../XEngine_ThirdPart/jsoncpp +LOADSO = -L /usr/local/lib/XEngine_Release/XEngine_BaseLib -L ../../XEngine_ThirdPart/jsoncpp LIB = -lXEngine_BaseLib -ljsoncpp -LIBEX = -ldl -lpthread -LOADSO = -Wl,-rpath=../,--disable-new-dtags -LIBINCLUDE = ModulePlugin_DBPhone.o ModulePlugin_APIPhone.o pch.o - -ifeq ($(shell uname),Darwin) - SHAREDLL = dylib - SHAREFLAG = -dynamiclib - LOADSO = -else - SHAREDLL = so - SHAREFLAG = -shared -endif +LIBEX = +OBJECTS = ModulePlugin_DBPhone.o ModulePlugin_APIPhone.o pch.o ifeq ($(RELEASE),1) -FLAGS = -c -O2 +FLAGS = -c DEBUG = else -FLAGS = -c -DEBUG = -g +FLAGS = -c -lc_p +DEBUG = -g -pg endif ifeq ($(UNICODE),1) @@ -33,25 +26,47 @@ else UNICODE = endif +ifeq ($(PLATFORM),linux) + ifeq (/etc/redhat-release,$(wildcard /etc/redhat-release)) + PLATVER = -D __CENTOS__ + PLATDIR = XEngine_Linux/Centos + else + PLATVER = -D __UBUNTU__ + PLATDIR = XEngine_Linux/Ubuntu + endif + FILEEXT = so + LIBFLAG = -shared + LIBEX = -lpthread -lrt -ldl + LOADBIN = -Wl,-rpath=./,--disable-new-dtags +else ifeq ($(PLATFORM),mac) + CC += -Wno-deprecated-declarations + PLATVER = -D __MACOS__ + PLATDIR = XEngine_Mac + FILEEXT = dylib + LIBFLAG = -dynamiclib + LIBEX = -lpthread -ldl + LOADBIN = -Wl,-rpath,@loader_path/./ +endif + -all:$(LIBINCLUDE) - $(CC) $(DEBUG) $(LIBINCLUDE) -o libModulePlugin_Phone.$(SHAREDLL) $(SHAREFLAG) -fPIC $(LOADBIN) $(LIB) $(LIBEX) $(LOADSO) +all:$(OBJECTS) + $(CC) $(DEBUG) $(OBJECTS) -o libModulePlugin_Phone.$(FILEEXT) $(LIBFLAG) $(LIB) $(LIBEX) $(LOADSO) $(LOADBIN) ModulePlugin_DBPhone.o:./ModulePlugin_DBPhone/ModulePlugin_DBPhone.cpp - $(CC) $(DEBUG) $(FLAGS) $(UNICODE) $(INCLUDE) ./ModulePlugin_DBPhone/ModulePlugin_DBPhone.cpp + $(CC) $(DEBUG) $(FLAGS) $(UNICODE) $(PLATVER) $(LOADHDR) ./ModulePlugin_DBPhone/ModulePlugin_DBPhone.cpp ModulePlugin_APIPhone.o:./ModulePlugin_APIPhone/ModulePlugin_APIPhone.cpp - $(CC) $(DEBUG) $(FLAGS) $(UNICODE) $(INCLUDE) ./ModulePlugin_APIPhone/ModulePlugin_APIPhone.cpp + $(CC) $(DEBUG) $(FLAGS) $(UNICODE) $(PLATVER) $(LOADHDR) ./ModulePlugin_APIPhone/ModulePlugin_APIPhone.cpp pch.o:./pch.cpp - $(CC) $(DEBUG) $(FLAGS) $(UNICODE) $(INCLUDE) ./pch.cpp + $(CC) $(DEBUG) $(FLAGS) $(UNICODE) $(PLATVER) $(LOADHDR) ./pch.cpp InstallAll:InstallSo -InstallSo:./libModulePlugin_Phone.$(SHAREDLL) - cp ./libModulePlugin_Phone.$(SHAREDLL) ../../../XEngine_Release/XEngine_LibPlugin/libModulePlugin_Phone.$(SHAREDLL) +InstallSo:./libModulePlugin_Phone.$(FILEEXT) + cp ./libModulePlugin_Phone.$(FILEEXT) ../../../XEngine_Release/XEngine_LibPlugin/libModulePlugin_Phone.$(FILEEXT) CleanAll:CleanObj CleanMk CleanObj: rm *.o CleanMk: - rm *.$(SHAREDLL) \ No newline at end of file + rm *.$(FILEEXT) \ No newline at end of file diff --git a/XEngine_Source/XEngine_PluginModule/ModulePlugin_Phone/ModulePlugin_APIPhone/ModulePlugin_APIPhone.cpp b/XEngine_Source/XEngine_PluginModule/ModulePlugin_Phone/ModulePlugin_APIPhone/ModulePlugin_APIPhone.cpp index ce979821e13800ae8e49c350d599145a8b5b706d..a749d7fe36ba11cd1bffc71144d9e3d0bbd05c63 100644 --- a/XEngine_Source/XEngine_PluginModule/ModulePlugin_Phone/ModulePlugin_APIPhone/ModulePlugin_APIPhone.cpp +++ b/XEngine_Source/XEngine_PluginModule/ModulePlugin_Phone/ModulePlugin_APIPhone/ModulePlugin_APIPhone.cpp @@ -33,15 +33,15 @@ CModulePlugin_APIPhone::~CModulePlugin_APIPhone() 意思:是否成功 备注: *********************************************************************/ -BOOL CModulePlugin_APIPhone::PluginCore_Init(LPVOID lParam) +bool CModulePlugin_APIPhone::PluginCore_Init(XPVOID lParam) { - Phone_IsErrorOccur = FALSE; + Phone_IsErrorOccur = false; - if (!m_DBPhone.ModuleDatabase_Phone_Init(_T("./XEngine_DBFile/phone.dat"))) + if (!m_DBPhone.ModuleDatabase_Phone_Init(_X("./XEngine_DBFile/phone.dat"))) { - return FALSE; + return false; } - return TRUE; + return true; } /******************************************************************** 函数名称:PluginCore_UnInit @@ -53,7 +53,7 @@ BOOL CModulePlugin_APIPhone::PluginCore_Init(LPVOID lParam) *********************************************************************/ void CModulePlugin_APIPhone::PluginCore_UnInit() { - Phone_IsErrorOccur = FALSE; + Phone_IsErrorOccur = false; m_DBPhone.ModuleDatabase_Phone_Destory(); } @@ -65,18 +65,18 @@ void CModulePlugin_APIPhone::PluginCore_UnInit() 意思:是否成功 备注: *********************************************************************/ -BOOL CModulePlugin_APIPhone::PluginCore_Call(TCHAR*** pppHDRList, int nListCount, int* pInt_HTTPCode, TCHAR* ptszMsgBuffer, int* pInt_MsgLen, LPCTSTR lpszMsgBuffer, int nMsgLen) +bool CModulePlugin_APIPhone::PluginCore_Call(XCHAR*** pppHDRList, int nListCount, int* pInt_HTTPCode, XCHAR* ptszMsgBuffer, int* pInt_MsgLen, LPCXSTR lpszMsgBuffer, int nMsgLen) { - Phone_IsErrorOccur = FALSE; + Phone_IsErrorOccur = false; if ((NULL == pInt_HTTPCode) || (NULL == ptszMsgBuffer) || (NULL == pInt_MsgLen)) { - Phone_IsErrorOccur = TRUE; + Phone_IsErrorOccur = true; Phone_dwErrorCode = ERROR_XENGINE_APISERVICE_PLUGIN_MODULE_PHONE_PARAMENT; - return FALSE; + return false; } - TCHAR tszKeyName[128]; - TCHAR tszKeyValue[128]; + XCHAR tszKeyName[128]; + XCHAR tszKeyValue[128]; Json::Value st_JsonRoot; Json::Value st_JsonObject; Json::StreamWriterBuilder st_JsonBuilder; @@ -88,10 +88,10 @@ BOOL CModulePlugin_APIPhone::PluginCore_Call(TCHAR*** pppHDRList, int nListCount BaseLib_OperatorString_GetKeyValue((*pppHDRList)[1], "=", tszKeyName, tszKeyValue); - st_PhoneInfo.nPhoneNumber = _ttoi64(tszKeyValue); + st_PhoneInfo.nPhoneNumber = _ttxoll(tszKeyValue); if (!m_DBPhone.ModuleDatabase_Phone_Query(tszKeyValue, &st_PhoneInfo)) { - return FALSE; + return false; } st_JsonObject["nPhoneNumber"] = (Json::Value::Int64)st_PhoneInfo.nPhoneNumber; st_JsonObject["tszProvincer"] = st_PhoneInfo.tszProvincer; @@ -107,5 +107,5 @@ BOOL CModulePlugin_APIPhone::PluginCore_Call(TCHAR*** pppHDRList, int nListCount *pInt_HTTPCode = 200; *pInt_MsgLen = Json::writeString(st_JsonBuilder, st_JsonRoot).length(); memcpy(ptszMsgBuffer, Json::writeString(st_JsonBuilder, st_JsonRoot).c_str(), *pInt_MsgLen); - return TRUE; + return true; } \ No newline at end of file diff --git a/XEngine_Source/XEngine_PluginModule/ModulePlugin_Phone/ModulePlugin_APIPhone/ModulePlugin_APIPhone.h b/XEngine_Source/XEngine_PluginModule/ModulePlugin_Phone/ModulePlugin_APIPhone/ModulePlugin_APIPhone.h index 91988c13abd2dc822e771b1dd61cc8aed735106b..904a564f23ff27a3c43dad89e456de63a2e38745 100644 --- a/XEngine_Source/XEngine_PluginModule/ModulePlugin_Phone/ModulePlugin_APIPhone/ModulePlugin_APIPhone.h +++ b/XEngine_Source/XEngine_PluginModule/ModulePlugin_Phone/ModulePlugin_APIPhone/ModulePlugin_APIPhone.h @@ -17,9 +17,9 @@ public: CModulePlugin_APIPhone(); ~CModulePlugin_APIPhone(); public: - BOOL PluginCore_Init(LPVOID lParam); + bool PluginCore_Init(XPVOID lParam); void PluginCore_UnInit(); - BOOL PluginCore_Call(TCHAR*** pppHDRList, int nListCount, int* pInt_HTTPCode, TCHAR* ptszMsgBuffer, int* pInt_MsgLen, LPCTSTR lpszMsgBuffer, int nMsgLen); + bool PluginCore_Call(XCHAR*** pppHDRList, int nListCount, int* pInt_HTTPCode, XCHAR* ptszMsgBuffer, int* pInt_MsgLen, LPCXSTR lpszMsgBuffer, int nMsgLen); protected: private: CModulePlugin_DBPhone m_DBPhone; diff --git a/XEngine_Source/XEngine_PluginModule/ModulePlugin_Phone/ModulePlugin_DBPhone/ModulePlugin_DBPhone.cpp b/XEngine_Source/XEngine_PluginModule/ModulePlugin_Phone/ModulePlugin_DBPhone/ModulePlugin_DBPhone.cpp index ebe9ad50e2388de036ddecabdae5f50fe3f4ade8..cd0f1dec5a24af87b607344409d4f6322990b3ff 100644 --- a/XEngine_Source/XEngine_PluginModule/ModulePlugin_Phone/ModulePlugin_DBPhone/ModulePlugin_DBPhone.cpp +++ b/XEngine_Source/XEngine_PluginModule/ModulePlugin_Phone/ModulePlugin_DBPhone/ModulePlugin_DBPhone.cpp @@ -34,35 +34,35 @@ CModulePlugin_DBPhone::~CModulePlugin_DBPhone() 意思:是否成功 备注: *********************************************************************/ -BOOL CModulePlugin_DBPhone::ModuleDatabase_Phone_Init(LPCTSTR lpszSQLFile) +bool CModulePlugin_DBPhone::ModuleDatabase_Phone_Init(LPCXSTR lpszSQLFile) { - Phone_IsErrorOccur = FALSE; + Phone_IsErrorOccur = false; if (NULL == lpszSQLFile) { - Phone_IsErrorOccur = TRUE; + Phone_IsErrorOccur = true; Phone_dwErrorCode = ERROR_XENGINE_APISERVICE_PLUGIN_MODULE_PHONE_PARAMENT; - return FALSE; + return false; } //打开数据库 - FILE* pSt_File = _tfopen(lpszSQLFile, _T("rb")); + FILE* pSt_File = _xtfopen(lpszSQLFile, _X("rb")); if (NULL == pSt_File) { - Phone_IsErrorOccur = TRUE; + Phone_IsErrorOccur = true; Phone_dwErrorCode = ERROR_XENGINE_APISERVICE_PLUGIN_MODULE_PHONE_NOTFOUND; - return FALSE; + return false; } //申请内存 - ptszMsgBuffer = (TCHAR*)malloc(XENGINE_APISERVICE_DATABASE_PHONE_BUFFER_SIZE); + ptszMsgBuffer = (XCHAR*)malloc(XENGINE_APISERVICE_DATABASE_PHONE_BUFFER_SIZE); if (NULL == ptszMsgBuffer) { - Phone_IsErrorOccur = TRUE; + Phone_IsErrorOccur = true; Phone_dwErrorCode = ERROR_XENGINE_APISERVICE_PLUGIN_MODULE_PHONE_MALLOC; - return FALSE; + return false; } memset(ptszMsgBuffer, '\0', XENGINE_APISERVICE_DATABASE_PHONE_BUFFER_SIZE); //读取内容 - while (TRUE) + while (true) { int nRet = fread(ptszMsgBuffer + nFLen, 1, 2048, pSt_File); if (nRet <= 0) @@ -74,7 +74,7 @@ BOOL CModulePlugin_DBPhone::ModuleDatabase_Phone_Init(LPCTSTR lpszSQLFile) fclose(pSt_File); memcpy(&st_PhoneHdr, ptszMsgBuffer, sizeof(XENGINE_DBPHONEHDR)); nCount = (nFLen - st_PhoneHdr.nOffset) / XENGINE_APISERVICE_DATABASE_PHONE_INDEX_LEN; - return TRUE; + return true; } /******************************************************************** 函数名称:ModuleDatabase_Phone_Destory @@ -84,13 +84,13 @@ BOOL CModulePlugin_DBPhone::ModuleDatabase_Phone_Init(LPCTSTR lpszSQLFile) 意思:是否成功 备注: *********************************************************************/ -BOOL CModulePlugin_DBPhone::ModuleDatabase_Phone_Destory() +bool CModulePlugin_DBPhone::ModuleDatabase_Phone_Destory() { - Phone_IsErrorOccur = FALSE; + Phone_IsErrorOccur = false; free(ptszMsgBuffer); ptszMsgBuffer = NULL; - return TRUE; + return true; } /******************************************************************** 函数名称:ModuleDatabase_Phone_Query @@ -110,30 +110,30 @@ BOOL CModulePlugin_DBPhone::ModuleDatabase_Phone_Destory() 意思:是否成功 备注: *********************************************************************/ -BOOL CModulePlugin_DBPhone::ModuleDatabase_Phone_Query(LPCTSTR lpszPhoneNumber, XENGINE_PHONEINFO* pSt_PhoneInfo) +bool CModulePlugin_DBPhone::ModuleDatabase_Phone_Query(LPCXSTR lpszPhoneNumber, XENGINE_PHONEINFO* pSt_PhoneInfo) { - Phone_IsErrorOccur = FALSE; + Phone_IsErrorOccur = false; if ((NULL == lpszPhoneNumber) || (NULL == pSt_PhoneInfo)) { - Phone_IsErrorOccur = TRUE; + Phone_IsErrorOccur = true; Phone_dwErrorCode = ERROR_XENGINE_APISERVICE_PLUGIN_MODULE_PHONE_PARAMENT; - return FALSE; + return false; } - size_t nPLen = _tcslen(lpszPhoneNumber); + size_t nPLen = _tcsxlen(lpszPhoneNumber); size_t nPhone = 0; //不能超过7 if (nPLen > 7) { - TCHAR tszPhone[64]; + XCHAR tszPhone[64]; memset(tszPhone, '\0', sizeof(tszPhone)); memcpy(tszPhone, lpszPhoneNumber, 7); - nPhone = _ttoi(tszPhone); + nPhone = _ttxoi(tszPhone); } else { - nPhone = _ttoi(lpszPhoneNumber); + nPhone = _ttxoi(lpszPhoneNumber); } size_t nLeft = 0; @@ -162,7 +162,7 @@ BOOL CModulePlugin_DBPhone::ModuleDatabase_Phone_Query(LPCTSTR lpszPhoneNumber, else { int i = 0; - while (TRUE) + while (true) { if (ptszMsgBuffer[i + st_DBRecord.nOffset] == '\0') { @@ -174,12 +174,12 @@ BOOL CModulePlugin_DBPhone::ModuleDatabase_Phone_Query(LPCTSTR lpszPhoneNumber, //转换数据 if (!ModuleDatabase_Phone_Convert(ptszMsgBuffer + st_DBRecord.nOffset, i, pSt_PhoneInfo)) { - return FALSE; + return false; } break; } } - return TRUE; + return true; } ////////////////////////////////////////////////////////////////////////// // 保护函数 @@ -207,49 +207,49 @@ BOOL CModulePlugin_DBPhone::ModuleDatabase_Phone_Query(LPCTSTR lpszPhoneNumber, 意思:是否成功 备注: *********************************************************************/ -BOOL CModulePlugin_DBPhone::ModuleDatabase_Phone_Convert(LPCTSTR lpszPhoneInfo, int nMsgLen, XENGINE_PHONEINFO* pSt_PhoneInfo) +bool CModulePlugin_DBPhone::ModuleDatabase_Phone_Convert(LPCXSTR lpszPhoneInfo, int nMsgLen, XENGINE_PHONEINFO* pSt_PhoneInfo) { - Phone_IsErrorOccur = FALSE; + Phone_IsErrorOccur = false; - TCHAR tszMsgBuffer[128]; + XCHAR tszMsgBuffer[128]; memset(tszMsgBuffer, '\0', sizeof(tszMsgBuffer)); memcpy(tszMsgBuffer, lpszPhoneInfo, nMsgLen); //省 - TCHAR* ptszTokStr = _tcstok(tszMsgBuffer, _T("|")); + XCHAR* ptszTokStr = _tcsxtok(tszMsgBuffer, _X("|")); if (NULL == ptszTokStr) { - Phone_IsErrorOccur = TRUE; + Phone_IsErrorOccur = true; Phone_dwErrorCode = ERROR_XENGINE_APISERVICE_PLUGIN_MODULE_PHONE_NOTFOUND; - return FALSE; + return false; } - _tcscpy(pSt_PhoneInfo->tszProvincer, ptszTokStr); + _tcsxcpy(pSt_PhoneInfo->tszProvincer, ptszTokStr); //市区 - ptszTokStr = _tcstok(NULL, _T("|")); + ptszTokStr = _tcsxtok(NULL, _X("|")); if (NULL == ptszTokStr) { - Phone_IsErrorOccur = TRUE; + Phone_IsErrorOccur = true; Phone_dwErrorCode = ERROR_XENGINE_APISERVICE_PLUGIN_MODULE_PHONE_NOTFOUND; - return FALSE; + return false; } - _tcscpy(pSt_PhoneInfo->tszCity, ptszTokStr); + _tcsxcpy(pSt_PhoneInfo->tszCity, ptszTokStr); //邮编 - ptszTokStr = _tcstok(NULL, _T("|")); + ptszTokStr = _tcsxtok(NULL, _X("|")); if (NULL == ptszTokStr) { - Phone_IsErrorOccur = TRUE; + Phone_IsErrorOccur = true; Phone_dwErrorCode = ERROR_XENGINE_APISERVICE_PLUGIN_MODULE_PHONE_NOTFOUND; - return FALSE; + return false; } - pSt_PhoneInfo->nZipCode = _ttoi(ptszTokStr); + pSt_PhoneInfo->nZipCode = _ttxoi(ptszTokStr); //区号 - ptszTokStr = _tcstok(NULL, _T("|")); + ptszTokStr = _tcsxtok(NULL, _X("|")); if (NULL == ptszTokStr) { - Phone_IsErrorOccur = TRUE; + Phone_IsErrorOccur = true; Phone_dwErrorCode = ERROR_XENGINE_APISERVICE_PLUGIN_MODULE_PHONE_NOTFOUND; - return FALSE; + return false; } - pSt_PhoneInfo->nAreaCode = _ttoi(ptszTokStr); + pSt_PhoneInfo->nAreaCode = _ttxoi(ptszTokStr); - return TRUE; + return true; } \ No newline at end of file diff --git a/XEngine_Source/XEngine_PluginModule/ModulePlugin_Phone/ModulePlugin_DBPhone/ModulePlugin_DBPhone.h b/XEngine_Source/XEngine_PluginModule/ModulePlugin_Phone/ModulePlugin_DBPhone/ModulePlugin_DBPhone.h index 56a15034c763793cc7c8cb859bece55cf26c5b78..27bd947b20a961691ae2cf00180343e1255f34d5 100644 --- a/XEngine_Source/XEngine_PluginModule/ModulePlugin_Phone/ModulePlugin_DBPhone/ModulePlugin_DBPhone.h +++ b/XEngine_Source/XEngine_PluginModule/ModulePlugin_Phone/ModulePlugin_DBPhone/ModulePlugin_DBPhone.h @@ -15,7 +15,7 @@ typedef struct { - BYTE byVersion[4]; + XBYTE byVersion[4]; unsigned int nOffset; }XENGINE_DBPHONEHDR; @@ -23,7 +23,7 @@ typedef struct { unsigned int nPhone; unsigned int nOffset; - BYTE byType; + XBYTE byType; }XENGINE_DBPHONERECORD; class CModulePlugin_DBPhone @@ -32,15 +32,15 @@ public: CModulePlugin_DBPhone(); ~CModulePlugin_DBPhone(); public: - BOOL ModuleDatabase_Phone_Init(LPCTSTR lpszSQLFile); - BOOL ModuleDatabase_Phone_Destory(); - BOOL ModuleDatabase_Phone_Query(LPCTSTR lpszPhoneNumber, XENGINE_PHONEINFO* pSt_PhoneInfo); + bool ModuleDatabase_Phone_Init(LPCXSTR lpszSQLFile); + bool ModuleDatabase_Phone_Destory(); + bool ModuleDatabase_Phone_Query(LPCXSTR lpszPhoneNumber, XENGINE_PHONEINFO* pSt_PhoneInfo); protected: - BOOL ModuleDatabase_Phone_Convert(LPCTSTR lpszPhoneInfo, int nMsgLen, XENGINE_PHONEINFO* pSt_PhoneInfo); + bool ModuleDatabase_Phone_Convert(LPCXSTR lpszPhoneInfo, int nMsgLen, XENGINE_PHONEINFO* pSt_PhoneInfo); private: XENGINE_DBPHONEHDR st_PhoneHdr; private: size_t nFLen = 0; size_t nCount = 0; - TCHAR* ptszMsgBuffer; + XCHAR* ptszMsgBuffer; }; \ No newline at end of file diff --git a/XEngine_Source/XEngine_PluginModule/ModulePlugin_Phone/ModulePlugin_Phone.vcxproj b/XEngine_Source/XEngine_PluginModule/ModulePlugin_Phone/ModulePlugin_Phone.vcxproj index 51c35a8db736b49c1f889b4016431a7dbff84771..8918a35f5fae691954a411c2828774e51835536f 100644 --- a/XEngine_Source/XEngine_PluginModule/ModulePlugin_Phone/ModulePlugin_Phone.vcxproj +++ b/XEngine_Source/XEngine_PluginModule/ModulePlugin_Phone/ModulePlugin_Phone.vcxproj @@ -31,27 +31,27 @@ DynamicLibrary true v143 - MultiByte + Unicode DynamicLibrary false v143 true - MultiByte + Unicode DynamicLibrary true v143 - MultiByte + Unicode DynamicLibrary false v143 true - MultiByte + Unicode diff --git a/XEngine_Source/XEngine_PluginModule/ModulePlugin_Phone/PluginPhone_Define.h b/XEngine_Source/XEngine_PluginModule/ModulePlugin_Phone/PluginPhone_Define.h index 6297cc5fd9fdd97841637127752024c1be3f0c01..d3744ec275cea954726c77c060a4a52dc82faab0 100644 --- a/XEngine_Source/XEngine_PluginModule/ModulePlugin_Phone/PluginPhone_Define.h +++ b/XEngine_Source/XEngine_PluginModule/ModulePlugin_Phone/PluginPhone_Define.h @@ -26,8 +26,8 @@ typedef enum ////////////////////////////////////////////////////////////////////////// typedef struct { - TCHAR tszProvincer[64]; //省/自治区/直辖市 - TCHAR tszCity[64]; //市/区 + XCHAR tszProvincer[64]; //省/自治区/直辖市 + XCHAR tszCity[64]; //市/区 __int64x nPhoneNumber; //电话号码 int nZipCode; //邮编 int nAreaCode; //区号 @@ -36,7 +36,7 @@ typedef struct ////////////////////////////////////////////////////////////////////////// // 导出函数定义 ////////////////////////////////////////////////////////////////////////// -extern "C" DWORD PluginCore_GetLastError(); +extern "C" XLONG PluginCore_GetLastError(); /********************************************************************************* * 导出函数定义 * *********************************************************************************/ @@ -53,7 +53,7 @@ extern "C" DWORD PluginCore_GetLastError(); 意思:是否成功 备注: *********************************************************************/ -extern "C" BOOL PluginCore_Init(LPVOID lParam = NULL); +extern "C" bool PluginCore_Init(XPVOID lParam = NULL); /******************************************************************** 函数名称:PluginCore_UnInit 函数功能:卸载插件 @@ -71,4 +71,4 @@ extern "C" void PluginCore_UnInit(); 意思:是否成功 备注: *********************************************************************/ -extern "C" BOOL PluginCore_Call(TCHAR * **pppHDRList, int nListCount, int* pInt_HTTPCode, TCHAR * ptszMsgBuffer, int* pInt_MsgLen, LPCTSTR lpszMsgBuffer = NULL, int nMsgLen = 0); \ No newline at end of file +extern "C" bool PluginCore_Call(XCHAR * **pppHDRList, int nListCount, int* pInt_HTTPCode, XCHAR * ptszMsgBuffer, int* pInt_MsgLen, LPCXSTR lpszMsgBuffer = NULL, int nMsgLen = 0); \ No newline at end of file diff --git a/XEngine_Source/XEngine_PluginModule/ModulePlugin_Phone/dllmain.cpp b/XEngine_Source/XEngine_PluginModule/ModulePlugin_Phone/dllmain.cpp index daed8c8f7ac50ca1466016a0529648d18125a7e7..594ff2123d474b129bb2014fb572f03c9741bf0b 100644 --- a/XEngine_Source/XEngine_PluginModule/ModulePlugin_Phone/dllmain.cpp +++ b/XEngine_Source/XEngine_PluginModule/ModulePlugin_Phone/dllmain.cpp @@ -1,9 +1,9 @@ // dllmain.cpp : 定义 DLL 应用程序的入口点。 #include "pch.h" -BOOL APIENTRY DllMain( HMODULE hModule, - DWORD ul_reason_for_call, - LPVOID lpReserved +bool APIENTRY DllMain( HMODULE hModule, + XLONG ul_reason_for_call, + XPVOID lpReserved ) { switch (ul_reason_for_call) @@ -14,6 +14,6 @@ BOOL APIENTRY DllMain( HMODULE hModule, case DLL_PROCESS_DETACH: break; } - return TRUE; + return true; } diff --git a/XEngine_Source/XEngine_PluginModule/ModulePlugin_Phone/pch.cpp b/XEngine_Source/XEngine_PluginModule/ModulePlugin_Phone/pch.cpp index de2b4a7f989e27b865f8794f98f28432de061ceb..821e5b33f1854bdd39fb890d3d766b278010b837 100644 --- a/XEngine_Source/XEngine_PluginModule/ModulePlugin_Phone/pch.cpp +++ b/XEngine_Source/XEngine_PluginModule/ModulePlugin_Phone/pch.cpp @@ -11,21 +11,21 @@ // Purpose: 导出实现 // History: *********************************************************************/ -BOOL Phone_IsErrorOccur = FALSE; -DWORD Phone_dwErrorCode = 0; +bool Phone_IsErrorOccur = false; +XLONG Phone_dwErrorCode = 0; ////////////////////////////////////////////////////////////////////////// CModulePlugin_APIPhone m_PluginPhone; ////////////////////////////////////////////////////////////////////////// // 导出函数定义 ////////////////////////////////////////////////////////////////////////// -extern "C" DWORD PluginCore_GetLastError() +extern "C" XLONG PluginCore_GetLastError() { return Phone_dwErrorCode; } /********************************************************************************* * 导出函数定义 * *********************************************************************************/ -extern "C" BOOL PluginCore_Init(LPVOID lParam) +extern "C" bool PluginCore_Init(XPVOID lParam) { return m_PluginPhone.PluginCore_Init(lParam); } @@ -33,7 +33,7 @@ extern "C" void PluginCore_UnInit() { m_PluginPhone.PluginCore_UnInit(); } -extern "C" BOOL PluginCore_Call(TCHAR * **pppHDRList, int nListCount, int* pInt_HTTPCode, TCHAR * ptszMsgBuffer, int* pInt_MsgLen, LPCTSTR lpszMsgBuffer, int nMsgLen) +extern "C" bool PluginCore_Call(XCHAR * **pppHDRList, int nListCount, int* pInt_HTTPCode, XCHAR * ptszMsgBuffer, int* pInt_MsgLen, LPCXSTR lpszMsgBuffer, int nMsgLen) { return m_PluginPhone.PluginCore_Call(pppHDRList, nListCount, pInt_HTTPCode, ptszMsgBuffer, pInt_MsgLen, lpszMsgBuffer, nMsgLen); } \ No newline at end of file diff --git a/XEngine_Source/XEngine_PluginModule/ModulePlugin_Phone/pch.h b/XEngine_Source/XEngine_PluginModule/ModulePlugin_Phone/pch.h index 56952d1cfe932057be2810a6b0e32b539f3ef4f1..51926533e182a24bc49ba64473d8305f81cee99e 100644 --- a/XEngine_Source/XEngine_PluginModule/ModulePlugin_Phone/pch.h +++ b/XEngine_Source/XEngine_PluginModule/ModulePlugin_Phone/pch.h @@ -33,8 +33,8 @@ using namespace std; // Purpose: 公用头文件 // History: *********************************************************************/ -extern BOOL Phone_IsErrorOccur; -extern DWORD Phone_dwErrorCode; +extern bool Phone_IsErrorOccur; +extern XLONG Phone_dwErrorCode; #include "ModulePlugin_DBPhone/ModulePlugin_DBPhone.h" diff --git a/XEngine_Source/XEngine_PluginModule/ModulePlugin_Timezone/Makefile b/XEngine_Source/XEngine_PluginModule/ModulePlugin_Timezone/Makefile index 456bbfbe17d8cd82a83e23c9371666ace9e6b962..bb2b5ed250fee9fadcd9b0c1d37825907028fe19 100644 --- a/XEngine_Source/XEngine_PluginModule/ModulePlugin_Timezone/Makefile +++ b/XEngine_Source/XEngine_PluginModule/ModulePlugin_Timezone/Makefile @@ -1,30 +1,23 @@ -CC = g++ -Wall -std=c++17 -fPIC -Wno-deprecated-declarations -SHAREFLAG = -shared -SHAREDLL = so +CC = g++ -Wall -std=c++17 -fPIC +PLATFORM = linux +PLATVER = +PLATDIR = +FILEEXT = +LIBFLAG = RELEASE = 0 UNICODE = 0 -INCLUDE = -I ./ -I ../../XEngine_ThirdPart/jsoncpp -LOADBIN = -L /usr/local/lib/XEngine_Release/XEngine_BaseLib -L ../../XEngine_ThirdPart/jsoncpp +LOADHDR = -I ./ -I ../../XEngine_ThirdPart/jsoncpp +LOADSO = -L /usr/local/lib/XEngine_Release/XEngine_BaseLib -L ../../XEngine_ThirdPart/jsoncpp LIB = -lXEngine_BaseLib -ljsoncpp -LIBEX = -ldl -lpthread -LOADSO = -Wl,-rpath=../,--disable-new-dtags -LIBINCLUDE = Plugin_Timezone.o pch.o - -ifeq ($(shell uname),Darwin) - SHAREDLL = dylib - SHAREFLAG = -dynamiclib - LOADSO = -else - SHAREDLL = so - SHAREFLAG = -shared -endif +LIBEX = +OBJECTS = Plugin_Timezone.o pch.o ifeq ($(RELEASE),1) -FLAGS = -c -O2 +FLAGS = -c DEBUG = else -FLAGS = -c -DEBUG = -g +FLAGS = -c -lc_p +DEBUG = -g -pg endif ifeq ($(UNICODE),1) @@ -33,23 +26,44 @@ else UNICODE = endif +ifeq ($(PLATFORM),linux) + ifeq (/etc/redhat-release,$(wildcard /etc/redhat-release)) + PLATVER = -D __CENTOS__ + PLATDIR = XEngine_Linux/Centos + else + PLATVER = -D __UBUNTU__ + PLATDIR = XEngine_Linux/Ubuntu + endif + FILEEXT = so + LIBFLAG = -shared + LIBEX = -lpthread -lrt -ldl + LOADBIN = -Wl,-rpath=./,--disable-new-dtags +else ifeq ($(PLATFORM),mac) + CC += -Wno-deprecated-declarations + PLATVER = -D __MACOS__ + PLATDIR = XEngine_Mac + FILEEXT = dylib + LIBFLAG = -dynamiclib + LIBEX = -lpthread -ldl + LOADBIN = -Wl,-rpath,@loader_path/./ +endif -all:$(LIBINCLUDE) - $(CC) $(DEBUG) $(LIBINCLUDE) -o libModulePlugin_Timezone.$(SHAREDLL) $(SHAREFLAG) -fPIC $(LOADBIN) $(LIB) $(LIBEX) $(LOADSO) -Plugin_Timezone.o:./Plugin_Timezone/Plugin_Timezone.cpp - $(CC) $(DEBUG) $(FLAGS) $(UNICODE) $(INCLUDE) ./Plugin_Timezone/Plugin_Timezone.cpp +all:$(OBJECTS) + $(CC) $(DEBUG) $(OBJECTS) -o libModulePlugin_Timezone.$(FILEEXT) $(LIBFLAG) $(LIB) $(LIBEX) $(LOADSO) $(LOADBIN) +Plugin_Timezone.o:./Plugin_Timezone/Plugin_Timezone.cpp + $(CC) $(DEBUG) $(FLAGS) $(UNICODE) $(PLATVER) $(LOADHDR) ./Plugin_Timezone/Plugin_Timezone.cpp pch.o:./pch.cpp - $(CC) $(DEBUG) $(FLAGS) $(UNICODE) $(INCLUDE) ./pch.cpp + $(CC) $(DEBUG) $(FLAGS) $(UNICODE) $(PLATVER) $(LOADHDR) ./pch.cpp InstallAll:InstallSo -InstallSo:./libModulePlugin_Timezone.$(SHAREDLL) - cp ./libModulePlugin_Timezone.$(SHAREDLL) ../../../XEngine_Release/XEngine_LibPlugin/libModulePlugin_Timezone.$(SHAREDLL) +InstallSo:./libModulePlugin_Timezone.$(FILEEXT) + cp ./libModulePlugin_Timezone.$(FILEEXT) ../../../XEngine_Release/XEngine_LibPlugin/libModulePlugin_Timezone.$(FILEEXT) CleanAll:CleanObj CleanMk CleanObj: rm *.o CleanMk: - rm *.$(SHAREDLL) \ No newline at end of file + rm *.$(FILEEXT) \ No newline at end of file diff --git a/XEngine_Source/XEngine_PluginModule/ModulePlugin_Timezone/ModulePlugin_Timezone.vcxproj b/XEngine_Source/XEngine_PluginModule/ModulePlugin_Timezone/ModulePlugin_Timezone.vcxproj index 462fea3b3c8639d06ea191a599ba2e3ef91e2fa9..4e27953a56723bfd363d3be4bdf9cff229c0f617 100644 --- a/XEngine_Source/XEngine_PluginModule/ModulePlugin_Timezone/ModulePlugin_Timezone.vcxproj +++ b/XEngine_Source/XEngine_PluginModule/ModulePlugin_Timezone/ModulePlugin_Timezone.vcxproj @@ -31,27 +31,27 @@ DynamicLibrary true v143 - MultiByte + Unicode DynamicLibrary false v143 true - MultiByte + Unicode DynamicLibrary true v143 - MultiByte + Unicode DynamicLibrary false v143 true - MultiByte + Unicode diff --git a/XEngine_Source/XEngine_PluginModule/ModulePlugin_Timezone/Plugin_Timezone/Plugin_Timezone.cpp b/XEngine_Source/XEngine_PluginModule/ModulePlugin_Timezone/Plugin_Timezone/Plugin_Timezone.cpp index 80e75e90c81906fdb691343d53d2596163485316..7a5506668667af6e7bdaec3313e20dfa90f77c12 100644 --- a/XEngine_Source/XEngine_PluginModule/ModulePlugin_Timezone/Plugin_Timezone/Plugin_Timezone.cpp +++ b/XEngine_Source/XEngine_PluginModule/ModulePlugin_Timezone/Plugin_Timezone/Plugin_Timezone.cpp @@ -33,471 +33,471 @@ CPlugin_Timezone::~CPlugin_Timezone() 意思:是否成功 备注: *********************************************************************/ -BOOL CPlugin_Timezone::PluginCore_Init(LPVOID lParam) +bool CPlugin_Timezone::PluginCore_Init(XPVOID lParam) { - Timezone_IsErrorOccur = FALSE; + Timezone_IsErrorOccur = false; MODULEPLUGIN_TIMEZONE st_TimeZone; memset(&st_TimeZone, '\0', sizeof(MODULEPLUGIN_TIMEZONE)); st_TimeZone.st_TimeZone.wHour = -12; - _tcscpy(st_TimeZone.tszTimeCountry, _T("国际日期变更线,西边")); - stl_MapTimezone.insert(make_pair(_T("IDLE"), st_TimeZone)); + _tcsxcpy(st_TimeZone.tszTimeCountry, _X("国际日期变更线,西边")); + stl_MapTimezone.insert(make_pair(_X("IDLE"), st_TimeZone)); memset(&st_TimeZone, '\0', sizeof(MODULEPLUGIN_TIMEZONE)); st_TimeZone.st_TimeZone.wHour = -11; - _tcscpy(st_TimeZone.tszTimeCountry, _T("阿拉斯加诺姆时间")); - stl_MapTimezone.insert(make_pair(_T("NT"), st_TimeZone)); + _tcsxcpy(st_TimeZone.tszTimeCountry, _X("阿拉斯加诺姆时间")); + stl_MapTimezone.insert(make_pair(_X("NT"), st_TimeZone)); memset(&st_TimeZone, '\0', sizeof(MODULEPLUGIN_TIMEZONE)); st_TimeZone.st_TimeZone.wHour = -10; - _tcscpy(st_TimeZone.tszTimeCountry, _T("中阿拉斯加时间")); - stl_MapTimezone.insert(make_pair(_T("CAT"), st_TimeZone)); + _tcsxcpy(st_TimeZone.tszTimeCountry, _X("中阿拉斯加时间")); + stl_MapTimezone.insert(make_pair(_X("CAT"), st_TimeZone)); memset(&st_TimeZone, '\0', sizeof(MODULEPLUGIN_TIMEZONE)); st_TimeZone.st_TimeZone.wHour = -10; - _tcscpy(st_TimeZone.tszTimeCountry, _T("夏威夷标准时间")); - stl_MapTimezone.insert(make_pair(_T("HST"), st_TimeZone)); + _tcsxcpy(st_TimeZone.tszTimeCountry, _X("夏威夷标准时间")); + stl_MapTimezone.insert(make_pair(_X("HST"), st_TimeZone)); memset(&st_TimeZone, '\0', sizeof(MODULEPLUGIN_TIMEZONE)); st_TimeZone.st_TimeZone.wHour = -10; - _tcscpy(st_TimeZone.tszTimeCountry, _T("夏威夷-阿拉斯加标准时间")); - stl_MapTimezone.insert(make_pair(_T("AHST"), st_TimeZone)); + _tcsxcpy(st_TimeZone.tszTimeCountry, _X("夏威夷-阿拉斯加标准时间")); + stl_MapTimezone.insert(make_pair(_X("AHST"), st_TimeZone)); memset(&st_TimeZone, '\0', sizeof(MODULEPLUGIN_TIMEZONE)); st_TimeZone.st_TimeZone.wHour = -9; st_TimeZone.st_TimeZone.wMinute = -30; - _tcscpy(st_TimeZone.tszTimeCountry, _T("马克萨斯群岛时间")); - stl_MapTimezone.insert(make_pair(_T("MART"), st_TimeZone)); + _tcsxcpy(st_TimeZone.tszTimeCountry, _X("马克萨斯群岛时间")); + stl_MapTimezone.insert(make_pair(_X("MART"), st_TimeZone)); memset(&st_TimeZone, '\0', sizeof(MODULEPLUGIN_TIMEZONE)); st_TimeZone.st_TimeZone.wHour = -9; - _tcscpy(st_TimeZone.tszTimeCountry, _T("夏威夷/阿拉斯加夏时制")); - stl_MapTimezone.insert(make_pair(_T("HDT"), st_TimeZone)); + _tcsxcpy(st_TimeZone.tszTimeCountry, _X("夏威夷/阿拉斯加夏时制")); + stl_MapTimezone.insert(make_pair(_X("HDT"), st_TimeZone)); memset(&st_TimeZone, '\0', sizeof(MODULEPLUGIN_TIMEZONE)); st_TimeZone.st_TimeZone.wHour = -9; - _tcscpy(st_TimeZone.tszTimeCountry, _T("阿拉斯加标准时间")); - stl_MapTimezone.insert(make_pair(_T("AKST"), st_TimeZone)); + _tcsxcpy(st_TimeZone.tszTimeCountry, _X("阿拉斯加标准时间")); + stl_MapTimezone.insert(make_pair(_X("AKST"), st_TimeZone)); memset(&st_TimeZone, '\0', sizeof(MODULEPLUGIN_TIMEZONE)); st_TimeZone.st_TimeZone.wHour = -8; - _tcscpy(st_TimeZone.tszTimeCountry, _T("育空地区标准时")); - stl_MapTimezone.insert(make_pair(_T("YST"), st_TimeZone)); + _tcsxcpy(st_TimeZone.tszTimeCountry, _X("育空地区标准时")); + stl_MapTimezone.insert(make_pair(_X("YST"), st_TimeZone)); memset(&st_TimeZone, '\0', sizeof(MODULEPLUGIN_TIMEZONE)); st_TimeZone.st_TimeZone.wHour = -8; - _tcscpy(st_TimeZone.tszTimeCountry, _T("太平洋标准时间")); - stl_MapTimezone.insert(make_pair(_T("PST"), st_TimeZone)); + _tcsxcpy(st_TimeZone.tszTimeCountry, _X("太平洋标准时间")); + stl_MapTimezone.insert(make_pair(_X("PST"), st_TimeZone)); memset(&st_TimeZone, '\0', sizeof(MODULEPLUGIN_TIMEZONE)); st_TimeZone.st_TimeZone.wHour = -8; - _tcscpy(st_TimeZone.tszTimeCountry, _T("阿拉斯加白昼时间")); - stl_MapTimezone.insert(make_pair(_T("AKDT"), st_TimeZone)); + _tcsxcpy(st_TimeZone.tszTimeCountry, _X("阿拉斯加白昼时间")); + stl_MapTimezone.insert(make_pair(_X("AKDT"), st_TimeZone)); memset(&st_TimeZone, '\0', sizeof(MODULEPLUGIN_TIMEZONE)); st_TimeZone.st_TimeZone.wHour = -7; - _tcscpy(st_TimeZone.tszTimeCountry, _T("太平洋夏时制")); - stl_MapTimezone.insert(make_pair(_T("PDT"), st_TimeZone)); + _tcsxcpy(st_TimeZone.tszTimeCountry, _X("太平洋夏时制")); + stl_MapTimezone.insert(make_pair(_X("PDT"), st_TimeZone)); memset(&st_TimeZone, '\0', sizeof(MODULEPLUGIN_TIMEZONE)); st_TimeZone.st_TimeZone.wHour = -7; - _tcscpy(st_TimeZone.tszTimeCountry, _T("山地标准时间")); - stl_MapTimezone.insert(make_pair(_T("MST"), st_TimeZone)); + _tcsxcpy(st_TimeZone.tszTimeCountry, _X("山地标准时间")); + stl_MapTimezone.insert(make_pair(_X("MST"), st_TimeZone)); memset(&st_TimeZone, '\0', sizeof(MODULEPLUGIN_TIMEZONE)); st_TimeZone.st_TimeZone.wHour = -6; - _tcscpy(st_TimeZone.tszTimeCountry, _T("山地夏时制")); - stl_MapTimezone.insert(make_pair(_T("MDT"), st_TimeZone)); + _tcsxcpy(st_TimeZone.tszTimeCountry, _X("山地夏时制")); + stl_MapTimezone.insert(make_pair(_X("MDT"), st_TimeZone)); memset(&st_TimeZone, '\0', sizeof(MODULEPLUGIN_TIMEZONE)); st_TimeZone.st_TimeZone.wHour = -6; - _tcscpy(st_TimeZone.tszTimeCountry, _T("中部标准时间")); - stl_MapTimezone.insert(make_pair(_T("CST"), st_TimeZone)); + _tcsxcpy(st_TimeZone.tszTimeCountry, _X("中部标准时间")); + stl_MapTimezone.insert(make_pair(_X("CST"), st_TimeZone)); memset(&st_TimeZone, '\0', sizeof(MODULEPLUGIN_TIMEZONE)); st_TimeZone.st_TimeZone.wHour = -5; - _tcscpy(st_TimeZone.tszTimeCountry, _T("东部标准时间")); - stl_MapTimezone.insert(make_pair(_T("EST"), st_TimeZone)); + _tcsxcpy(st_TimeZone.tszTimeCountry, _X("东部标准时间")); + stl_MapTimezone.insert(make_pair(_X("EST"), st_TimeZone)); memset(&st_TimeZone, '\0', sizeof(MODULEPLUGIN_TIMEZONE)); st_TimeZone.st_TimeZone.wHour = -5; - _tcscpy(st_TimeZone.tszTimeCountry, _T("中部夏时制")); - stl_MapTimezone.insert(make_pair(_T("CDT"), st_TimeZone)); + _tcsxcpy(st_TimeZone.tszTimeCountry, _X("中部夏时制")); + stl_MapTimezone.insert(make_pair(_X("CDT"), st_TimeZone)); memset(&st_TimeZone, '\0', sizeof(MODULEPLUGIN_TIMEZONE)); st_TimeZone.st_TimeZone.wHour = -5; - _tcscpy(st_TimeZone.tszTimeCountry, _T("大西洋阿雷格里港 标准时间")); - stl_MapTimezone.insert(make_pair(_T("ACT"), st_TimeZone)); + _tcsxcpy(st_TimeZone.tszTimeCountry, _X("大西洋阿雷格里港 标准时间")); + stl_MapTimezone.insert(make_pair(_X("ACT"), st_TimeZone)); memset(&st_TimeZone, '\0', sizeof(MODULEPLUGIN_TIMEZONE)); st_TimeZone.st_TimeZone.wHour = -4; - _tcscpy(st_TimeZone.tszTimeCountry, _T("东部夏时制")); - stl_MapTimezone.insert(make_pair(_T("EDT"), st_TimeZone)); + _tcsxcpy(st_TimeZone.tszTimeCountry, _X("东部夏时制")); + stl_MapTimezone.insert(make_pair(_X("EDT"), st_TimeZone)); memset(&st_TimeZone, '\0', sizeof(MODULEPLUGIN_TIMEZONE)); st_TimeZone.st_TimeZone.wHour = -4; - _tcscpy(st_TimeZone.tszTimeCountry, _T("大西洋阿雷格里港夏令时")); - stl_MapTimezone.insert(make_pair(_T("ACST"), st_TimeZone)); + _tcsxcpy(st_TimeZone.tszTimeCountry, _X("大西洋阿雷格里港夏令时")); + stl_MapTimezone.insert(make_pair(_X("ACST"), st_TimeZone)); memset(&st_TimeZone, '\0', sizeof(MODULEPLUGIN_TIMEZONE)); st_TimeZone.st_TimeZone.wHour = -4; - _tcscpy(st_TimeZone.tszTimeCountry, _T("大西洋标准时间(加拿大)")); - stl_MapTimezone.insert(make_pair(_T("AST"), st_TimeZone)); + _tcsxcpy(st_TimeZone.tszTimeCountry, _X("大西洋标准时间(加拿大)")); + stl_MapTimezone.insert(make_pair(_X("AST"), st_TimeZone)); memset(&st_TimeZone, '\0', sizeof(MODULEPLUGIN_TIMEZONE)); st_TimeZone.st_TimeZone.wHour = -3; st_TimeZone.st_TimeZone.wMinute = -30; - _tcscpy(st_TimeZone.tszTimeCountry, _T("纽芬兰(Newfoundland)标准时间")); - stl_MapTimezone.insert(make_pair(_T("NST"), st_TimeZone)); - stl_MapTimezone.insert(make_pair(_T("NFT"), st_TimeZone)); + _tcsxcpy(st_TimeZone.tszTimeCountry, _X("纽芬兰(Newfoundland)标准时间")); + stl_MapTimezone.insert(make_pair(_X("NST"), st_TimeZone)); + stl_MapTimezone.insert(make_pair(_X("NFT"), st_TimeZone)); memset(&st_TimeZone, '\0', sizeof(MODULEPLUGIN_TIMEZONE)); st_TimeZone.st_TimeZone.wHour = -3; - _tcscpy(st_TimeZone.tszTimeCountry, _T("巴西利亚时间")); - stl_MapTimezone.insert(make_pair(_T("BRT"), st_TimeZone)); + _tcsxcpy(st_TimeZone.tszTimeCountry, _X("巴西利亚时间")); + stl_MapTimezone.insert(make_pair(_X("BRT"), st_TimeZone)); memset(&st_TimeZone, '\0', sizeof(MODULEPLUGIN_TIMEZONE)); st_TimeZone.st_TimeZone.wHour = -3; - _tcscpy(st_TimeZone.tszTimeCountry, _T("大西洋夏时制")); - stl_MapTimezone.insert(make_pair(_T("ADT"), st_TimeZone)); + _tcsxcpy(st_TimeZone.tszTimeCountry, _X("大西洋夏时制")); + stl_MapTimezone.insert(make_pair(_X("ADT"), st_TimeZone)); memset(&st_TimeZone, '\0', sizeof(MODULEPLUGIN_TIMEZONE)); st_TimeZone.st_TimeZone.wHour = -2; st_TimeZone.st_TimeZone.wMinute = -30; - _tcscpy(st_TimeZone.tszTimeCountry, _T("纽芬兰夏时制")); - stl_MapTimezone.insert(make_pair(_T("NDT"), st_TimeZone)); + _tcsxcpy(st_TimeZone.tszTimeCountry, _X("纽芬兰夏时制")); + stl_MapTimezone.insert(make_pair(_X("NDT"), st_TimeZone)); memset(&st_TimeZone, '\0', sizeof(MODULEPLUGIN_TIMEZONE)); st_TimeZone.st_TimeZone.wHour = -2; - _tcscpy(st_TimeZone.tszTimeCountry, _T("巴西利亚夏令时")); - stl_MapTimezone.insert(make_pair(_T("BRST"), st_TimeZone)); + _tcsxcpy(st_TimeZone.tszTimeCountry, _X("巴西利亚夏令时")); + stl_MapTimezone.insert(make_pair(_X("BRST"), st_TimeZone)); memset(&st_TimeZone, '\0', sizeof(MODULEPLUGIN_TIMEZONE)); st_TimeZone.st_TimeZone.wHour = -2; - _tcscpy(st_TimeZone.tszTimeCountry, _T("巴西费尔南多·迪诺罗尼亚岛时间")); - stl_MapTimezone.insert(make_pair(_T("FNT"), st_TimeZone)); + _tcsxcpy(st_TimeZone.tszTimeCountry, _X("巴西费尔南多·迪诺罗尼亚岛时间")); + stl_MapTimezone.insert(make_pair(_X("FNT"), st_TimeZone)); memset(&st_TimeZone, '\0', sizeof(MODULEPLUGIN_TIMEZONE)); st_TimeZone.st_TimeZone.wHour = -1; - _tcscpy(st_TimeZone.tszTimeCountry, _T("巴西费尔南多·迪诺罗尼亚岛 夏令时")); - stl_MapTimezone.insert(make_pair(_T("FNST"), st_TimeZone)); + _tcsxcpy(st_TimeZone.tszTimeCountry, _X("巴西费尔南多·迪诺罗尼亚岛 夏令时")); + stl_MapTimezone.insert(make_pair(_X("FNST"), st_TimeZone)); memset(&st_TimeZone, '\0', sizeof(MODULEPLUGIN_TIMEZONE)); st_TimeZone.st_TimeZone.wHour = -1; - _tcscpy(st_TimeZone.tszTimeCountry, _T("西非时间")); - stl_MapTimezone.insert(make_pair(_T("WAT"), st_TimeZone)); + _tcsxcpy(st_TimeZone.tszTimeCountry, _X("西非时间")); + stl_MapTimezone.insert(make_pair(_X("WAT"), st_TimeZone)); memset(&st_TimeZone, '\0', sizeof(MODULEPLUGIN_TIMEZONE)); - _tcscpy(st_TimeZone.tszTimeCountry, _T("西欧")); - stl_MapTimezone.insert(make_pair(_T("WET"), st_TimeZone)); + _tcsxcpy(st_TimeZone.tszTimeCountry, _X("西欧")); + stl_MapTimezone.insert(make_pair(_X("WET"), st_TimeZone)); memset(&st_TimeZone, '\0', sizeof(MODULEPLUGIN_TIMEZONE)); - _tcscpy(st_TimeZone.tszTimeCountry, _T("和 UTC 相同")); - stl_MapTimezone.insert(make_pair(_T("ZULU"), st_TimeZone)); + _tcsxcpy(st_TimeZone.tszTimeCountry, _X("和 UTC 相同")); + stl_MapTimezone.insert(make_pair(_X("ZULU"), st_TimeZone)); memset(&st_TimeZone, '\0', sizeof(MODULEPLUGIN_TIMEZONE)); - _tcscpy(st_TimeZone.tszTimeCountry, _T("校准的全球时间")); - stl_MapTimezone.insert(make_pair(_T("UTC"), st_TimeZone)); + _tcsxcpy(st_TimeZone.tszTimeCountry, _X("校准的全球时间")); + stl_MapTimezone.insert(make_pair(_X("UTC"), st_TimeZone)); memset(&st_TimeZone, '\0', sizeof(MODULEPLUGIN_TIMEZONE)); - _tcscpy(st_TimeZone.tszTimeCountry, _T("全球时间")); - stl_MapTimezone.insert(make_pair(_T("UT"), st_TimeZone)); + _tcsxcpy(st_TimeZone.tszTimeCountry, _X("全球时间")); + stl_MapTimezone.insert(make_pair(_X("UT"), st_TimeZone)); memset(&st_TimeZone, '\0', sizeof(MODULEPLUGIN_TIMEZONE)); - _tcscpy(st_TimeZone.tszTimeCountry, _T("格林尼治标准时间")); - stl_MapTimezone.insert(make_pair(_T("GMT"), st_TimeZone)); + _tcsxcpy(st_TimeZone.tszTimeCountry, _X("格林尼治标准时间")); + stl_MapTimezone.insert(make_pair(_X("GMT"), st_TimeZone)); memset(&st_TimeZone, '\0', sizeof(MODULEPLUGIN_TIMEZONE)); st_TimeZone.st_TimeZone.wHour = 1; - _tcscpy(st_TimeZone.tszTimeCountry, _T("西欧光照利用时间")); - stl_MapTimezone.insert(make_pair(_T("WETDST"), st_TimeZone)); + _tcsxcpy(st_TimeZone.tszTimeCountry, _X("西欧光照利用时间")); + stl_MapTimezone.insert(make_pair(_X("WETDST"), st_TimeZone)); memset(&st_TimeZone, '\0', sizeof(MODULEPLUGIN_TIMEZONE)); st_TimeZone.st_TimeZone.wHour = 1; - _tcscpy(st_TimeZone.tszTimeCountry, _T("瑞典冬时制")); - stl_MapTimezone.insert(make_pair(_T("SWT"), st_TimeZone)); + _tcsxcpy(st_TimeZone.tszTimeCountry, _X("瑞典冬时制")); + stl_MapTimezone.insert(make_pair(_X("SWT"), st_TimeZone)); memset(&st_TimeZone, '\0', sizeof(MODULEPLUGIN_TIMEZONE)); st_TimeZone.st_TimeZone.wHour = 1; - _tcscpy(st_TimeZone.tszTimeCountry, _T("挪威标准时间")); - stl_MapTimezone.insert(make_pair(_T("NOR"), st_TimeZone)); + _tcsxcpy(st_TimeZone.tszTimeCountry, _X("挪威标准时间")); + stl_MapTimezone.insert(make_pair(_X("NOR"), st_TimeZone)); memset(&st_TimeZone, '\0', sizeof(MODULEPLUGIN_TIMEZONE)); st_TimeZone.st_TimeZone.wHour = 1; - _tcscpy(st_TimeZone.tszTimeCountry, _T("中欧时间")); - stl_MapTimezone.insert(make_pair(_T("MET"), st_TimeZone)); + _tcsxcpy(st_TimeZone.tszTimeCountry, _X("中欧时间")); + stl_MapTimezone.insert(make_pair(_X("MET"), st_TimeZone)); memset(&st_TimeZone, '\0', sizeof(MODULEPLUGIN_TIMEZONE)); st_TimeZone.st_TimeZone.wHour = 1; - _tcscpy(st_TimeZone.tszTimeCountry, _T("法国夏时制")); - stl_MapTimezone.insert(make_pair(_T("FST"), st_TimeZone)); + _tcsxcpy(st_TimeZone.tszTimeCountry, _X("法国夏时制")); + stl_MapTimezone.insert(make_pair(_X("FST"), st_TimeZone)); memset(&st_TimeZone, '\0', sizeof(MODULEPLUGIN_TIMEZONE)); st_TimeZone.st_TimeZone.wHour = 1; - _tcscpy(st_TimeZone.tszTimeCountry, _T("丹麦正规时间")); - stl_MapTimezone.insert(make_pair(_T("DNT"), st_TimeZone)); + _tcsxcpy(st_TimeZone.tszTimeCountry, _X("丹麦正规时间")); + stl_MapTimezone.insert(make_pair(_X("DNT"), st_TimeZone)); memset(&st_TimeZone, '\0', sizeof(MODULEPLUGIN_TIMEZONE)); st_TimeZone.st_TimeZone.wHour = 1; - _tcscpy(st_TimeZone.tszTimeCountry, _T("中欧时间")); - stl_MapTimezone.insert(make_pair(_T("CET"), st_TimeZone)); + _tcsxcpy(st_TimeZone.tszTimeCountry, _X("中欧时间")); + stl_MapTimezone.insert(make_pair(_X("CET"), st_TimeZone)); memset(&st_TimeZone, '\0', sizeof(MODULEPLUGIN_TIMEZONE)); st_TimeZone.st_TimeZone.wHour = 1; - _tcscpy(st_TimeZone.tszTimeCountry, _T("英国夏时制")); - stl_MapTimezone.insert(make_pair(_T("BST"), st_TimeZone)); + _tcsxcpy(st_TimeZone.tszTimeCountry, _X("英国夏时制")); + stl_MapTimezone.insert(make_pair(_X("BST"), st_TimeZone)); memset(&st_TimeZone, '\0', sizeof(MODULEPLUGIN_TIMEZONE)); st_TimeZone.st_TimeZone.wHour = 2; - _tcscpy(st_TimeZone.tszTimeCountry, _T("瑞典夏时制")); - stl_MapTimezone.insert(make_pair(_T("SST"), st_TimeZone)); + _tcsxcpy(st_TimeZone.tszTimeCountry, _X("瑞典夏时制")); + stl_MapTimezone.insert(make_pair(_X("SST"), st_TimeZone)); memset(&st_TimeZone, '\0', sizeof(MODULEPLUGIN_TIMEZONE)); st_TimeZone.st_TimeZone.wHour = 2; - _tcscpy(st_TimeZone.tszTimeCountry, _T("中欧白昼时间")); - stl_MapTimezone.insert(make_pair(_T("METDST"), st_TimeZone)); + _tcsxcpy(st_TimeZone.tszTimeCountry, _X("中欧白昼时间")); + stl_MapTimezone.insert(make_pair(_X("METDST"), st_TimeZone)); memset(&st_TimeZone, '\0', sizeof(MODULEPLUGIN_TIMEZONE)); st_TimeZone.st_TimeZone.wHour = 2; - _tcscpy(st_TimeZone.tszTimeCountry, _T("中欧夏时制")); - stl_MapTimezone.insert(make_pair(_T("MEST"), st_TimeZone)); + _tcsxcpy(st_TimeZone.tszTimeCountry, _X("中欧夏时制")); + stl_MapTimezone.insert(make_pair(_X("MEST"), st_TimeZone)); memset(&st_TimeZone, '\0', sizeof(MODULEPLUGIN_TIMEZONE)); st_TimeZone.st_TimeZone.wHour = 2; - _tcscpy(st_TimeZone.tszTimeCountry, _T("以色列标准时间")); - stl_MapTimezone.insert(make_pair(_T("IST"), st_TimeZone)); + _tcsxcpy(st_TimeZone.tszTimeCountry, _X("以色列标准时间")); + stl_MapTimezone.insert(make_pair(_X("IST"), st_TimeZone)); memset(&st_TimeZone, '\0', sizeof(MODULEPLUGIN_TIMEZONE)); st_TimeZone.st_TimeZone.wHour = 2; - _tcscpy(st_TimeZone.tszTimeCountry, _T("法国冬时制")); - stl_MapTimezone.insert(make_pair(_T("FWT"), st_TimeZone)); + _tcsxcpy(st_TimeZone.tszTimeCountry, _X("法国冬时制")); + stl_MapTimezone.insert(make_pair(_X("FWT"), st_TimeZone)); memset(&st_TimeZone, '\0', sizeof(MODULEPLUGIN_TIMEZONE)); st_TimeZone.st_TimeZone.wHour = 2; - _tcscpy(st_TimeZone.tszTimeCountry, _T("东欧")); - stl_MapTimezone.insert(make_pair(_T("EET"), st_TimeZone)); + _tcsxcpy(st_TimeZone.tszTimeCountry, _X("东欧")); + stl_MapTimezone.insert(make_pair(_X("EET"), st_TimeZone)); memset(&st_TimeZone, '\0', sizeof(MODULEPLUGIN_TIMEZONE)); st_TimeZone.st_TimeZone.wHour = 2; - _tcscpy(st_TimeZone.tszTimeCountry, _T("中欧夏时制")); - stl_MapTimezone.insert(make_pair(_T("CETDST"), st_TimeZone)); + _tcsxcpy(st_TimeZone.tszTimeCountry, _X("中欧夏时制")); + stl_MapTimezone.insert(make_pair(_X("CETDST"), st_TimeZone)); memset(&st_TimeZone, '\0', sizeof(MODULEPLUGIN_TIMEZONE)); st_TimeZone.st_TimeZone.wHour = 2; - _tcscpy(st_TimeZone.tszTimeCountry, _T("中欧夏令时")); - stl_MapTimezone.insert(make_pair(_T("CEST"), st_TimeZone)); + _tcsxcpy(st_TimeZone.tszTimeCountry, _X("中欧夏令时")); + stl_MapTimezone.insert(make_pair(_X("CEST"), st_TimeZone)); memset(&st_TimeZone, '\0', sizeof(MODULEPLUGIN_TIMEZONE)); st_TimeZone.st_TimeZone.wHour = 2; - _tcscpy(st_TimeZone.tszTimeCountry, _T("英国双重标准时间")); - stl_MapTimezone.insert(make_pair(_T("BDST"), st_TimeZone)); + _tcsxcpy(st_TimeZone.tszTimeCountry, _X("英国双重标准时间")); + stl_MapTimezone.insert(make_pair(_X("BDST"), st_TimeZone)); memset(&st_TimeZone, '\0', sizeof(MODULEPLUGIN_TIMEZONE)); st_TimeZone.st_TimeZone.wHour = 3; - _tcscpy(st_TimeZone.tszTimeCountry, _T("希腊地中海时间")); - stl_MapTimezone.insert(make_pair(_T("HMT"), st_TimeZone)); + _tcsxcpy(st_TimeZone.tszTimeCountry, _X("希腊地中海时间")); + stl_MapTimezone.insert(make_pair(_X("HMT"), st_TimeZone)); memset(&st_TimeZone, '\0', sizeof(MODULEPLUGIN_TIMEZONE)); st_TimeZone.st_TimeZone.wHour = 3; - _tcscpy(st_TimeZone.tszTimeCountry, _T("东欧夏时制")); - stl_MapTimezone.insert(make_pair(_T("EETDST"), st_TimeZone)); + _tcsxcpy(st_TimeZone.tszTimeCountry, _X("东欧夏时制")); + stl_MapTimezone.insert(make_pair(_X("EETDST"), st_TimeZone)); memset(&st_TimeZone, '\0', sizeof(MODULEPLUGIN_TIMEZONE)); st_TimeZone.st_TimeZone.wHour = 3; - _tcscpy(st_TimeZone.tszTimeCountry, _T("巴格达时间")); - stl_MapTimezone.insert(make_pair(_T("BT"), st_TimeZone)); + _tcsxcpy(st_TimeZone.tszTimeCountry, _X("巴格达时间")); + stl_MapTimezone.insert(make_pair(_X("BT"), st_TimeZone)); memset(&st_TimeZone, '\0', sizeof(MODULEPLUGIN_TIMEZONE)); st_TimeZone.st_TimeZone.wHour = 3; - _tcscpy(st_TimeZone.tszTimeCountry, _T("科摩罗时间")); - stl_MapTimezone.insert(make_pair(_T("EAT"), st_TimeZone)); + _tcsxcpy(st_TimeZone.tszTimeCountry, _X("科摩罗时间")); + stl_MapTimezone.insert(make_pair(_X("EAT"), st_TimeZone)); memset(&st_TimeZone, '\0', sizeof(MODULEPLUGIN_TIMEZONE)); st_TimeZone.st_TimeZone.wHour = 3; st_TimeZone.st_TimeZone.wMinute = 30; - _tcscpy(st_TimeZone.tszTimeCountry, _T("伊朗时间")); - stl_MapTimezone.insert(make_pair(_T("IRT"), st_TimeZone)); - stl_MapTimezone.insert(make_pair(_T("IT"), st_TimeZone)); + _tcsxcpy(st_TimeZone.tszTimeCountry, _X("伊朗时间")); + stl_MapTimezone.insert(make_pair(_X("IRT"), st_TimeZone)); + stl_MapTimezone.insert(make_pair(_X("IT"), st_TimeZone)); memset(&st_TimeZone, '\0', sizeof(MODULEPLUGIN_TIMEZONE)); st_TimeZone.st_TimeZone.wHour = 4; - _tcscpy(st_TimeZone.tszTimeCountry, _T("塞舌尔马埃岛时间")); - stl_MapTimezone.insert(make_pair(_T("SCT"), st_TimeZone)); + _tcsxcpy(st_TimeZone.tszTimeCountry, _X("塞舌尔马埃岛时间")); + stl_MapTimezone.insert(make_pair(_X("SCT"), st_TimeZone)); memset(&st_TimeZone, '\0', sizeof(MODULEPLUGIN_TIMEZONE)); st_TimeZone.st_TimeZone.wHour = 4; - _tcscpy(st_TimeZone.tszTimeCountry, _T("法属留尼汪岛时间")); - stl_MapTimezone.insert(make_pair(_T("RET"), st_TimeZone)); + _tcsxcpy(st_TimeZone.tszTimeCountry, _X("法属留尼汪岛时间")); + stl_MapTimezone.insert(make_pair(_X("RET"), st_TimeZone)); memset(&st_TimeZone, '\0', sizeof(MODULEPLUGIN_TIMEZONE)); st_TimeZone.st_TimeZone.wHour = 4; - _tcscpy(st_TimeZone.tszTimeCountry, _T("毛里求斯时间")); - stl_MapTimezone.insert(make_pair(_T("MUT"), st_TimeZone)); + _tcsxcpy(st_TimeZone.tszTimeCountry, _X("毛里求斯时间")); + stl_MapTimezone.insert(make_pair(_X("MUT"), st_TimeZone)); memset(&st_TimeZone, '\0', sizeof(MODULEPLUGIN_TIMEZONE)); st_TimeZone.st_TimeZone.wHour = 4; - _tcscpy(st_TimeZone.tszTimeCountry, _T("马达加斯加塔那那利佛时间")); - stl_MapTimezone.insert(make_pair(_T("EAST"), st_TimeZone)); + _tcsxcpy(st_TimeZone.tszTimeCountry, _X("马达加斯加塔那那利佛时间")); + stl_MapTimezone.insert(make_pair(_X("EAST"), st_TimeZone)); memset(&st_TimeZone, '\0', sizeof(MODULEPLUGIN_TIMEZONE)); st_TimeZone.st_TimeZone.wHour = 4; st_TimeZone.st_TimeZone.wMinute = 30; - _tcscpy(st_TimeZone.tszTimeCountry, _T("阿富汗时间")); - stl_MapTimezone.insert(make_pair(_T("AFT"), st_TimeZone)); + _tcsxcpy(st_TimeZone.tszTimeCountry, _X("阿富汗时间")); + stl_MapTimezone.insert(make_pair(_X("AFT"), st_TimeZone)); memset(&st_TimeZone, '\0', sizeof(MODULEPLUGIN_TIMEZONE)); st_TimeZone.st_TimeZone.wHour = 5; - _tcscpy(st_TimeZone.tszTimeCountry, _T("法属凯尔盖朗岛时间")); - stl_MapTimezone.insert(make_pair(_T("TFT"), st_TimeZone)); + _tcsxcpy(st_TimeZone.tszTimeCountry, _X("法属凯尔盖朗岛时间")); + stl_MapTimezone.insert(make_pair(_X("TFT"), st_TimeZone)); memset(&st_TimeZone, '\0', sizeof(MODULEPLUGIN_TIMEZONE)); st_TimeZone.st_TimeZone.wHour = 5; - _tcscpy(st_TimeZone.tszTimeCountry, _T("马尔代夫时间")); - stl_MapTimezone.insert(make_pair(_T("MVT"), st_TimeZone)); + _tcsxcpy(st_TimeZone.tszTimeCountry, _X("马尔代夫时间")); + stl_MapTimezone.insert(make_pair(_X("MVT"), st_TimeZone)); memset(&st_TimeZone, '\0', sizeof(MODULEPLUGIN_TIMEZONE)); st_TimeZone.st_TimeZone.wHour = 5; - _tcscpy(st_TimeZone.tszTimeCountry, _T("英属印度洋领地时间")); - stl_MapTimezone.insert(make_pair(_T("IOT"), st_TimeZone)); + _tcsxcpy(st_TimeZone.tszTimeCountry, _X("英属印度洋领地时间")); + stl_MapTimezone.insert(make_pair(_X("IOT"), st_TimeZone)); memset(&st_TimeZone, '\0', sizeof(MODULEPLUGIN_TIMEZONE)); st_TimeZone.st_TimeZone.wHour = 6; - _tcscpy(st_TimeZone.tszTimeCountry, _T("哈萨克斯坦阿拉木图")); - stl_MapTimezone.insert(make_pair(_T("ALMT"), st_TimeZone)); + _tcsxcpy(st_TimeZone.tszTimeCountry, _X("哈萨克斯坦阿拉木图")); + stl_MapTimezone.insert(make_pair(_X("ALMT"), st_TimeZone)); memset(&st_TimeZone, '\0', sizeof(MODULEPLUGIN_TIMEZONE)); st_TimeZone.st_TimeZone.wHour = 6; st_TimeZone.st_TimeZone.wMinute = 30; - _tcscpy(st_TimeZone.tszTimeCountry, _T("缅甸时间")); - stl_MapTimezone.insert(make_pair(_T("MMT"), st_TimeZone)); + _tcsxcpy(st_TimeZone.tszTimeCountry, _X("缅甸时间")); + stl_MapTimezone.insert(make_pair(_X("MMT"), st_TimeZone)); memset(&st_TimeZone, '\0', sizeof(MODULEPLUGIN_TIMEZONE)); st_TimeZone.st_TimeZone.wHour = 7; - _tcscpy(st_TimeZone.tszTimeCountry, _T("澳大利亚圣诞岛时间")); - stl_MapTimezone.insert(make_pair(_T("CXT"), st_TimeZone)); + _tcsxcpy(st_TimeZone.tszTimeCountry, _X("澳大利亚圣诞岛时间")); + stl_MapTimezone.insert(make_pair(_X("CXT"), st_TimeZone)); memset(&st_TimeZone, '\0', sizeof(MODULEPLUGIN_TIMEZONE)); st_TimeZone.st_TimeZone.wHour = 7; - _tcscpy(st_TimeZone.tszTimeCountry, _T("阿拉木图")); - stl_MapTimezone.insert(make_pair(_T("ALMST"), st_TimeZone)); + _tcsxcpy(st_TimeZone.tszTimeCountry, _X("阿拉木图")); + stl_MapTimezone.insert(make_pair(_X("ALMST"), st_TimeZone)); memset(&st_TimeZone, '\0', sizeof(MODULEPLUGIN_TIMEZONE)); st_TimeZone.st_TimeZone.wHour = 7; st_TimeZone.st_TimeZone.wMinute = 30; - _tcscpy(st_TimeZone.tszTimeCountry, _T("爪哇时间")); - stl_MapTimezone.insert(make_pair(_T("JT"), st_TimeZone)); + _tcsxcpy(st_TimeZone.tszTimeCountry, _X("爪哇时间")); + stl_MapTimezone.insert(make_pair(_X("JT"), st_TimeZone)); memset(&st_TimeZone, '\0', sizeof(MODULEPLUGIN_TIMEZONE)); st_TimeZone.st_TimeZone.wHour = 8; - _tcscpy(st_TimeZone.tszTimeCountry, _T("西澳大利亚标准时间")); - stl_MapTimezone.insert(make_pair(_T("WST"), st_TimeZone)); + _tcsxcpy(st_TimeZone.tszTimeCountry, _X("西澳大利亚标准时间")); + stl_MapTimezone.insert(make_pair(_X("WST"), st_TimeZone)); memset(&st_TimeZone, '\0', sizeof(MODULEPLUGIN_TIMEZONE)); st_TimeZone.st_TimeZone.wHour = 8; - _tcscpy(st_TimeZone.tszTimeCountry, _T("中国北京时间")); - stl_MapTimezone.insert(make_pair(_T("CCT"), st_TimeZone)); + _tcsxcpy(st_TimeZone.tszTimeCountry, _X("中国北京时间")); + stl_MapTimezone.insert(make_pair(_X("CCT"), st_TimeZone)); memset(&st_TimeZone, '\0', sizeof(MODULEPLUGIN_TIMEZONE)); st_TimeZone.st_TimeZone.wHour = 8; - _tcscpy(st_TimeZone.tszTimeCountry, _T("澳大利亚西部标准时间")); - stl_MapTimezone.insert(make_pair(_T("AWST"), st_TimeZone)); + _tcsxcpy(st_TimeZone.tszTimeCountry, _X("澳大利亚西部标准时间")); + stl_MapTimezone.insert(make_pair(_X("AWST"), st_TimeZone)); memset(&st_TimeZone, '\0', sizeof(MODULEPLUGIN_TIMEZONE)); st_TimeZone.st_TimeZone.wHour = 9; - _tcscpy(st_TimeZone.tszTimeCountry, _T("韩国朝鲜标准时间")); - stl_MapTimezone.insert(make_pair(_T("KST"), st_TimeZone)); + _tcsxcpy(st_TimeZone.tszTimeCountry, _X("韩国朝鲜标准时间")); + stl_MapTimezone.insert(make_pair(_X("KST"), st_TimeZone)); memset(&st_TimeZone, '\0', sizeof(MODULEPLUGIN_TIMEZONE)); st_TimeZone.st_TimeZone.wHour = 9; - _tcscpy(st_TimeZone.tszTimeCountry, _T("日本标准时间")); - stl_MapTimezone.insert(make_pair(_T("JST"), st_TimeZone)); + _tcsxcpy(st_TimeZone.tszTimeCountry, _X("日本标准时间")); + stl_MapTimezone.insert(make_pair(_X("JST"), st_TimeZone)); memset(&st_TimeZone, '\0', sizeof(MODULEPLUGIN_TIMEZONE)); st_TimeZone.st_TimeZone.wHour = 9; - _tcscpy(st_TimeZone.tszTimeCountry, _T("马绍尔群岛瓜加林岛时间")); - stl_MapTimezone.insert(make_pair(_T("MHT"), st_TimeZone)); + _tcsxcpy(st_TimeZone.tszTimeCountry, _X("马绍尔群岛瓜加林岛时间")); + stl_MapTimezone.insert(make_pair(_X("MHT"), st_TimeZone)); memset(&st_TimeZone, '\0', sizeof(MODULEPLUGIN_TIMEZONE)); st_TimeZone.st_TimeZone.wHour = 9; st_TimeZone.st_TimeZone.wMinute = 30; - _tcscpy(st_TimeZone.tszTimeCountry, _T("中澳大利亚标准时间")); - stl_MapTimezone.insert(make_pair(_T("CAST"), st_TimeZone)); + _tcsxcpy(st_TimeZone.tszTimeCountry, _X("中澳大利亚标准时间")); + stl_MapTimezone.insert(make_pair(_X("CAST"), st_TimeZone)); memset(&st_TimeZone, '\0', sizeof(MODULEPLUGIN_TIMEZONE)); st_TimeZone.st_TimeZone.wHour = 9; st_TimeZone.st_TimeZone.wMinute = 30; - _tcscpy(st_TimeZone.tszTimeCountry, _T("南澳大利亚标准时间")); - stl_MapTimezone.insert(make_pair(_T("SAST"), st_TimeZone)); + _tcsxcpy(st_TimeZone.tszTimeCountry, _X("南澳大利亚标准时间")); + stl_MapTimezone.insert(make_pair(_X("SAST"), st_TimeZone)); memset(&st_TimeZone, '\0', sizeof(MODULEPLUGIN_TIMEZONE)); st_TimeZone.st_TimeZone.wHour = 10; - _tcscpy(st_TimeZone.tszTimeCountry, _T("澳大利亚墨尔本")); - stl_MapTimezone.insert(make_pair(_T("LIGT"), st_TimeZone)); + _tcsxcpy(st_TimeZone.tszTimeCountry, _X("澳大利亚墨尔本")); + stl_MapTimezone.insert(make_pair(_X("LIGT"), st_TimeZone)); memset(&st_TimeZone, '\0', sizeof(MODULEPLUGIN_TIMEZONE)); st_TimeZone.st_TimeZone.wHour = 10; - _tcscpy(st_TimeZone.tszTimeCountry, _T("关岛标准时间")); - stl_MapTimezone.insert(make_pair(_T("GST"), st_TimeZone)); + _tcsxcpy(st_TimeZone.tszTimeCountry, _X("关岛标准时间")); + stl_MapTimezone.insert(make_pair(_X("GST"), st_TimeZone)); memset(&st_TimeZone, '\0', sizeof(MODULEPLUGIN_TIMEZONE)); st_TimeZone.st_TimeZone.wHour = 10; - _tcscpy(st_TimeZone.tszTimeCountry, _T("东澳大利亚标准时间")); - stl_MapTimezone.insert(make_pair(_T("EAST"), st_TimeZone)); + _tcsxcpy(st_TimeZone.tszTimeCountry, _X("东澳大利亚标准时间")); + stl_MapTimezone.insert(make_pair(_X("EAST"), st_TimeZone)); memset(&st_TimeZone, '\0', sizeof(MODULEPLUGIN_TIMEZONE)); st_TimeZone.st_TimeZone.wHour = 10; - _tcscpy(st_TimeZone.tszTimeCountry, _T("澳大利亚东部标准时间")); - stl_MapTimezone.insert(make_pair(_T("AEST"), st_TimeZone)); + _tcsxcpy(st_TimeZone.tszTimeCountry, _X("澳大利亚东部标准时间")); + stl_MapTimezone.insert(make_pair(_X("AEST"), st_TimeZone)); memset(&st_TimeZone, '\0', sizeof(MODULEPLUGIN_TIMEZONE)); st_TimeZone.st_TimeZone.wHour = 10; st_TimeZone.st_TimeZone.wMinute = 30; - _tcscpy(st_TimeZone.tszTimeCountry, _T("南澳大利亚夏时制")); - stl_MapTimezone.insert(make_pair(_T("SADT"), st_TimeZone)); + _tcsxcpy(st_TimeZone.tszTimeCountry, _X("南澳大利亚夏时制")); + stl_MapTimezone.insert(make_pair(_X("SADT"), st_TimeZone)); memset(&st_TimeZone, '\0', sizeof(MODULEPLUGIN_TIMEZONE)); st_TimeZone.st_TimeZone.wHour = 10; st_TimeZone.st_TimeZone.wMinute = 30; - _tcscpy(st_TimeZone.tszTimeCountry, _T("中澳大利亚夏时制")); - stl_MapTimezone.insert(make_pair(_T("CADT"), st_TimeZone)); + _tcsxcpy(st_TimeZone.tszTimeCountry, _X("中澳大利亚夏时制")); + stl_MapTimezone.insert(make_pair(_X("CADT"), st_TimeZone)); memset(&st_TimeZone, '\0', sizeof(MODULEPLUGIN_TIMEZONE)); st_TimeZone.st_TimeZone.wHour = 10; st_TimeZone.st_TimeZone.wMinute = 30; - _tcscpy(st_TimeZone.tszTimeCountry, _T("中澳大利亚标准夏时制")); - stl_MapTimezone.insert(make_pair(_T("ACSST"), st_TimeZone)); + _tcsxcpy(st_TimeZone.tszTimeCountry, _X("中澳大利亚标准夏时制")); + stl_MapTimezone.insert(make_pair(_X("ACSST"), st_TimeZone)); memset(&st_TimeZone, '\0', sizeof(MODULEPLUGIN_TIMEZONE)); st_TimeZone.st_TimeZone.wHour = 11; - _tcscpy(st_TimeZone.tszTimeCountry, _T("澳大利亚东部标准夏时制")); - stl_MapTimezone.insert(make_pair(_T("AESST"), st_TimeZone)); + _tcsxcpy(st_TimeZone.tszTimeCountry, _X("澳大利亚东部标准夏时制")); + stl_MapTimezone.insert(make_pair(_X("AESST"), st_TimeZone)); memset(&st_TimeZone, '\0', sizeof(MODULEPLUGIN_TIMEZONE)); st_TimeZone.st_TimeZone.wHour = 12; - _tcscpy(st_TimeZone.tszTimeCountry, _T("新西兰标准时间")); - stl_MapTimezone.insert(make_pair(_T("NZST"), st_TimeZone)); + _tcsxcpy(st_TimeZone.tszTimeCountry, _X("新西兰标准时间")); + stl_MapTimezone.insert(make_pair(_X("NZST"), st_TimeZone)); memset(&st_TimeZone, '\0', sizeof(MODULEPLUGIN_TIMEZONE)); st_TimeZone.st_TimeZone.wHour = 12; - _tcscpy(st_TimeZone.tszTimeCountry, _T("新西兰时间")); - stl_MapTimezone.insert(make_pair(_T("NZT"), st_TimeZone)); + _tcsxcpy(st_TimeZone.tszTimeCountry, _X("新西兰时间")); + stl_MapTimezone.insert(make_pair(_X("NZT"), st_TimeZone)); memset(&st_TimeZone, '\0', sizeof(MODULEPLUGIN_TIMEZONE)); st_TimeZone.st_TimeZone.wHour = 12; - _tcscpy(st_TimeZone.tszTimeCountry, _T("国际日期变更线,东边")); - stl_MapTimezone.insert(make_pair(_T("IDLW"), st_TimeZone)); + _tcsxcpy(st_TimeZone.tszTimeCountry, _X("国际日期变更线,东边")); + stl_MapTimezone.insert(make_pair(_X("IDLW"), st_TimeZone)); memset(&st_TimeZone, '\0', sizeof(MODULEPLUGIN_TIMEZONE)); st_TimeZone.st_TimeZone.wHour = 13; - _tcscpy(st_TimeZone.tszTimeCountry, _T("新西兰夏时制")); - stl_MapTimezone.insert(make_pair(_T("NZDT"), st_TimeZone)); + _tcsxcpy(st_TimeZone.tszTimeCountry, _X("新西兰夏时制")); + stl_MapTimezone.insert(make_pair(_X("NZDT"), st_TimeZone)); memset(&st_TimeZone, '\0', sizeof(MODULEPLUGIN_TIMEZONE)); st_TimeZone.st_TimeZone.wHour = 14; - _tcscpy(st_TimeZone.tszTimeCountry, _T("基里巴斯线岛时间")); - stl_MapTimezone.insert(make_pair(_T("KLT"), st_TimeZone)); - return TRUE; + _tcsxcpy(st_TimeZone.tszTimeCountry, _X("基里巴斯线岛时间")); + stl_MapTimezone.insert(make_pair(_X("KLT"), st_TimeZone)); + return true; } /******************************************************************** 函数名称:PluginCore_UnInit @@ -509,7 +509,7 @@ BOOL CPlugin_Timezone::PluginCore_Init(LPVOID lParam) *********************************************************************/ void CPlugin_Timezone::PluginCore_UnInit() { - Timezone_IsErrorOccur = FALSE; + Timezone_IsErrorOccur = false; stl_MapTimezone.clear(); } @@ -521,20 +521,20 @@ void CPlugin_Timezone::PluginCore_UnInit() 意思:是否成功 备注: *********************************************************************/ -BOOL CPlugin_Timezone::PluginCore_Call(TCHAR*** pppHDRList, int nListCount, int* pInt_HTTPCode, TCHAR* ptszMsgBuffer, int* pInt_MsgLen, LPCTSTR lpszMsgBuffer, int nMsgLen) +bool CPlugin_Timezone::PluginCore_Call(XCHAR*** pppHDRList, int nListCount, int* pInt_HTTPCode, XCHAR* ptszMsgBuffer, int* pInt_MsgLen, LPCXSTR lpszMsgBuffer, int nMsgLen) { - Timezone_IsErrorOccur = FALSE; + Timezone_IsErrorOccur = false; if ((NULL == pInt_HTTPCode) || (NULL == ptszMsgBuffer) || (NULL == pInt_MsgLen)) { - Timezone_IsErrorOccur = TRUE; + Timezone_IsErrorOccur = true; Timezone_dwErrorCode = ERROR_XENGINE_APISERVICE_PLUGIN_MODULE_TIMEZONE_PARAMENT; - return FALSE; + return false; } - TCHAR tszKeyName[128]; - TCHAR tszParamType[128]; - TCHAR tszParamCvt[128]; - TCHAR tszParamTime[128]; + XCHAR tszKeyName[128]; + XCHAR tszParamType[128]; + XCHAR tszParamCvt[128]; + XCHAR tszParamTime[128]; memset(tszKeyName, '\0', sizeof(tszKeyName)); memset(tszParamType, '\0', sizeof(tszParamType)); @@ -542,18 +542,18 @@ BOOL CPlugin_Timezone::PluginCore_Call(TCHAR*** pppHDRList, int nListCount, int* memset(tszParamTime, '\0', sizeof(tszParamTime)); BaseLib_OperatorString_GetKeyValue((*pppHDRList)[1], "=", tszKeyName, tszParamType); - if (0 == _ttoi(tszParamType)) + if (0 == _ttxoi(tszParamType)) { //如果是统计 Plugin_Timezone_Count(ptszMsgBuffer, pInt_MsgLen); } - else if (1 == _ttoi(tszParamType)) + else if (1 == _ttxoi(tszParamType)) { //如果是列举 BaseLib_OperatorString_GetKeyValue((*pppHDRList)[2], "=", tszKeyName, tszParamCvt); Plugin_Timezone_List(tszParamCvt, ptszMsgBuffer, pInt_MsgLen); } - else if (2 == _ttoi(tszParamType)) + else if (2 == _ttxoi(tszParamType)) { //如果是转换 BaseLib_OperatorString_GetKeyValue((*pppHDRList)[2], "=", tszKeyName, tszParamCvt); @@ -561,19 +561,19 @@ BOOL CPlugin_Timezone::PluginCore_Call(TCHAR*** pppHDRList, int nListCount, int* if (!Plugin_Timezone_Convert(tszParamCvt, tszParamTime, ptszMsgBuffer, pInt_MsgLen)) { *pInt_HTTPCode = 404; - return FALSE; + return false; } } *pInt_HTTPCode = 200; - return TRUE; + return true; } ////////////////////////////////////////////////////////////////////////// // 保护函数 ////////////////////////////////////////////////////////////////////////// -BOOL CPlugin_Timezone::Plugin_Timezone_Count(TCHAR* ptszMsgBufer, int* pInt_Len) +bool CPlugin_Timezone::Plugin_Timezone_Count(XCHAR* ptszMsgBufer, int* pInt_Len) { - Timezone_IsErrorOccur = FALSE; + Timezone_IsErrorOccur = false; Json::Value st_JsonRoot; Json::Value st_JsonObject; @@ -587,11 +587,11 @@ BOOL CPlugin_Timezone::Plugin_Timezone_Count(TCHAR* ptszMsgBufer, int* pInt_Len) *pInt_Len = Json::writeString(st_JsonBuilder, st_JsonRoot).length(); memcpy(ptszMsgBufer, Json::writeString(st_JsonBuilder, st_JsonRoot).c_str(), *pInt_Len); - return TRUE; + return true; } -BOOL CPlugin_Timezone::Plugin_Timezone_List(LPCTSTR lpszConvert, TCHAR* ptszMsgBufer, int* pInt_Len) +bool CPlugin_Timezone::Plugin_Timezone_List(LPCXSTR lpszConvert, XCHAR* ptszMsgBufer, int* pInt_Len) { - Timezone_IsErrorOccur = FALSE; + Timezone_IsErrorOccur = false; int nPosStart = 0; int nPosEnd = 0; @@ -599,7 +599,7 @@ BOOL CPlugin_Timezone::Plugin_Timezone_List(LPCTSTR lpszConvert, TCHAR* ptszMsgB Json::Value st_JsonObject; Json::StreamWriterBuilder st_JsonBuilder; - _stscanf(lpszConvert, _T("%d-%d"), &nPosStart, &nPosEnd); + _stxscanf(lpszConvert, _X("%d-%d"), &nPosStart, &nPosEnd); unordered_map::const_iterator stl_MapIterator = stl_MapTimezone.cbegin(); for (int i = 0; stl_MapIterator != stl_MapTimezone.cend(); stl_MapIterator++, i++) @@ -622,11 +622,11 @@ BOOL CPlugin_Timezone::Plugin_Timezone_List(LPCTSTR lpszConvert, TCHAR* ptszMsgB *pInt_Len = Json::writeString(st_JsonBuilder, st_JsonRoot).length(); memcpy(ptszMsgBufer, Json::writeString(st_JsonBuilder, st_JsonRoot).c_str(), *pInt_Len); - return TRUE; + return true; } -BOOL CPlugin_Timezone::Plugin_Timezone_Convert(LPCTSTR lpszConvert, LPCTSTR lpszTimeStr, TCHAR* ptszMsgBufer, int* pInt_Len) +bool CPlugin_Timezone::Plugin_Timezone_Convert(LPCXSTR lpszConvert, LPCXSTR lpszTimeStr, XCHAR* ptszMsgBufer, int* pInt_Len) { - Timezone_IsErrorOccur = FALSE; + Timezone_IsErrorOccur = false; Json::Value st_JsonRoot; Json::Value st_JsonObject; @@ -635,9 +635,9 @@ BOOL CPlugin_Timezone::Plugin_Timezone_Convert(LPCTSTR lpszConvert, LPCTSTR lpsz unordered_map::const_iterator stl_MapIterator = stl_MapTimezone.find(lpszConvert); if (stl_MapIterator == stl_MapTimezone.end()) { - return FALSE; + return false; } - TCHAR tszTimeStr[64]; + XCHAR tszTimeStr[64]; XENGINE_LIBTIMER st_TimeStart; XENGINE_LIBTIMER st_TimeEnd; @@ -647,9 +647,9 @@ BOOL CPlugin_Timezone::Plugin_Timezone_Convert(LPCTSTR lpszConvert, LPCTSTR lpsz st_TimeEnd = stl_MapIterator->second.st_TimeZone; - _stscanf(lpszTimeStr, _T("%04d-%02d-%02d_%02d:%02d:%02d"), &st_TimeStart.wYear, &st_TimeStart.wMonth, &st_TimeStart.wDay, &st_TimeStart.wHour, &st_TimeStart.wMinute, &st_TimeStart.wSecond); + _stxscanf(lpszTimeStr, _X("%04d-%02d-%02d_%02d:%02d:%02d"), &st_TimeStart.wYear, &st_TimeStart.wMonth, &st_TimeStart.wDay, &st_TimeStart.wHour, &st_TimeStart.wMinute, &st_TimeStart.wSecond); BaseLib_OperatorTimeSpan_CalForStu(&st_TimeStart, &st_TimeEnd); - _stprintf(tszTimeStr, _T("%04d-%02d-%02d %02d:%02d:%02d"), st_TimeEnd.wYear, st_TimeEnd.wMonth, st_TimeEnd.wDay, st_TimeEnd.wHour, st_TimeEnd.wMinute, st_TimeEnd.wSecond); + _xstprintf(tszTimeStr, _X("%04d-%02d-%02d %02d:%02d:%02d"), st_TimeEnd.wYear, st_TimeEnd.wMonth, st_TimeEnd.wDay, st_TimeEnd.wHour, st_TimeEnd.wMinute, st_TimeEnd.wSecond); st_JsonObject["tszTimeStr"] = tszTimeStr; st_JsonObject["tszTimeZone"] = stl_MapIterator->first.c_str(); @@ -661,5 +661,5 @@ BOOL CPlugin_Timezone::Plugin_Timezone_Convert(LPCTSTR lpszConvert, LPCTSTR lpsz *pInt_Len = Json::writeString(st_JsonBuilder, st_JsonRoot).length(); memcpy(ptszMsgBufer, Json::writeString(st_JsonBuilder, st_JsonRoot).c_str(), *pInt_Len); - return TRUE; + return true; } \ No newline at end of file diff --git a/XEngine_Source/XEngine_PluginModule/ModulePlugin_Timezone/Plugin_Timezone/Plugin_Timezone.h b/XEngine_Source/XEngine_PluginModule/ModulePlugin_Timezone/Plugin_Timezone/Plugin_Timezone.h index d5ef3ff41ecf8eed56141e34c4c33e30276f7e52..284890387ebd4bf12a1fe991fdc506223a82a31b 100644 --- a/XEngine_Source/XEngine_PluginModule/ModulePlugin_Timezone/Plugin_Timezone/Plugin_Timezone.h +++ b/XEngine_Source/XEngine_PluginModule/ModulePlugin_Timezone/Plugin_Timezone/Plugin_Timezone.h @@ -13,7 +13,7 @@ typedef struct { XENGINE_LIBTIMER st_TimeZone; - TCHAR tszTimeCountry[MAX_PATH]; + XCHAR tszTimeCountry[MAX_PATH]; }MODULEPLUGIN_TIMEZONE; @@ -23,13 +23,13 @@ public: CPlugin_Timezone(); ~CPlugin_Timezone(); public: - BOOL PluginCore_Init(LPVOID lParam); + bool PluginCore_Init(XPVOID lParam); void PluginCore_UnInit(); - BOOL PluginCore_Call(TCHAR*** pppHDRList, int nListCount, int* pInt_HTTPCode, TCHAR* ptszMsgBuffer, int* pInt_MsgLen, LPCTSTR lpszMsgBuffer, int nMsgLen); + bool PluginCore_Call(XCHAR*** pppHDRList, int nListCount, int* pInt_HTTPCode, XCHAR* ptszMsgBuffer, int* pInt_MsgLen, LPCXSTR lpszMsgBuffer, int nMsgLen); protected: - BOOL Plugin_Timezone_Count(TCHAR* ptszMsgBufer, int* pInt_Len); - BOOL Plugin_Timezone_List(LPCTSTR lpszConvert, TCHAR* ptszMsgBufer, int* pInt_Len); - BOOL Plugin_Timezone_Convert(LPCTSTR lpszConvert, LPCTSTR lpszTimeStr, TCHAR* ptszMsgBufer, int* pInt_Len); + bool Plugin_Timezone_Count(XCHAR* ptszMsgBufer, int* pInt_Len); + bool Plugin_Timezone_List(LPCXSTR lpszConvert, XCHAR* ptszMsgBufer, int* pInt_Len); + bool Plugin_Timezone_Convert(LPCXSTR lpszConvert, LPCXSTR lpszTimeStr, XCHAR* ptszMsgBufer, int* pInt_Len); private: unordered_map stl_MapTimezone; }; diff --git a/XEngine_Source/XEngine_PluginModule/ModulePlugin_Timezone/Timezone_Define.h b/XEngine_Source/XEngine_PluginModule/ModulePlugin_Timezone/Timezone_Define.h index df53fddf7f2247b3eedcd4ba1a8aab9dcc539851..bf604200089d15ba14d7463f7fb7935504b03f83 100644 --- a/XEngine_Source/XEngine_PluginModule/ModulePlugin_Timezone/Timezone_Define.h +++ b/XEngine_Source/XEngine_PluginModule/ModulePlugin_Timezone/Timezone_Define.h @@ -13,7 +13,7 @@ ////////////////////////////////////////////////////////////////////////// // 导出函数定义 ////////////////////////////////////////////////////////////////////////// -extern "C" DWORD PluginCore_GetLastError(); +extern "C" XLONG PluginCore_GetLastError(); /********************************************************************************* * 导出函数定义 * *********************************************************************************/ @@ -30,7 +30,7 @@ extern "C" DWORD PluginCore_GetLastError(); 意思:是否成功 备注: *********************************************************************/ -extern "C" BOOL PluginCore_Init(LPVOID lParam = NULL); +extern "C" bool PluginCore_Init(XPVOID lParam = NULL); /******************************************************************** 函数名称:PluginCore_UnInit 函数功能:卸载插件 @@ -48,4 +48,4 @@ extern "C" void PluginCore_UnInit(); 意思:是否成功 备注: *********************************************************************/ -extern "C" BOOL PluginCore_Call(TCHAR * **pppHDRList, int nListCount, int* pInt_HTTPCode, TCHAR * ptszMsgBuffer, int* pInt_MsgLen, LPCTSTR lpszMsgBuffer = NULL, int nMsgLen = 0); \ No newline at end of file +extern "C" bool PluginCore_Call(XCHAR * **pppHDRList, int nListCount, int* pInt_HTTPCode, XCHAR * ptszMsgBuffer, int* pInt_MsgLen, LPCXSTR lpszMsgBuffer = NULL, int nMsgLen = 0); \ No newline at end of file diff --git a/XEngine_Source/XEngine_PluginModule/ModulePlugin_Timezone/dllmain.cpp b/XEngine_Source/XEngine_PluginModule/ModulePlugin_Timezone/dllmain.cpp index daed8c8f7ac50ca1466016a0529648d18125a7e7..594ff2123d474b129bb2014fb572f03c9741bf0b 100644 --- a/XEngine_Source/XEngine_PluginModule/ModulePlugin_Timezone/dllmain.cpp +++ b/XEngine_Source/XEngine_PluginModule/ModulePlugin_Timezone/dllmain.cpp @@ -1,9 +1,9 @@ // dllmain.cpp : 定义 DLL 应用程序的入口点。 #include "pch.h" -BOOL APIENTRY DllMain( HMODULE hModule, - DWORD ul_reason_for_call, - LPVOID lpReserved +bool APIENTRY DllMain( HMODULE hModule, + XLONG ul_reason_for_call, + XPVOID lpReserved ) { switch (ul_reason_for_call) @@ -14,6 +14,6 @@ BOOL APIENTRY DllMain( HMODULE hModule, case DLL_PROCESS_DETACH: break; } - return TRUE; + return true; } diff --git a/XEngine_Source/XEngine_PluginModule/ModulePlugin_Timezone/pch.cpp b/XEngine_Source/XEngine_PluginModule/ModulePlugin_Timezone/pch.cpp index e7dbfaa36656b4210b3ea2e20b7e7a986c85434f..555197ccf9573353cefa20ee91235ae0c5b87721 100644 --- a/XEngine_Source/XEngine_PluginModule/ModulePlugin_Timezone/pch.cpp +++ b/XEngine_Source/XEngine_PluginModule/ModulePlugin_Timezone/pch.cpp @@ -11,21 +11,21 @@ // Purpose: 导出实现 // History: *********************************************************************/ -BOOL Timezone_IsErrorOccur = FALSE; -DWORD Timezone_dwErrorCode = 0; +bool Timezone_IsErrorOccur = false; +XLONG Timezone_dwErrorCode = 0; ////////////////////////////////////////////////////////////////////////// CPlugin_Timezone m_PluginTimes; ////////////////////////////////////////////////////////////////////////// // 导出函数定义 ////////////////////////////////////////////////////////////////////////// -extern "C" DWORD PluginCore_GetLastError() +extern "C" XLONG PluginCore_GetLastError() { return Timezone_dwErrorCode; } /********************************************************************************* * 导出函数定义 * *********************************************************************************/ -extern "C" BOOL PluginCore_Init(LPVOID lParam) +extern "C" bool PluginCore_Init(XPVOID lParam) { return m_PluginTimes.PluginCore_Init(lParam); } @@ -33,7 +33,7 @@ extern "C" void PluginCore_UnInit() { m_PluginTimes.PluginCore_UnInit(); } -extern "C" BOOL PluginCore_Call(TCHAR * **pppHDRList, int nListCount, int* pInt_HTTPCode, TCHAR * ptszMsgBuffer, int* pInt_MsgLen, LPCTSTR lpszMsgBuffer, int nMsgLen) +extern "C" bool PluginCore_Call(XCHAR * **pppHDRList, int nListCount, int* pInt_HTTPCode, XCHAR * ptszMsgBuffer, int* pInt_MsgLen, LPCXSTR lpszMsgBuffer, int nMsgLen) { return m_PluginTimes.PluginCore_Call(pppHDRList, nListCount, pInt_HTTPCode, ptszMsgBuffer, pInt_MsgLen, lpszMsgBuffer, nMsgLen); } \ No newline at end of file diff --git a/XEngine_Source/XEngine_PluginModule/ModulePlugin_Timezone/pch.h b/XEngine_Source/XEngine_PluginModule/ModulePlugin_Timezone/pch.h index f4618ee19bdcefd825aef75c64921862ef9e6b88..5e01bd3f58743b8d91479022a415e7c031cdf412 100644 --- a/XEngine_Source/XEngine_PluginModule/ModulePlugin_Timezone/pch.h +++ b/XEngine_Source/XEngine_PluginModule/ModulePlugin_Timezone/pch.h @@ -37,8 +37,8 @@ using namespace std; // Purpose: 公用头文件 // History: *********************************************************************/ -extern BOOL Timezone_IsErrorOccur; -extern DWORD Timezone_dwErrorCode; +extern bool Timezone_IsErrorOccur; +extern XLONG Timezone_dwErrorCode; #ifdef _MSC_BUILD diff --git a/XEngine_Source/XEngine_PluginModule/ModulePlugin_Zodiac/Makefile b/XEngine_Source/XEngine_PluginModule/ModulePlugin_Zodiac/Makefile index fe8d368108729579a483b3101038dfa3929286f2..49a47fbd9bdcf79a8aa0d0b8eb5f54e709d09a80 100644 --- a/XEngine_Source/XEngine_PluginModule/ModulePlugin_Zodiac/Makefile +++ b/XEngine_Source/XEngine_PluginModule/ModulePlugin_Zodiac/Makefile @@ -1,30 +1,23 @@ CC = g++ -Wall -std=c++17 -fPIC -SHAREFLAG = -shared -SHAREDLL = so +PLATFORM = linux +PLATVER = +PLATDIR = +FILEEXT = +LIBFLAG = RELEASE = 0 UNICODE = 0 -INCLUDE = -I ./ -I ../../XEngine_ThirdPart/jsoncpp -LOADBIN = -L /usr/local/lib/XEngine_Release/XEngine_BaseLib -L ../../XEngine_ThirdPart/jsoncpp -LIB = -lXEngine_BaseLib -lXEngine_Algorithm -ljsoncpp -LIBEX = -ldl -lpthread -LOADSO = -Wl,-rpath=../,--disable-new-dtags -LIBINCLUDE = Plugin_Zodiac.o pch.o - -ifeq ($(shell uname),Darwin) - SHAREDLL = dylib - SHAREFLAG = -dynamiclib - LOADSO = -else - SHAREDLL = so - SHAREFLAG = -shared -endif +LOADHDR = -I ./ -I ../../XEngine_ThirdPart/jsoncpp +LOADSO = -L /usr/local/lib/XEngine_Release/XEngine_BaseLib -L ../../XEngine_ThirdPart/jsoncpp +LIB = -lXEngine_BaseLib -ljsoncpp +LIBEX = +OBJECTS = Plugin_Zodiac.o pch.o ifeq ($(RELEASE),1) -FLAGS = -c -O2 +FLAGS = -c DEBUG = else -FLAGS = -c -DEBUG = -g +FLAGS = -c -lc_p +DEBUG = -g -pg endif ifeq ($(UNICODE),1) @@ -33,23 +26,45 @@ else UNICODE = endif +ifeq ($(PLATFORM),linux) + ifeq (/etc/redhat-release,$(wildcard /etc/redhat-release)) + PLATVER = -D __CENTOS__ + PLATDIR = XEngine_Linux/Centos + else + PLATVER = -D __UBUNTU__ + PLATDIR = XEngine_Linux/Ubuntu + endif + FILEEXT = so + LIBFLAG = -shared + LIBEX = -lpthread -lrt -ldl + LOADBIN = -Wl,-rpath=./,--disable-new-dtags +else ifeq ($(PLATFORM),mac) + CC += -Wno-deprecated-declarations + PLATVER = -D __MACOS__ + PLATDIR = XEngine_Mac + FILEEXT = dylib + LIBFLAG = -dynamiclib + LIBEX = -lpthread -ldl + LOADBIN = -Wl,-rpath,@loader_path/./ +endif + -all:$(LIBINCLUDE) - $(CC) $(DEBUG) $(LIBINCLUDE) -o libModulePlugin_Zodiac.$(SHAREDLL) $(SHAREFLAG) -fPIC $(LOADBIN) $(LIB) $(LIBEX) $(LOADSO) +all:$(OBJECTS) + $(CC) $(DEBUG) $(OBJECTS) -o libModulePlugin_Zodiac.$(FILEEXT) $(LIBFLAG) $(LIB) $(LIBEX) $(LOADSO) $(LOADBIN) Plugin_Zodiac.o:./Plugin_Zodiac/Plugin_Zodiac.cpp - $(CC) $(DEBUG) $(FLAGS) $(UNICODE) $(INCLUDE) ./Plugin_Zodiac/Plugin_Zodiac.cpp + $(CC) $(DEBUG) $(FLAGS) $(UNICODE) $(PLATVER) $(LOADHDR) ./Plugin_Zodiac/Plugin_Zodiac.cpp pch.o:./pch.cpp - $(CC) $(DEBUG) $(FLAGS) $(UNICODE) $(INCLUDE) ./pch.cpp + $(CC) $(DEBUG) $(FLAGS) $(UNICODE) $(PLATVER) $(LOADHDR) ./pch.cpp InstallAll:InstallSo -InstallSo:./libModulePlugin_Zodiac.$(SHAREDLL) - cp ./libModulePlugin_Zodiac.$(SHAREDLL) ../../../XEngine_Release/XEngine_LibPlugin/libModulePlugin_Zodiac.$(SHAREDLL) +InstallSo:./libModulePlugin_Zodiac.$(FILEEXT) + cp ./libModulePlugin_Zodiac.$(FILEEXT) ../../../XEngine_Release/XEngine_LibPlugin/libModulePlugin_Zodiac.$(FILEEXT) CleanAll:CleanObj CleanMk CleanObj: rm *.o CleanMk: - rm *.$(SHAREDLL) \ No newline at end of file + rm *.$(FILEEXT) \ No newline at end of file diff --git a/XEngine_Source/XEngine_PluginModule/ModulePlugin_Zodiac/ModulePlugin_Zodiac.vcxproj b/XEngine_Source/XEngine_PluginModule/ModulePlugin_Zodiac/ModulePlugin_Zodiac.vcxproj index 8d82c5a8b109e58bee7ea0641a6e34572f85923e..e5bd63ceb003829ce1003eee3d45cbbfd6196463 100644 --- a/XEngine_Source/XEngine_PluginModule/ModulePlugin_Zodiac/ModulePlugin_Zodiac.vcxproj +++ b/XEngine_Source/XEngine_PluginModule/ModulePlugin_Zodiac/ModulePlugin_Zodiac.vcxproj @@ -31,27 +31,27 @@ DynamicLibrary true v143 - MultiByte + Unicode DynamicLibrary false v143 true - MultiByte + Unicode DynamicLibrary true v143 - MultiByte + Unicode DynamicLibrary false v143 true - MultiByte + Unicode diff --git a/XEngine_Source/XEngine_PluginModule/ModulePlugin_Zodiac/PluginZodiac_Define.h b/XEngine_Source/XEngine_PluginModule/ModulePlugin_Zodiac/PluginZodiac_Define.h index 1a1cae95378dd970276da67ee03e1c0fa534717d..91ce91c79b22b2b5510a99e1c7b76ac5405cf741 100644 --- a/XEngine_Source/XEngine_PluginModule/ModulePlugin_Zodiac/PluginZodiac_Define.h +++ b/XEngine_Source/XEngine_PluginModule/ModulePlugin_Zodiac/PluginZodiac_Define.h @@ -13,7 +13,7 @@ ////////////////////////////////////////////////////////////////////////// // 导出函数定义 ////////////////////////////////////////////////////////////////////////// -extern "C" DWORD PluginCore_GetLastError(); +extern "C" XLONG PluginCore_GetLastError(); /********************************************************************************* * 导出函数定义 * *********************************************************************************/ @@ -30,7 +30,7 @@ extern "C" DWORD PluginCore_GetLastError(); 意思:是否成功 备注: *********************************************************************/ -extern "C" BOOL PluginCore_Init(LPVOID lParam = NULL); +extern "C" bool PluginCore_Init(XPVOID lParam = NULL); /******************************************************************** 函数名称:PluginCore_UnInit 函数功能:卸载插件 @@ -48,4 +48,4 @@ extern "C" void PluginCore_UnInit(); 意思:是否成功 备注: *********************************************************************/ -extern "C" BOOL PluginCore_Call(TCHAR * **pppHDRList, int nListCount, int* pInt_HTTPCode, TCHAR * ptszMsgBuffer, int* pInt_MsgLen, LPCTSTR lpszMsgBuffer = NULL, int nMsgLen = 0); \ No newline at end of file +extern "C" bool PluginCore_Call(XCHAR * **pppHDRList, int nListCount, int* pInt_HTTPCode, XCHAR * ptszMsgBuffer, int* pInt_MsgLen, LPCXSTR lpszMsgBuffer = NULL, int nMsgLen = 0); \ No newline at end of file diff --git a/XEngine_Source/XEngine_PluginModule/ModulePlugin_Zodiac/Plugin_Zodiac/Plugin_Zodiac.cpp b/XEngine_Source/XEngine_PluginModule/ModulePlugin_Zodiac/Plugin_Zodiac/Plugin_Zodiac.cpp index 2e2994a09da6cc8f88c6b641388e88e1cfc55da6..b6294d372b22b35ca020b1102342d7143287b844 100644 --- a/XEngine_Source/XEngine_PluginModule/ModulePlugin_Zodiac/Plugin_Zodiac/Plugin_Zodiac.cpp +++ b/XEngine_Source/XEngine_PluginModule/ModulePlugin_Zodiac/Plugin_Zodiac/Plugin_Zodiac.cpp @@ -13,18 +13,18 @@ *********************************************************************/ CPlugin_Zodiac::CPlugin_Zodiac() { - m_StrChinese[0] = _T("猴"); - m_StrChinese[1] = _T("鸡"); - m_StrChinese[2] = _T("狗"); - m_StrChinese[3] = _T("猪"); - m_StrChinese[4] = _T("鼠"); - m_StrChinese[5] = _T("牛"); - m_StrChinese[6] = _T("虎"); - m_StrChinese[7] = _T("兔"); - m_StrChinese[8] = _T("龙"); - m_StrChinese[9] = _T("蛇"); - m_StrChinese[10] = _T("马"); - m_StrChinese[11] = _T("羊"); + m_StrChinese[0] = _X("猴"); + m_StrChinese[1] = _X("鸡"); + m_StrChinese[2] = _X("狗"); + m_StrChinese[3] = _X("猪"); + m_StrChinese[4] = _X("鼠"); + m_StrChinese[5] = _X("牛"); + m_StrChinese[6] = _X("虎"); + m_StrChinese[7] = _X("兔"); + m_StrChinese[8] = _X("龙"); + m_StrChinese[9] = _X("蛇"); + m_StrChinese[10] = _X("马"); + m_StrChinese[11] = _X("羊"); } CPlugin_Zodiac::~CPlugin_Zodiac() { @@ -45,11 +45,11 @@ CPlugin_Zodiac::~CPlugin_Zodiac() 意思:是否成功 备注: *********************************************************************/ -BOOL CPlugin_Zodiac::PluginCore_Init(LPVOID lParam) +bool CPlugin_Zodiac::PluginCore_Init(XPVOID lParam) { - Zodiac_IsErrorOccur = FALSE; + Zodiac_IsErrorOccur = false; - return TRUE; + return true; } /******************************************************************** 函数名称:PluginCore_UnInit @@ -61,7 +61,7 @@ BOOL CPlugin_Zodiac::PluginCore_Init(LPVOID lParam) *********************************************************************/ void CPlugin_Zodiac::PluginCore_UnInit() { - Zodiac_IsErrorOccur = FALSE; + Zodiac_IsErrorOccur = false; } /******************************************************************** 函数名称:PluginCore_Call @@ -71,20 +71,20 @@ void CPlugin_Zodiac::PluginCore_UnInit() 意思:是否成功 备注: *********************************************************************/ -BOOL CPlugin_Zodiac::PluginCore_Call(TCHAR*** pppHDRList, int nListCount, int* pInt_HTTPCode, TCHAR* ptszMsgBuffer, int* pInt_MsgLen, LPCTSTR lpszMsgBuffer, int nMsgLen) +bool CPlugin_Zodiac::PluginCore_Call(XCHAR*** pppHDRList, int nListCount, int* pInt_HTTPCode, XCHAR* ptszMsgBuffer, int* pInt_MsgLen, LPCXSTR lpszMsgBuffer, int nMsgLen) { - Zodiac_IsErrorOccur = FALSE; + Zodiac_IsErrorOccur = false; if ((NULL == pInt_HTTPCode) || (NULL == ptszMsgBuffer) || (NULL == pInt_MsgLen)) { - Zodiac_IsErrorOccur = TRUE; + Zodiac_IsErrorOccur = true; Zodiac_dwErrorCode = ERROR_XENGINE_APISERVICE_PLUGIN_MODULE_ZODIAC_PARAMENT; - return FALSE; + return false; } - TCHAR tszKeyName[128]; - TCHAR tszValueName[128]; - TCHAR tszChineseZodiac[64]; - TCHAR tszEnglishZodiac[64]; + XCHAR tszKeyName[128]; + XCHAR tszValueName[128]; + XCHAR tszChineseZodiac[64]; + XCHAR tszEnglishZodiac[64]; Json::Value st_JsonRoot; Json::Value st_JsonObject; Json::StreamWriterBuilder st_JsonBuilder; @@ -109,25 +109,25 @@ BOOL CPlugin_Zodiac::PluginCore_Call(TCHAR*** pppHDRList, int nListCount, int* p *pInt_HTTPCode = 200; *pInt_MsgLen = Json::writeString(st_JsonBuilder, st_JsonRoot).length(); memcpy(ptszMsgBuffer, Json::writeString(st_JsonBuilder, st_JsonRoot).c_str(), *pInt_MsgLen); - return TRUE; + return true; } ////////////////////////////////////////////////////////////////////////// // 保护函数 ////////////////////////////////////////////////////////////////////////// -BOOL CPlugin_Zodiac::Plugin_Zodiac_Chinese(LPCTSTR lpszDate, TCHAR* ptszCZodiac) +bool CPlugin_Zodiac::Plugin_Zodiac_Chinese(LPCXSTR lpszDate, XCHAR* ptszCZodiac) { - Zodiac_IsErrorOccur = FALSE; + Zodiac_IsErrorOccur = false; - int nDate = _ttoi(lpszDate); + int nDate = _ttxoi(lpszDate); int nYear = nDate / 10000; nYear = nYear % 12; - _tcscpy(ptszCZodiac, m_StrChinese[nYear].c_str()); - return TRUE; + _tcsxcpy(ptszCZodiac, m_StrChinese[nYear].c_str()); + return true; } -BOOL CPlugin_Zodiac::Plugin_Zodiac_English(LPCTSTR lpszDate, TCHAR* ptszEZodiac) +bool CPlugin_Zodiac::Plugin_Zodiac_English(LPCXSTR lpszDate, XCHAR* ptszEZodiac) { - Zodiac_IsErrorOccur = FALSE; + Zodiac_IsErrorOccur = false; int nMonth = 0; int nDay = 0; @@ -154,6 +154,6 @@ BOOL CPlugin_Zodiac::Plugin_Zodiac_English(LPCTSTR lpszDate, TCHAR* ptszEZodiac) /*第一维输出月份,第二维由生日的日期/每个月对应的分割日期(constell_dates), 为0就表示一个月中的前一个星座,否则为后一个星座, 比如生日为5月6号,则对应输出 constells[4][0] 对应金牛座*/ - _tcscpy(ptszEZodiac, m_StrEnglish[nMonth - 1][nDay / nConstell[nMonth]].c_str()); - return TRUE; + _tcsxcpy(ptszEZodiac, m_StrEnglish[nMonth - 1][nDay / nConstell[nMonth]].c_str()); + return true; } \ No newline at end of file diff --git a/XEngine_Source/XEngine_PluginModule/ModulePlugin_Zodiac/Plugin_Zodiac/Plugin_Zodiac.h b/XEngine_Source/XEngine_PluginModule/ModulePlugin_Zodiac/Plugin_Zodiac/Plugin_Zodiac.h index e5491f67f76aa87fdcff1929b158c59b319080aa..3d6b0def85c37efbc8e3b8a3c7f147e3340b4d12 100644 --- a/XEngine_Source/XEngine_PluginModule/ModulePlugin_Zodiac/Plugin_Zodiac/Plugin_Zodiac.h +++ b/XEngine_Source/XEngine_PluginModule/ModulePlugin_Zodiac/Plugin_Zodiac/Plugin_Zodiac.h @@ -17,12 +17,12 @@ public: CPlugin_Zodiac(); ~CPlugin_Zodiac(); public: - BOOL PluginCore_Init(LPVOID lParam); + bool PluginCore_Init(XPVOID lParam); void PluginCore_UnInit(); - BOOL PluginCore_Call(TCHAR*** pppHDRList, int nListCount, int* pInt_HTTPCode, TCHAR* ptszMsgBuffer, int* pInt_MsgLen, LPCTSTR lpszMsgBuffer, int nMsgLen); + bool PluginCore_Call(XCHAR*** pppHDRList, int nListCount, int* pInt_HTTPCode, XCHAR* ptszMsgBuffer, int* pInt_MsgLen, LPCXSTR lpszMsgBuffer, int nMsgLen); protected: - BOOL Plugin_Zodiac_Chinese(LPCTSTR lpszDate, TCHAR* ptszCZodiac); - BOOL Plugin_Zodiac_English(LPCTSTR lpszDate, TCHAR* ptszEZodiac); + bool Plugin_Zodiac_Chinese(LPCXSTR lpszDate, XCHAR* ptszCZodiac); + bool Plugin_Zodiac_English(LPCXSTR lpszDate, XCHAR* ptszEZodiac); private: string m_StrChinese[12]; }; diff --git a/XEngine_Source/XEngine_PluginModule/ModulePlugin_Zodiac/dllmain.cpp b/XEngine_Source/XEngine_PluginModule/ModulePlugin_Zodiac/dllmain.cpp index daed8c8f7ac50ca1466016a0529648d18125a7e7..594ff2123d474b129bb2014fb572f03c9741bf0b 100644 --- a/XEngine_Source/XEngine_PluginModule/ModulePlugin_Zodiac/dllmain.cpp +++ b/XEngine_Source/XEngine_PluginModule/ModulePlugin_Zodiac/dllmain.cpp @@ -1,9 +1,9 @@ // dllmain.cpp : 定义 DLL 应用程序的入口点。 #include "pch.h" -BOOL APIENTRY DllMain( HMODULE hModule, - DWORD ul_reason_for_call, - LPVOID lpReserved +bool APIENTRY DllMain( HMODULE hModule, + XLONG ul_reason_for_call, + XPVOID lpReserved ) { switch (ul_reason_for_call) @@ -14,6 +14,6 @@ BOOL APIENTRY DllMain( HMODULE hModule, case DLL_PROCESS_DETACH: break; } - return TRUE; + return true; } diff --git a/XEngine_Source/XEngine_PluginModule/ModulePlugin_Zodiac/pch.cpp b/XEngine_Source/XEngine_PluginModule/ModulePlugin_Zodiac/pch.cpp index 5dad93d133cdd04ef39980da9e58d309fc04ad3a..c598bc1d308a8058ae4d078744bf64a21ba20061 100644 --- a/XEngine_Source/XEngine_PluginModule/ModulePlugin_Zodiac/pch.cpp +++ b/XEngine_Source/XEngine_PluginModule/ModulePlugin_Zodiac/pch.cpp @@ -11,21 +11,21 @@ // Purpose: 导出实现 // History: *********************************************************************/ -BOOL Zodiac_IsErrorOccur = FALSE; -DWORD Zodiac_dwErrorCode = 0; +bool Zodiac_IsErrorOccur = false; +XLONG Zodiac_dwErrorCode = 0; ////////////////////////////////////////////////////////////////////////// CPlugin_Zodiac m_PluginZodiac; ////////////////////////////////////////////////////////////////////////// // 导出函数定义 ////////////////////////////////////////////////////////////////////////// -extern "C" DWORD PluginCore_GetLastError() +extern "C" XLONG PluginCore_GetLastError() { return Zodiac_dwErrorCode; } /********************************************************************************* * 导出函数定义 * *********************************************************************************/ -extern "C" BOOL PluginCore_Init(LPVOID lParam) +extern "C" bool PluginCore_Init(XPVOID lParam) { return m_PluginZodiac.PluginCore_Init(lParam); } @@ -33,7 +33,7 @@ extern "C" void PluginCore_UnInit() { m_PluginZodiac.PluginCore_UnInit(); } -extern "C" BOOL PluginCore_Call(TCHAR * **pppHDRList, int nListCount, int* pInt_HTTPCode, TCHAR * ptszMsgBuffer, int* pInt_MsgLen, LPCTSTR lpszMsgBuffer, int nMsgLen) +extern "C" bool PluginCore_Call(XCHAR * **pppHDRList, int nListCount, int* pInt_HTTPCode, XCHAR * ptszMsgBuffer, int* pInt_MsgLen, LPCXSTR lpszMsgBuffer, int nMsgLen) { return m_PluginZodiac.PluginCore_Call(pppHDRList, nListCount, pInt_HTTPCode, ptszMsgBuffer, pInt_MsgLen, lpszMsgBuffer, nMsgLen); } \ No newline at end of file diff --git a/XEngine_Source/XEngine_PluginModule/ModulePlugin_Zodiac/pch.h b/XEngine_Source/XEngine_PluginModule/ModulePlugin_Zodiac/pch.h index 9cec5faf830fb7c5b99ccba2ada1d0c5b2c137af..30b983f40f1cf650847724cdd67ac193e9fe3e54 100644 --- a/XEngine_Source/XEngine_PluginModule/ModulePlugin_Zodiac/pch.h +++ b/XEngine_Source/XEngine_PluginModule/ModulePlugin_Zodiac/pch.h @@ -35,8 +35,8 @@ using namespace std; // Purpose: 公用头文件 // History: *********************************************************************/ -extern BOOL Zodiac_IsErrorOccur; -extern DWORD Zodiac_dwErrorCode; +extern bool Zodiac_IsErrorOccur; +extern XLONG Zodiac_dwErrorCode; #ifdef _MSC_BUILD diff --git a/XEngine_Source/XEngine_ServiceApp/XEngine_HttpApp/Makefile b/XEngine_Source/XEngine_ServiceApp/XEngine_HttpApp/Makefile index ed95c4fd0c2b5224ffd50ef17fbd32c1091bfe86..af217e7ad5d803aee1b0d6c5cc2114b882e10f45 100644 --- a/XEngine_Source/XEngine_ServiceApp/XEngine_HttpApp/Makefile +++ b/XEngine_Source/XEngine_ServiceApp/XEngine_HttpApp/Makefile @@ -1,28 +1,29 @@ -CC = g++ -Wall -Wno-deprecated-declarations +CC = g++ -Wall -std=c++17 -fPIC -Wformat-overflow=0 +PLATFORM = linux +PLATVER = +PLATDIR = +FILEEXT = +LIBFLAG = RELEASE = 0 -UNICODE = 0 -LOADBIN = -L /usr/local/lib/XEngine_Release/XEngine_BaseLib -L /usr/local/lib/XEngine_Release/XEngine_Core -L /usr/local/lib/XEngine_Release/XEngine_HelpComponents -L /usr/local/lib/XEngine_Release/XEngine_RfcComponents -L /usr/local/lib/XEngine_Release/XEngine_NetHelp \ - -L ../../XEngine_ModuleConfigure -L ../../XEngine_ModuleDatabase -L ../../XEngine_ModuleProtocol -L ../../XEngine_ModuleHelp -L ../../XEngine_ModulePlugin \ - -L ../../XEngine_ThirdPart/jsoncpp -LIB = -lXEngine_BaseLib -lXEngine_Algorithm -lXEngine_Core -lXEngine_ManagePool -lXEngine_OPenSsl -lHelpComponents_XLog -lRfcComponents_HttpServer -lNetHelp_APIClient \ +UNICODE = 0 +LOADHDR = -I ./ -I ../XEngine_ThirdPart/jsoncpp +LOADSO = -L /usr/local/lib/XEngine_Release/XEngine_BaseLib -L /usr/local/lib/XEngine_Release/XEngine_Core -L /usr/local/lib/XEngine_Release/XEngine_HelpComponents -L /usr/local/lib/XEngine_Release/XEngine_RfcComponents -L /usr/local/lib/XEngine_Release/XEngine_NetHelp \ + -L ../../XEngine_ModuleConfigure -L ../../XEngine_ModuleDatabase -L ../../XEngine_ModuleProtocol -L ../../XEngine_ModuleHelp -L ../../XEngine_ModulePlugin \ + -L ../../XEngine_ThirdPart/jsoncpp +LIB = -lXEngine_BaseLib -lXEngine_Algorithm -lXEngine_Core -lXEngine_ManagePool -lXEngine_OPenSsl -lHelpComponents_XLog -lRfcComponents_HttpProtocol -lNetHelp_APIClient \ -lXEngine_ModuleConfigure -lXEngine_ModuleDatabase -lXEngine_ModuleProtocol -lXEngine_ModuleHelp -lXEngine_ModulePlugin \ -ljsoncpp -LIBEX = -ldl -lpthread -LOADSO = -Wl,-rpath=./,--disable-new-dtags -LIBINCLUDE = XEngine_Configure.o XEngine_Network.o XEngine_HTTPTask.o XEngine_PluginTask.o XEngine_HttpApp.o \ - HTTPTask_IDCard.o HTTPTask_Bank.o HTTPTask_Language.o HTTPTask_Translation.o HTTPTask_P2PClient.o HTTPTask_OPtions.o HTTPTask_Locker.o HTTPTask_PostCode.o HTTPTask_Log.o HTTPTask_QRCode.o HTTPTask_SocketTest.o - -ifeq ($(shell uname),Darwin) - LOADSO = -endif - +LIBEX = +OBJECTS = XEngine_Configure.o XEngine_Network.o XEngine_HTTPTask.o XEngine_PluginTask.o XEngine_HttpApp.o \ + TaskGet_Bank.o TaskGet_IDCard.o TaskGet_Language.o TaskGet_Locker.o TaskGet_Translation.o \ + TaskPost_DTest.o TaskPost_Log.o TaskPost_P2PClient.o TaskPost_PostCode.o TaskPost_QRCode.o TaskPost_ShortLink.o TaskPost_SocketTest.o ifeq ($(RELEASE),1) -FLAGS = -c -O2 +FLAGS = -c DEBUG = else -FLAGS = -c -DEBUG = -g +FLAGS = -c -lc_p +DEBUG = -g -pg endif ifeq ($(UNICODE),1) @@ -31,43 +32,68 @@ else UNICODE = endif -all:$(LIBINCLUDE) - $(CC) $(DEBUG) $(LIBINCLUDE) -o XEngine_APIServiceApp $(LOADBIN) $(LIB) $(LIBEX) $(LOADSO) +ifeq ($(PLATFORM),linux) + ifeq (/etc/redhat-release,$(wildcard /etc/redhat-release)) + PLATVER = -D __CENTOS__ + PLATDIR = XEngine_Linux/Centos + else + PLATVER = -D __UBUNTU__ + PLATDIR = XEngine_Linux/Ubuntu + endif + FILEEXT = so + LIBFLAG = -shared + LIBEX = -lpthread -lrt -ldl + LOADBIN = -Wl,-rpath=./,--disable-new-dtags +else ifeq ($(PLATFORM),mac) + CC += -Wno-deprecated-declarations + PLATVER = -D __MACOS__ + PLATDIR = XEngine_Mac + FILEEXT = dylib + LIBFLAG = -dynamiclib + LIBEX = -lpthread -ldl + LOADBIN = -Wl,-rpath,@loader_path/./ +endif + +all:$(OBJECTS) + $(CC) $(DEBUG) $(OBJECTS) -o XEngine_APIServiceApp $(LIB) $(LIBEX) $(LOADSO) $(LOADBIN) XEngine_Configure.o:./XEngine_Configure.cpp - $(CC) $(DEBUG) $(FLAGS) $(UNICODE) ./XEngine_Configure.cpp + $(CC) $(DEBUG) $(FLAGS) $(UNICODE) $(PLATVER) $(LOADHDR) ./XEngine_Configure.cpp XEngine_Network.o:./XEngine_Network.cpp - $(CC) $(DEBUG) $(FLAGS) $(UNICODE) ./XEngine_Network.cpp + $(CC) $(DEBUG) $(FLAGS) $(UNICODE) $(PLATVER) $(LOADHDR) ./XEngine_Network.cpp XEngine_HTTPTask.o:./XEngine_HTTPTask.cpp - $(CC) $(DEBUG) $(FLAGS) $(UNICODE) ./XEngine_HTTPTask.cpp + $(CC) $(DEBUG) $(FLAGS) $(UNICODE) $(PLATVER) $(LOADHDR) ./XEngine_HTTPTask.cpp XEngine_PluginTask.o:./XEngine_PluginTask.cpp - $(CC) $(DEBUG) $(FLAGS) $(UNICODE) ./XEngine_PluginTask.cpp + $(CC) $(DEBUG) $(FLAGS) $(UNICODE) $(PLATVER) $(LOADHDR) ./XEngine_PluginTask.cpp + +TaskGet_Bank.o:./XEngine_TaskGet/TaskGet_Bank.cpp + $(CC) $(DEBUG) $(FLAGS) $(UNICODE) $(PLATVER) $(LOADHDR) ./XEngine_TaskGet/TaskGet_Bank.cpp +TaskGet_IDCard.o:./XEngine_TaskGet/TaskGet_IDCard.cpp + $(CC) $(DEBUG) $(FLAGS) $(UNICODE) $(PLATVER) $(LOADHDR) ./XEngine_TaskGet/TaskGet_IDCard.cpp +TaskGet_Language.o:./XEngine_TaskGet/TaskGet_Language.cpp + $(CC) $(DEBUG) $(FLAGS) $(UNICODE) $(PLATVER) $(LOADHDR) ./XEngine_TaskGet/TaskGet_Language.cpp +TaskGet_Locker.o:./XEngine_TaskGet/TaskGet_Locker.cpp + $(CC) $(DEBUG) $(FLAGS) $(UNICODE) $(PLATVER) $(LOADHDR) ./XEngine_TaskGet/TaskGet_Locker.cpp +TaskGet_Translation.o:./XEngine_TaskGet/TaskGet_Translation.cpp + $(CC) $(DEBUG) $(FLAGS) $(UNICODE) $(PLATVER) $(LOADHDR) ./XEngine_TaskGet/TaskGet_Translation.cpp -HTTPTask_IDCard.o:./XEngine_HTTPTask/HTTPTask_IDCard.cpp - $(CC) $(DEBUG) $(FLAGS) $(UNICODE) ./XEngine_HTTPTask/HTTPTask_IDCard.cpp -HTTPTask_Bank.o:./XEngine_HTTPTask/HTTPTask_Bank.cpp - $(CC) $(DEBUG) $(FLAGS) $(UNICODE) ./XEngine_HTTPTask/HTTPTask_Bank.cpp -HTTPTask_Language.o:./XEngine_HTTPTask/HTTPTask_Language.cpp - $(CC) $(DEBUG) $(FLAGS) $(UNICODE) ./XEngine_HTTPTask/HTTPTask_Language.cpp -HTTPTask_Translation.o:./XEngine_HTTPTask/HTTPTask_Translation.cpp - $(CC) $(DEBUG) $(FLAGS) $(UNICODE) ./XEngine_HTTPTask/HTTPTask_Translation.cpp -HTTPTask_P2PClient.o:./XEngine_HTTPTask/HTTPTask_P2PClient.cpp - $(CC) $(DEBUG) $(FLAGS) $(UNICODE) ./XEngine_HTTPTask/HTTPTask_P2PClient.cpp -HTTPTask_OPtions.o:./XEngine_HTTPTask/HTTPTask_OPtions.cpp - $(CC) $(DEBUG) $(FLAGS) $(UNICODE) ./XEngine_HTTPTask/HTTPTask_OPtions.cpp -HTTPTask_Locker.o:./XEngine_HTTPTask/HTTPTask_Locker.cpp - $(CC) $(DEBUG) $(FLAGS) $(UNICODE) ./XEngine_HTTPTask/HTTPTask_Locker.cpp -HTTPTask_PostCode.o:./XEngine_HTTPTask/HTTPTask_PostCode.cpp - $(CC) $(DEBUG) $(FLAGS) $(UNICODE) ./XEngine_HTTPTask/HTTPTask_PostCode.cpp -HTTPTask_Log.o:./XEngine_HTTPTask/HTTPTask_Log.cpp - $(CC) $(DEBUG) $(FLAGS) $(UNICODE) ./XEngine_HTTPTask/HTTPTask_Log.cpp -HTTPTask_QRCode.o:./XEngine_HTTPTask/HTTPTask_QRCode.cpp - $(CC) $(DEBUG) $(FLAGS) $(UNICODE) ./XEngine_HTTPTask/HTTPTask_QRCode.cpp -HTTPTask_SocketTest.o:./XEngine_HTTPTask/HTTPTask_SocketTest.cpp - $(CC) $(DEBUG) $(FLAGS) $(UNICODE) ./XEngine_HTTPTask/HTTPTask_SocketTest.cpp +TaskPost_DTest.o:./XEngine_TaskPost/TaskPost_DTest.cpp + $(CC) $(DEBUG) $(FLAGS) $(UNICODE) $(PLATVER) $(LOADHDR) ./XEngine_TaskPost/TaskPost_DTest.cpp +TaskPost_Log.o:./XEngine_TaskPost/TaskPost_Log.cpp + $(CC) $(DEBUG) $(FLAGS) $(UNICODE) $(PLATVER) $(LOADHDR) ./XEngine_TaskPost/TaskPost_Log.cpp +TaskPost_P2PClient.o:./XEngine_TaskPost/TaskPost_P2PClient.cpp + $(CC) $(DEBUG) $(FLAGS) $(UNICODE) $(PLATVER) $(LOADHDR) ./XEngine_TaskPost/TaskPost_P2PClient.cpp +TaskPost_PostCode.o:./XEngine_TaskPost/TaskPost_PostCode.cpp + $(CC) $(DEBUG) $(FLAGS) $(UNICODE) $(PLATVER) $(LOADHDR) ./XEngine_TaskPost/TaskPost_PostCode.cpp +TaskPost_QRCode.o:./XEngine_TaskPost/TaskPost_QRCode.cpp + $(CC) $(DEBUG) $(FLAGS) $(UNICODE) $(PLATVER) $(LOADHDR) ./XEngine_TaskPost/TaskPost_QRCode.cpp +TaskPost_ShortLink.o:./XEngine_TaskPost/TaskPost_ShortLink.cpp + $(CC) $(DEBUG) $(FLAGS) $(UNICODE) $(PLATVER) $(LOADHDR) ./XEngine_TaskPost/TaskPost_ShortLink.cpp +TaskPost_SocketTest.o:./XEngine_TaskPost/TaskPost_SocketTest.cpp + $(CC) $(DEBUG) $(FLAGS) $(UNICODE) $(PLATVER) $(LOADHDR) ./XEngine_TaskPost/TaskPost_SocketTest.cpp XEngine_HttpApp.o:./XEngine_HttpApp.cpp - $(CC) $(DEBUG) $(FLAGS) $(UNICODE) ./XEngine_HttpApp.cpp + $(CC) $(DEBUG) $(FLAGS) $(UNICODE) $(PLATVER) $(LOADHDR) ./XEngine_HttpApp.cpp InstallAll:InstallApp diff --git a/XEngine_Source/XEngine_ServiceApp/XEngine_HttpApp/XEngine_Configure.cpp b/XEngine_Source/XEngine_ServiceApp/XEngine_HttpApp/XEngine_Configure.cpp index e30435034e13cfe73fa97302fc9cd376cbbf4b64..f13b6d4d3b689b105f7e4ffa688994e5659a20bb 100644 --- a/XEngine_Source/XEngine_ServiceApp/XEngine_HttpApp/XEngine_Configure.cpp +++ b/XEngine_Source/XEngine_ServiceApp/XEngine_HttpApp/XEngine_Configure.cpp @@ -10,37 +10,37 @@ // Purpose: 配置文件操作代码 // History: *********************************************************************/ -BOOL XEngine_Configure_Parament(int argc, char** argv, XENGINE_SERVICECONFIG* pSt_Configure) +bool XEngine_Configure_Parament(int argc, char** argv, XENGINE_SERVICECONFIG* pSt_Configure) { - LPCTSTR lpszConfigFile = _T("./XEngine_Config/XEngine_Config.json"); + LPCXSTR lpszConfigFile = _X("./XEngine_Config/XEngine_Config.json"); if (!ModuleConfigure_Json_File(lpszConfigFile, pSt_Configure)) { printf("解析配置文件失败,ModuleConfigure_Json_File:%lX\n", ModuleConfigure_GetLastError()); - return FALSE; + return false; } for (int i = 0; i < argc; i++) { - if ((0 == _tcscmp("-h", argv[i])) || (0 == _tcscmp("-H", argv[i]))) + if ((0 == _tcsxcmp("-h", argv[i])) || (0 == _tcsxcmp("-H", argv[i]))) { XEngine_Configure_Help(); - return FALSE; + return false; } - else if (0 == _tcscmp("-d", argv[i])) + else if (0 == _tcsxcmp("-d", argv[i])) { - pSt_Configure->bDeamon = _ttoi(argv[i + 1]); + pSt_Configure->bDeamon = _ttxoi(argv[i + 1]); } } - return TRUE; + return true; } void XEngine_Configure_Help() { - printf(_T("--------------------------启动参数帮助开始--------------------------\n")); - printf(_T("网络消息队列服务启动参数:程序 参数 参数值,参数是区分大小写的。如果不指定将会加载默认的ini配置文件里面的参数\n")); - printf(_T("-h or -H:启动参数帮助提示信息\n")); - printf(_T("-d:1 启用守护进程,2不启用\n")); - printf(_T("--------------------------启动参数帮助结束--------------------------\n")); + printf(_X("--------------------------启动参数帮助开始--------------------------\n")); + printf(_X("网络消息队列服务启动参数:程序 参数 参数值,参数是区分大小写的。如果不指定将会加载默认的ini配置文件里面的参数\n")); + printf(_X("-h or -H:启动参数帮助提示信息\n")); + printf(_X("-d:1 启用守护进程,2不启用\n")); + printf(_X("--------------------------启动参数帮助结束--------------------------\n")); } diff --git a/XEngine_Source/XEngine_ServiceApp/XEngine_HttpApp/XEngine_Configure.h b/XEngine_Source/XEngine_ServiceApp/XEngine_HttpApp/XEngine_Configure.h index e5c853da5d1c569081ac2d3dc3adbd3eb199bf46..9a5060ffa2b42484163471ff8cb8b1cbf01b02e5 100644 --- a/XEngine_Source/XEngine_ServiceApp/XEngine_HttpApp/XEngine_Configure.h +++ b/XEngine_Source/XEngine_ServiceApp/XEngine_HttpApp/XEngine_Configure.h @@ -10,5 +10,5 @@ // Purpose: 配置文件操作代码 // History: *********************************************************************/ -BOOL XEngine_Configure_Parament(int argc, char** argv, XENGINE_SERVICECONFIG* pSt_Configure); +bool XEngine_Configure_Parament(int argc, char** argv, XENGINE_SERVICECONFIG* pSt_Configure); void XEngine_Configure_Help(); \ No newline at end of file diff --git a/XEngine_Source/XEngine_ServiceApp/XEngine_HttpApp/XEngine_HTTPTask.cpp b/XEngine_Source/XEngine_ServiceApp/XEngine_HttpApp/XEngine_HTTPTask.cpp index 38cde1ea00396aa8e3a7c28c8dfc34b2b3a2f685..3d31fa257af25b8e0362a39cf1b1e980c13e0cd1 100644 --- a/XEngine_Source/XEngine_ServiceApp/XEngine_HttpApp/XEngine_HTTPTask.cpp +++ b/XEngine_Source/XEngine_ServiceApp/XEngine_HttpApp/XEngine_HTTPTask.cpp @@ -10,7 +10,7 @@ // Purpose: HTTP任务处理代码 // History: *********************************************************************/ -XHTHREAD CALLBACK XEngine_HTTPTask_Thread(LPVOID lParam) +XHTHREAD CALLBACK HTTPTask_TastPost_Thread(XPVOID lParam) { //任务池是编号1开始的. int nThreadPos = *(int*)lParam; @@ -19,14 +19,14 @@ XHTHREAD CALLBACK XEngine_HTTPTask_Thread(LPVOID lParam) while (bIsRun) { //等待编号1的任务池触发一个组完包的事件 - if (!RfcComponents_HttpServer_EventWaitEx(xhHTTPPacket, nThreadPos)) + if (!HttpProtocol_Server_EventWaitEx(xhHTTPPacket, nThreadPos)) { continue; } int nListCount = 0; RFCCOMPONENTS_HTTP_PKTCLIENT** ppSst_ListAddr; //获得编号1的所有待处理任务的客户端列表(也就是客户端发送过来的数据已经组好了一个包,需要我们处理) - RfcComponents_HttpServer_GetPoolEx(xhHTTPPacket, nThreadPos, &ppSst_ListAddr, &nListCount); + HttpProtocol_Server_GetPoolEx(xhHTTPPacket, nThreadPos, &ppSst_ListAddr, &nListCount); //先循环客户端 for (int i = 0; i < nListCount; i++) { @@ -34,17 +34,20 @@ XHTHREAD CALLBACK XEngine_HTTPTask_Thread(LPVOID lParam) for (int j = 0; j < ppSst_ListAddr[i]->nPktCount; j++) { int nMsgLen = 0; //客户端发送的数据大小,不包括头 - CHAR* ptszMsgBuffer = NULL; //客户端发送的数据 + int nHDRCount = 0; + XCHAR* ptszMsgBuffer = NULL; //客户端发送的数据 + XCHAR** pptszListHdr; RFCCOMPONENTS_HTTP_REQPARAM st_HTTPReqparam; //客户端的请求参数 memset(&st_HTTPReqparam, '\0', sizeof(RFCCOMPONENTS_HTTP_REQPARAM)); //得到一个指定客户端的完整数据包 - if (RfcComponents_HttpServer_GetMemoryEx(xhHTTPPacket, ppSst_ListAddr[i]->tszClientAddr, &ptszMsgBuffer, &nMsgLen, &st_HTTPReqparam)) + if (HttpProtocol_Server_GetMemoryEx(xhHTTPPacket, ppSst_ListAddr[i]->tszClientAddr, &ptszMsgBuffer, &nMsgLen, &st_HTTPReqparam, &pptszListHdr, &nHDRCount)) { //在另外一个函数里面处理数据 - XEngine_HTTPTask_Handle(&st_HTTPReqparam, ppSst_ListAddr[i]->tszClientAddr, ptszMsgBuffer, nMsgLen); + HTTPTask_TastPost_Handle(&st_HTTPReqparam, ppSst_ListAddr[i]->tszClientAddr, ptszMsgBuffer, nMsgLen, &pptszListHdr, nHDRCount); //释放内存 - BaseLib_OperatorMemory_FreeCStyle((VOID**)&ptszMsgBuffer); + BaseLib_OperatorMemory_FreeCStyle((XPPMEM)&ptszMsgBuffer); + BaseLib_OperatorMemory_Free((XPPPMEM)&pptszListHdr, nHDRCount); } } } @@ -52,274 +55,301 @@ XHTHREAD CALLBACK XEngine_HTTPTask_Thread(LPVOID lParam) } return 0; } -BOOL XEngine_HTTPTask_Handle(RFCCOMPONENTS_HTTP_REQPARAM* pSt_HTTPParam, LPCTSTR lpszClientAddr, LPCTSTR lpszRVBuffer, int nRVLen) +bool HTTPTask_TastPost_Handle(RFCCOMPONENTS_HTTP_REQPARAM* pSt_HTTPParam, LPCXSTR lpszClientAddr, LPCXSTR lpszRVBuffer, int nRVLen, XCHAR*** ppptszHDRList, int nHDRCount) { int nMsgLen = 4096; - LPCTSTR lpszMethodPost = _T("POST"); - LPCTSTR lpszMethodGet = _T("GET"); - TCHAR tszMsgBuffer[4096]; + LPCXSTR lpszMethodPost = _X("POST"); + LPCXSTR lpszMethodGet = _X("GET"); + XCHAR tszMsgBuffer[4096]; RFCCOMPONENTS_HTTP_HDRPARAM st_HDRParam; //发送给客户端的参数 memset(tszMsgBuffer, '\0', sizeof(tszMsgBuffer)); memset(&st_HDRParam, '\0', sizeof(RFCCOMPONENTS_HTTP_HDRPARAM)); st_HDRParam.nHttpCode = 200; //HTTP CODE码 - st_HDRParam.bIsClose = TRUE; //收到回复后就关闭 + st_HDRParam.bIsClose = true; //收到回复后就关闭 - TCHAR** pptszList; - TCHAR tszUrlName[128]; + XCHAR** pptszList; + XCHAR tszUrlName[128]; int nListCount = 0; memset(tszUrlName, '\0', sizeof(tszUrlName)); //得到URL参数个数 - RfcComponents_HttpHelp_GetParament(pSt_HTTPParam->tszHttpUri, &pptszList, &nListCount, tszUrlName); + HttpProtocol_ServerHelp_GetParament(pSt_HTTPParam->tszHttpUri, &pptszList, &nListCount, tszUrlName); if (nListCount < 1) { + //是不是代理转发 + if (HTTPTask_TaskPost_SLProxy(lpszClientAddr, pSt_HTTPParam->tszHttpUri, ppptszHDRList, nHDRCount)) + { + return true; + } st_HDRParam.nHttpCode = 404; - RfcComponents_HttpServer_SendMsgEx(xhHTTPPacket, tszMsgBuffer, &nMsgLen, &st_HDRParam); + HttpProtocol_Server_SendMsgEx(xhHTTPPacket, tszMsgBuffer, &nMsgLen, &st_HDRParam); XEngine_Network_Send(lpszClientAddr, tszMsgBuffer, nMsgLen); BaseLib_OperatorMemory_Free((XPPPMEM)&pptszList, nListCount); - XLOG_PRINT(xhLog, XENGINE_HELPCOMPONENTS_XLOG_IN_LOGLEVEL_ERROR, _T("HTTP客户端:%s,发送的URL请求参数不正确:%s"), lpszClientAddr, pSt_HTTPParam->tszHttpUri); - return FALSE; + XLOG_PRINT(xhLog, XENGINE_HELPCOMPONENTS_XLOG_IN_LOGLEVEL_ERROR, _X("HTTP客户端:%s,发送的URL请求参数不正确:%s"), lpszClientAddr, pSt_HTTPParam->tszHttpUri); + return false; } - TCHAR tszKey[MAX_PATH]; - TCHAR tszValue[MAX_PATH]; - LPCTSTR lpszFuncName = _T("api"); - LPCTSTR lpszParamFuncKey = _T("function"); - LPCTSTR lpszParamName = _T("params1"); + XCHAR tszKey[MAX_PATH]; + XCHAR tszValue[MAX_PATH]; + LPCXSTR lpszFuncName = _X("api"); + LPCXSTR lpszParamFuncKey = _X("function"); + LPCXSTR lpszParamName = _X("params1"); //get - LPCTSTR lpszParamOPtions = _T("options"); - LPCTSTR lpszParamIDCard = _T("id"); - LPCTSTR lpszParamBank = _T("bank"); - LPCTSTR lpszParamLanguage = _T("language"); - LPCTSTR lpszParamTranslation = _T("translation"); - LPCTSTR lpszParamLocker = _T("lock"); - LPCTSTR lpszParamQRCode = _T("qrcode"); + LPCXSTR lpszParamIDCard = _X("id"); + LPCXSTR lpszParamBank = _X("bank"); + LPCXSTR lpszParamLanguage = _X("language"); + LPCXSTR lpszParamTranslation = _X("translation"); + LPCXSTR lpszParamLocker = _X("lock"); //post - LPCTSTR lpszParamP2PClient = _T("p2p"); - LPCTSTR lpszParamZIPCode = _T("zipcode"); - LPCTSTR lpszParamXLog = _T("log"); - LPCTSTR lpszParamTest = _T("test"); + LPCXSTR lpszParamP2PClient = _X("p2p"); + LPCXSTR lpszParamZIPCode = _X("zipcode"); + LPCXSTR lpszParamXLog = _X("log"); + LPCXSTR lpszParamQRCode = _X("qrcode"); + LPCXSTR lpszParamSocket = _X("socket"); + LPCXSTR lpszParamDTest = _X("dtest"); + LPCXSTR lpszParamShortLink = _X("slink"); memset(tszKey, '\0', MAX_PATH); memset(tszValue, '\0', MAX_PATH); - if (0 != _tcsnicmp(lpszFuncName, tszUrlName, _tcslen(lpszFuncName))) + if (0 != _tcsxnicmp(lpszFuncName, tszUrlName, _tcsxlen(lpszFuncName))) { st_HDRParam.nHttpCode = 404; - RfcComponents_HttpServer_SendMsgEx(xhHTTPPacket, tszMsgBuffer, &nMsgLen, &st_HDRParam); + HttpProtocol_Server_SendMsgEx(xhHTTPPacket, tszMsgBuffer, &nMsgLen, &st_HDRParam); XEngine_Network_Send(lpszClientAddr, tszMsgBuffer, nMsgLen); BaseLib_OperatorMemory_Free((XPPPMEM)&pptszList, nListCount); - XLOG_PRINT(xhLog, XENGINE_HELPCOMPONENTS_XLOG_IN_LOGLEVEL_ERROR, _T("HTTP客户端:%s,发送的URL请求参数不正确:%s"), lpszClientAddr, pSt_HTTPParam->tszHttpUri); - return FALSE; + XLOG_PRINT(xhLog, XENGINE_HELPCOMPONENTS_XLOG_IN_LOGLEVEL_ERROR, _X("HTTP客户端:%s,发送的URL请求参数不正确:%s"), lpszClientAddr, pSt_HTTPParam->tszHttpUri); + return false; } //获得函数名 BaseLib_OperatorString_GetKeyValue(pptszList[0], "=", tszKey, tszValue); - if (0 != _tcsnicmp(lpszParamFuncKey, tszKey, _tcslen(lpszParamFuncKey))) + if (0 != _tcsxnicmp(lpszParamFuncKey, tszKey, _tcsxlen(lpszParamFuncKey))) { st_HDRParam.nHttpCode = 404; - RfcComponents_HttpServer_SendMsgEx(xhHTTPPacket, tszMsgBuffer, &nMsgLen, &st_HDRParam); + HttpProtocol_Server_SendMsgEx(xhHTTPPacket, tszMsgBuffer, &nMsgLen, &st_HDRParam); XEngine_Network_Send(lpszClientAddr, tszMsgBuffer, nMsgLen); BaseLib_OperatorMemory_Free((XPPPMEM)&pptszList, nListCount); - XLOG_PRINT(xhLog, XENGINE_HELPCOMPONENTS_XLOG_IN_LOGLEVEL_ERROR, _T("HTTP客户端:%s,发送的URL请求参数不正确:%s"), lpszClientAddr, pSt_HTTPParam->tszHttpUri); - return FALSE; + XLOG_PRINT(xhLog, XENGINE_HELPCOMPONENTS_XLOG_IN_LOGLEVEL_ERROR, _X("HTTP客户端:%s,发送的URL请求参数不正确:%s"), lpszClientAddr, pSt_HTTPParam->tszHttpUri); + return false; } //首先处理插件 int nPluginType = 0; if (ModulePlugin_Loader_Find(tszValue, &nPluginType)) { XEngine_PluginTask_Handle(tszValue, lpszClientAddr, lpszRVBuffer, nRVLen, &pptszList, nListCount, nPluginType); - return TRUE; + return true; } - if (0 == _tcsnicmp(lpszMethodPost, pSt_HTTPParam->tszHttpMethod, _tcslen(lpszMethodPost))) + if (0 == _tcsxnicmp(lpszMethodPost, pSt_HTTPParam->tszHttpMethod, _tcsxlen(lpszMethodPost))) { - if (0 == _tcsnicmp(lpszParamP2PClient, tszValue, _tcslen(lpszParamP2PClient))) + if (0 == _tcsxnicmp(lpszParamP2PClient, tszValue, _tcsxlen(lpszParamP2PClient))) { //是不是P2P memset(tszKey, '\0', sizeof(tszKey)); memset(tszValue, '\0', sizeof(tszValue)); BaseLib_OperatorString_GetKeyValue(pptszList[1], "=", tszKey, tszValue); - if (0 != _tcsnicmp(lpszParamName, tszKey, _tcslen(lpszParamName))) + if (0 != _tcsxnicmp(lpszParamName, tszKey, _tcsxlen(lpszParamName))) { st_HDRParam.nHttpCode = 404; - RfcComponents_HttpServer_SendMsgEx(xhHTTPPacket, tszMsgBuffer, &nMsgLen, &st_HDRParam); + HttpProtocol_Server_SendMsgEx(xhHTTPPacket, tszMsgBuffer, &nMsgLen, &st_HDRParam); XEngine_Network_Send(lpszClientAddr, tszMsgBuffer, nMsgLen); BaseLib_OperatorMemory_Free((XPPPMEM)&pptszList, nListCount); - XLOG_PRINT(xhLog, XENGINE_HELPCOMPONENTS_XLOG_IN_LOGLEVEL_ERROR, _T("HTTP客户端:%s,发送的URL请求参数不正确:%s"), lpszClientAddr, pSt_HTTPParam->tszHttpUri); - return FALSE; + XLOG_PRINT(xhLog, XENGINE_HELPCOMPONENTS_XLOG_IN_LOGLEVEL_ERROR, _X("HTTP客户端:%s,发送的URL请求参数不正确:%s"), lpszClientAddr, pSt_HTTPParam->tszHttpUri); + return false; } - XEngine_HTTPTask_P2PClient(lpszClientAddr, lpszRVBuffer, nRVLen, _ttoi(tszValue)); + HTTPTask_TastPost_P2PClient(lpszClientAddr, lpszRVBuffer, nRVLen, _ttxoi(tszValue)); } - else if (0 == _tcsnicmp(lpszParamZIPCode, tszValue, _tcslen(lpszParamZIPCode))) + else if (0 == _tcsxnicmp(lpszParamZIPCode, tszValue, _tcsxlen(lpszParamZIPCode))) { //邮政信息:http://app.xyry.org:5501/api?function=zipcode¶ms1=0 memset(tszKey, '\0', sizeof(tszKey)); memset(tszValue, '\0', sizeof(tszValue)); BaseLib_OperatorString_GetKeyValue(pptszList[1], "=", tszKey, tszValue); - if (0 != _tcsnicmp(lpszParamName, tszKey, _tcslen(lpszParamName))) + if (0 != _tcsxnicmp(lpszParamName, tszKey, _tcsxlen(lpszParamName))) { st_HDRParam.nHttpCode = 404; - RfcComponents_HttpServer_SendMsgEx(xhHTTPPacket, tszMsgBuffer, &nMsgLen, &st_HDRParam); + HttpProtocol_Server_SendMsgEx(xhHTTPPacket, tszMsgBuffer, &nMsgLen, &st_HDRParam); XEngine_Network_Send(lpszClientAddr, tszMsgBuffer, nMsgLen); BaseLib_OperatorMemory_Free((XPPPMEM)&pptszList, nListCount); - XLOG_PRINT(xhLog, XENGINE_HELPCOMPONENTS_XLOG_IN_LOGLEVEL_ERROR, _T("HTTP客户端:%s,发送的URL请求参数不正确:%s"), lpszClientAddr, pSt_HTTPParam->tszHttpUri); - return FALSE; + XLOG_PRINT(xhLog, XENGINE_HELPCOMPONENTS_XLOG_IN_LOGLEVEL_ERROR, _X("HTTP客户端:%s,发送的URL请求参数不正确:%s"), lpszClientAddr, pSt_HTTPParam->tszHttpUri); + return false; } - XEngine_HTTPTask_PostCode(lpszClientAddr, lpszRVBuffer, nRVLen, _ttoi(tszValue)); + HTTPTask_TastPost_PostCode(lpszClientAddr, lpszRVBuffer, nRVLen, _ttxoi(tszValue)); } - else if (0 == _tcsnicmp(lpszParamXLog, tszValue, _tcslen(lpszParamXLog))) + else if (0 == _tcsxnicmp(lpszParamXLog, tszValue, _tcsxlen(lpszParamXLog))) { //日志信息:http://app.xyry.org:5501/api?function=log¶ms1=0 memset(tszKey, '\0', sizeof(tszKey)); memset(tszValue, '\0', sizeof(tszValue)); BaseLib_OperatorString_GetKeyValue(pptszList[1], "=", tszKey, tszValue); - if (0 != _tcsnicmp(lpszParamName, tszKey, _tcslen(lpszParamName))) + if (0 != _tcsxnicmp(lpszParamName, tszKey, _tcsxlen(lpszParamName))) { st_HDRParam.nHttpCode = 404; - RfcComponents_HttpServer_SendMsgEx(xhHTTPPacket, tszMsgBuffer, &nMsgLen, &st_HDRParam); + HttpProtocol_Server_SendMsgEx(xhHTTPPacket, tszMsgBuffer, &nMsgLen, &st_HDRParam); XEngine_Network_Send(lpszClientAddr, tszMsgBuffer, nMsgLen); BaseLib_OperatorMemory_Free((XPPPMEM)&pptszList, nListCount); - XLOG_PRINT(xhLog, XENGINE_HELPCOMPONENTS_XLOG_IN_LOGLEVEL_ERROR, _T("HTTP客户端:%s,发送的URL请求参数不正确:%s"), lpszClientAddr, pSt_HTTPParam->tszHttpUri); - return FALSE; + XLOG_PRINT(xhLog, XENGINE_HELPCOMPONENTS_XLOG_IN_LOGLEVEL_ERROR, _X("HTTP客户端:%s,发送的URL请求参数不正确:%s"), lpszClientAddr, pSt_HTTPParam->tszHttpUri); + return false; } - XEngine_HTTPTask_LogInfo(lpszClientAddr, lpszRVBuffer, nRVLen, _ttoi(tszValue)); + HTTPTask_TastPost_LogInfo(lpszClientAddr, lpszRVBuffer, nRVLen, _ttxoi(tszValue)); } - else if (0 == _tcsnicmp(lpszParamQRCode, tszValue, _tcslen(lpszParamQRCode))) + else if (0 == _tcsxnicmp(lpszParamQRCode, tszValue, _tcsxlen(lpszParamQRCode))) { //二维码生成:http://app.xyry.org:5501/api?function=qrcode¶ms1=0 或者 1 memset(tszKey, '\0', sizeof(tszKey)); memset(tszValue, '\0', sizeof(tszValue)); BaseLib_OperatorString_GetKeyValue(pptszList[1], "=", tszKey, tszValue); - if (0 != _tcsnicmp(lpszParamName, tszKey, _tcslen(lpszParamName))) + if (0 != _tcsxnicmp(lpszParamName, tszKey, _tcsxlen(lpszParamName))) { st_HDRParam.nHttpCode = 404; - RfcComponents_HttpServer_SendMsgEx(xhHTTPPacket, tszMsgBuffer, &nMsgLen, &st_HDRParam); + HttpProtocol_Server_SendMsgEx(xhHTTPPacket, tszMsgBuffer, &nMsgLen, &st_HDRParam); XEngine_Network_Send(lpszClientAddr, tszMsgBuffer, nMsgLen); BaseLib_OperatorMemory_Free((XPPPMEM)&pptszList, nListCount); - XLOG_PRINT(xhLog, XENGINE_HELPCOMPONENTS_XLOG_IN_LOGLEVEL_ERROR, _T("HTTP客户端:%s,发送的URL请求参数不正确:%s"), lpszClientAddr, pSt_HTTPParam->tszHttpUri); - return FALSE; + XLOG_PRINT(xhLog, XENGINE_HELPCOMPONENTS_XLOG_IN_LOGLEVEL_ERROR, _X("HTTP客户端:%s,发送的URL请求参数不正确:%s"), lpszClientAddr, pSt_HTTPParam->tszHttpUri); + return false; } - XEngine_HTTPTask_QRCode(lpszClientAddr, lpszRVBuffer, nRVLen, _ttoi(tszValue)); + HTTPTask_TaskPost_QRCode(lpszClientAddr, lpszRVBuffer, nRVLen, _ttxoi(tszValue)); } - else if (0 == _tcsnicmp(lpszParamTest, tszValue, _tcslen(lpszParamTest))) + else if (0 == _tcsxnicmp(lpszParamSocket, tszValue, _tcsxlen(lpszParamSocket))) { - //二维码生成:http://app.xyry.org:5501/api?function=test¶ms1=0 或者 1 + //网络测试:http://app.xyry.org:5501/api?function=socket¶ms1=0 或者 1 memset(tszKey, '\0', sizeof(tszKey)); memset(tszValue, '\0', sizeof(tszValue)); BaseLib_OperatorString_GetKeyValue(pptszList[1], "=", tszKey, tszValue); - if (0 != _tcsnicmp(lpszParamName, tszKey, _tcslen(lpszParamName))) + if (0 != _tcsxnicmp(lpszParamName, tszKey, _tcsxlen(lpszParamName))) { st_HDRParam.nHttpCode = 404; - RfcComponents_HttpServer_SendMsgEx(xhHTTPPacket, tszMsgBuffer, &nMsgLen, &st_HDRParam); + HttpProtocol_Server_SendMsgEx(xhHTTPPacket, tszMsgBuffer, &nMsgLen, &st_HDRParam); XEngine_Network_Send(lpszClientAddr, tszMsgBuffer, nMsgLen); BaseLib_OperatorMemory_Free((XPPPMEM)&pptszList, nListCount); - XLOG_PRINT(xhLog, XENGINE_HELPCOMPONENTS_XLOG_IN_LOGLEVEL_ERROR, _T("HTTP客户端:%s,发送的URL请求参数不正确:%s"), lpszClientAddr, pSt_HTTPParam->tszHttpUri); - return FALSE; + XLOG_PRINT(xhLog, XENGINE_HELPCOMPONENTS_XLOG_IN_LOGLEVEL_ERROR, _X("HTTP客户端:%s,发送的URL请求参数不正确:%s"), lpszClientAddr, pSt_HTTPParam->tszHttpUri); + return false; } - XEngine_HTTPTask_SocketTest(lpszClientAddr, lpszRVBuffer, nRVLen, _ttoi(tszValue)); + HTTPTask_TastPost_SocketTest(lpszClientAddr, lpszRVBuffer, nRVLen, _ttxoi(tszValue)); + } + else if (0 == _tcsxnicmp(lpszParamDTest, tszValue, _tcsxlen(lpszParamDTest))) + { + //数据测试:http://app.xyry.org:5501/api?function=dtest¶ms1=0 或者 1 + memset(tszKey, '\0', sizeof(tszKey)); + memset(tszValue, '\0', sizeof(tszValue)); + BaseLib_OperatorString_GetKeyValue(pptszList[1], "=", tszKey, tszValue); + if (0 != _tcsxnicmp(lpszParamName, tszKey, _tcsxlen(lpszParamName))) + { + st_HDRParam.nHttpCode = 404; + HttpProtocol_Server_SendMsgEx(xhHTTPPacket, tszMsgBuffer, &nMsgLen, &st_HDRParam); + XEngine_Network_Send(lpszClientAddr, tszMsgBuffer, nMsgLen); + BaseLib_OperatorMemory_Free((XPPPMEM)&pptszList, nListCount); + XLOG_PRINT(xhLog, XENGINE_HELPCOMPONENTS_XLOG_IN_LOGLEVEL_ERROR, _X("HTTP客户端:%s,发送的URL请求参数不正确:%s"), lpszClientAddr, pSt_HTTPParam->tszHttpUri); + return false; + } + HTTPTask_TastPost_DTest(lpszClientAddr, lpszRVBuffer, nRVLen, _ttxoi(tszValue)); + } + else if (0 == _tcsxnicmp(lpszParamShortLink, tszValue, _tcsxlen(lpszParamShortLink))) + { + //短连接:http://app.xyry.org:5501/api?function=slink¶ms1=0 + XCHAR tszType[64]; + memset(tszType, '\0', sizeof(tszType)); + + BaseLib_OperatorString_GetKeyValue(pptszList[1], "=", tszKey, tszType); + HTTPTask_TaskPost_ShortLink(lpszClientAddr, lpszRVBuffer, nRVLen, _ttxoi(tszType)); } else { st_HDRParam.nHttpCode = 404; - RfcComponents_HttpServer_SendMsgEx(xhHTTPPacket, tszMsgBuffer, &nMsgLen, &st_HDRParam); + HttpProtocol_Server_SendMsgEx(xhHTTPPacket, tszMsgBuffer, &nMsgLen, &st_HDRParam); XEngine_Network_Send(lpszClientAddr, tszMsgBuffer, nMsgLen); - XLOG_PRINT(xhLog, XENGINE_HELPCOMPONENTS_XLOG_IN_LOGLEVEL_ERROR, _T("HTTP客户端:%s,发送的请求不支持:%s,内容:\r\n%s"), lpszClientAddr, pSt_HTTPParam->tszHttpUri, lpszRVBuffer); + XLOG_PRINT(xhLog, XENGINE_HELPCOMPONENTS_XLOG_IN_LOGLEVEL_ERROR, _X("HTTP客户端:%s,发送的请求不支持:%s,内容:\r\n%s"), lpszClientAddr, pSt_HTTPParam->tszHttpUri, lpszRVBuffer); } } - else if (0 == _tcsnicmp(lpszMethodGet, pSt_HTTPParam->tszHttpMethod, _tcslen(lpszMethodGet))) + else if (0 == _tcsxnicmp(lpszMethodGet, pSt_HTTPParam->tszHttpMethod, _tcsxlen(lpszMethodGet))) { - if (0 == _tcsnicmp(lpszParamOPtions, tszValue, _tcslen(lpszParamOPtions))) - { - //HTTP能力查询 - XEngine_HTTPTask_OPTions(lpszClientAddr); - } - else if (0 == _tcsnicmp(lpszParamIDCard, tszValue, _tcslen(lpszParamIDCard))) + if (0 == _tcsxnicmp(lpszParamIDCard, tszValue, _tcsxlen(lpszParamIDCard))) { //是不是身份证查询 memset(tszKey, '\0', sizeof(tszKey)); memset(tszValue, '\0', sizeof(tszValue)); BaseLib_OperatorString_GetKeyValue(pptszList[1], "=", tszKey, tszValue); - if (0 != _tcsnicmp(lpszParamName, tszKey, _tcslen(lpszParamName))) + if (0 != _tcsxnicmp(lpszParamName, tszKey, _tcsxlen(lpszParamName))) { st_HDRParam.nHttpCode = 404; - RfcComponents_HttpServer_SendMsgEx(xhHTTPPacket, tszMsgBuffer, &nMsgLen, &st_HDRParam); + HttpProtocol_Server_SendMsgEx(xhHTTPPacket, tszMsgBuffer, &nMsgLen, &st_HDRParam); XEngine_Network_Send(lpszClientAddr, tszMsgBuffer, nMsgLen); BaseLib_OperatorMemory_Free((XPPPMEM)&pptszList, nListCount); - XLOG_PRINT(xhLog, XENGINE_HELPCOMPONENTS_XLOG_IN_LOGLEVEL_ERROR, _T("HTTP客户端:%s,发送的URL请求参数不正确:%s"), lpszClientAddr, pSt_HTTPParam->tszHttpUri); - return FALSE; + XLOG_PRINT(xhLog, XENGINE_HELPCOMPONENTS_XLOG_IN_LOGLEVEL_ERROR, _X("HTTP客户端:%s,发送的URL请求参数不正确:%s"), lpszClientAddr, pSt_HTTPParam->tszHttpUri); + return false; } - XEngine_HTTPTask_IDCard(lpszClientAddr, tszValue); + HTTPTask_TaskGet_IDCard(lpszClientAddr, tszValue); } - else if (0 == _tcsnicmp(lpszParamBank, tszValue, _tcslen(lpszParamBank))) + else if (0 == _tcsxnicmp(lpszParamBank, tszValue, _tcsxlen(lpszParamBank))) { //是不是银行卡信息 memset(tszKey, '\0', sizeof(tszKey)); memset(tszValue, '\0', sizeof(tszValue)); BaseLib_OperatorString_GetKeyValue(pptszList[1], "=", tszKey, tszValue); - if (0 != _tcsnicmp(lpszParamName, tszKey, _tcslen(lpszParamName))) + if (0 != _tcsxnicmp(lpszParamName, tszKey, _tcsxlen(lpszParamName))) { st_HDRParam.nHttpCode = 404; - RfcComponents_HttpServer_SendMsgEx(xhHTTPPacket, tszMsgBuffer, &nMsgLen, &st_HDRParam); + HttpProtocol_Server_SendMsgEx(xhHTTPPacket, tszMsgBuffer, &nMsgLen, &st_HDRParam); XEngine_Network_Send(lpszClientAddr, tszMsgBuffer, nMsgLen); BaseLib_OperatorMemory_Free((XPPPMEM)&pptszList, nListCount); - XLOG_PRINT(xhLog, XENGINE_HELPCOMPONENTS_XLOG_IN_LOGLEVEL_ERROR, _T("HTTP客户端:%s,发送的URL请求参数不正确:%s"), lpszClientAddr, pSt_HTTPParam->tszHttpUri); - return FALSE; + XLOG_PRINT(xhLog, XENGINE_HELPCOMPONENTS_XLOG_IN_LOGLEVEL_ERROR, _X("HTTP客户端:%s,发送的URL请求参数不正确:%s"), lpszClientAddr, pSt_HTTPParam->tszHttpUri); + return false; } - XEngine_HTTPTask_BankInfo(lpszClientAddr, tszValue); + HTTPTask_TaskGet_BankInfo(lpszClientAddr, tszValue); } - else if (0 == _tcsnicmp(lpszParamLanguage, tszValue, _tcslen(lpszParamLanguage))) + else if (0 == _tcsxnicmp(lpszParamLanguage, tszValue, _tcsxlen(lpszParamLanguage))) { //是不是语言转换 - TCHAR tszCvtType[64]; + XCHAR tszCvtType[64]; memset(tszCvtType, '\0', sizeof(tszCvtType)); memset(tszKey, '\0', sizeof(tszKey)); memset(tszValue, '\0', sizeof(tszValue)); BaseLib_OperatorString_GetKeyValue(pptszList[1], "=", tszKey, tszValue); - if (0 != _tcsnicmp(lpszParamName, tszKey, _tcslen(lpszParamName))) + if (0 != _tcsxnicmp(lpszParamName, tszKey, _tcsxlen(lpszParamName))) { st_HDRParam.nHttpCode = 404; - RfcComponents_HttpServer_SendMsgEx(xhHTTPPacket, tszMsgBuffer, &nMsgLen, &st_HDRParam); + HttpProtocol_Server_SendMsgEx(xhHTTPPacket, tszMsgBuffer, &nMsgLen, &st_HDRParam); XEngine_Network_Send(lpszClientAddr, tszMsgBuffer, nMsgLen); BaseLib_OperatorMemory_Free((XPPPMEM)&pptszList, nListCount); - XLOG_PRINT(xhLog, XENGINE_HELPCOMPONENTS_XLOG_IN_LOGLEVEL_ERROR, _T("HTTP客户端:%s,发送的URL请求参数不正确:%s"), lpszClientAddr, pSt_HTTPParam->tszHttpUri); - return FALSE; + XLOG_PRINT(xhLog, XENGINE_HELPCOMPONENTS_XLOG_IN_LOGLEVEL_ERROR, _X("HTTP客户端:%s,发送的URL请求参数不正确:%s"), lpszClientAddr, pSt_HTTPParam->tszHttpUri); + return false; } memset(tszKey, '\0', sizeof(tszKey)); BaseLib_OperatorString_GetKeyValue(pptszList[2], "=", tszKey, tszCvtType); - XEngine_HTTPTask_Language(lpszClientAddr, tszValue, _ttoi(tszCvtType)); + HTTPTask_TaskGet_Language(lpszClientAddr, tszValue, _ttxoi(tszCvtType)); } - else if (0 == _tcsnicmp(lpszParamTranslation, tszValue, _tcslen(lpszParamTranslation))) + else if (0 == _tcsxnicmp(lpszParamTranslation, tszValue, _tcsxlen(lpszParamTranslation))) { //是不是翻译 - TCHAR tszCvtType[64]; + XCHAR tszCvtType[64]; memset(tszCvtType, '\0', sizeof(tszCvtType)); memset(tszKey, '\0', sizeof(tszKey)); memset(tszValue, '\0', sizeof(tszValue)); BaseLib_OperatorString_GetKeyValue(pptszList[1], "=", tszKey, tszValue); - if (0 != _tcsnicmp(lpszParamName, tszKey, _tcslen(lpszParamName))) + if (0 != _tcsxnicmp(lpszParamName, tszKey, _tcsxlen(lpszParamName))) { st_HDRParam.nHttpCode = 404; - RfcComponents_HttpServer_SendMsgEx(xhHTTPPacket, tszMsgBuffer, &nMsgLen, &st_HDRParam); + HttpProtocol_Server_SendMsgEx(xhHTTPPacket, tszMsgBuffer, &nMsgLen, &st_HDRParam); XEngine_Network_Send(lpszClientAddr, tszMsgBuffer, nMsgLen); BaseLib_OperatorMemory_Free((XPPPMEM)&pptszList, nListCount); - XLOG_PRINT(xhLog, XENGINE_HELPCOMPONENTS_XLOG_IN_LOGLEVEL_ERROR, _T("HTTP客户端:%s,发送的URL请求参数不正确:%s"), lpszClientAddr, pSt_HTTPParam->tszHttpUri); - return FALSE; + XLOG_PRINT(xhLog, XENGINE_HELPCOMPONENTS_XLOG_IN_LOGLEVEL_ERROR, _X("HTTP客户端:%s,发送的URL请求参数不正确:%s"), lpszClientAddr, pSt_HTTPParam->tszHttpUri); + return false; } memset(tszKey, '\0', sizeof(tszKey)); BaseLib_OperatorString_GetKeyValue(pptszList[2], "=", tszKey, tszCvtType); - XEngine_HTTPTask_Translation(lpszClientAddr, tszValue, _ttoi(tszCvtType)); + HTTPTask_TaskGet_Translation(lpszClientAddr, tszValue, _ttxoi(tszCvtType)); } - else if (0 == _tcsnicmp(lpszParamLocker, tszValue, _tcslen(lpszParamLocker))) + else if (0 == _tcsxnicmp(lpszParamLocker, tszValue, _tcsxlen(lpszParamLocker))) { //是不是分布式锁 - TCHAR tszLockToken[128]; - TCHAR tszLockType[64]; + XCHAR tszLockToken[128]; + XCHAR tszLockType[64]; memset(tszKey, '\0', sizeof(tszKey)); memset(tszLockToken, '\0', sizeof(tszLockToken)); @@ -327,20 +357,20 @@ BOOL XEngine_HTTPTask_Handle(RFCCOMPONENTS_HTTP_REQPARAM* pSt_HTTPParam, LPCTSTR BaseLib_OperatorString_GetKeyValue(pptszList[1], "=", tszKey, tszLockToken); BaseLib_OperatorString_GetKeyValue(pptszList[2], "=", tszKey, tszLockType); - XEngine_HTTPTask_Locker(lpszClientAddr, _ttoi64(tszLockToken), (ENUM_XENGINE_APISERVICE_LOCKER_TYPE)_ttoi(tszLockType)); + HTTPTask_TaskGet_Locker(lpszClientAddr, _ttxoll(tszLockToken), (ENUM_XENGINE_APISERVICE_LOCKER_TYPE)_ttxoi(tszLockType)); } else { st_HDRParam.nHttpCode = 404; - RfcComponents_HttpServer_SendMsgEx(xhHTTPPacket, tszMsgBuffer, &nMsgLen, &st_HDRParam); + HttpProtocol_Server_SendMsgEx(xhHTTPPacket, tszMsgBuffer, &nMsgLen, &st_HDRParam); XEngine_Network_Send(lpszClientAddr, tszMsgBuffer, nMsgLen); - XLOG_PRINT(xhLog, XENGINE_HELPCOMPONENTS_XLOG_IN_LOGLEVEL_ERROR, _T("HTTP客户端:%s,发送的请求不支持:%s,内容:\r\n%s"), lpszClientAddr, pSt_HTTPParam->tszHttpUri, lpszRVBuffer); + XLOG_PRINT(xhLog, XENGINE_HELPCOMPONENTS_XLOG_IN_LOGLEVEL_ERROR, _X("HTTP客户端:%s,发送的请求不支持:%s,内容:\r\n%s"), lpszClientAddr, pSt_HTTPParam->tszHttpUri, lpszRVBuffer); } } else { - XLOG_PRINT(xhLog, XENGINE_HELPCOMPONENTS_XLOG_IN_LOGLEVEL_WARN, _T("HTTP客户端:%s,协议错误"), lpszClientAddr); + XLOG_PRINT(xhLog, XENGINE_HELPCOMPONENTS_XLOG_IN_LOGLEVEL_WARN, _X("HTTP客户端:%s,协议错误"), lpszClientAddr); } BaseLib_OperatorMemory_Free((XPPPMEM)&pptszList, nListCount); - return TRUE; + return true; } \ No newline at end of file diff --git a/XEngine_Source/XEngine_ServiceApp/XEngine_HttpApp/XEngine_HTTPTask.h b/XEngine_Source/XEngine_ServiceApp/XEngine_HttpApp/XEngine_HTTPTask.h index d9c49156ba82f24586f2beecb0a0b4fd3f885640..56a3f0d11cc406d2b93a637593924c9887f5578f 100644 --- a/XEngine_Source/XEngine_ServiceApp/XEngine_HttpApp/XEngine_HTTPTask.h +++ b/XEngine_Source/XEngine_ServiceApp/XEngine_HttpApp/XEngine_HTTPTask.h @@ -11,6 +11,6 @@ // History: *********************************************************************/ //任务处理池,用来获取一个完整包 -XHTHREAD CALLBACK XEngine_HTTPTask_Thread(LPVOID lParam); +XHTHREAD CALLBACK HTTPTask_TastPost_Thread(XPVOID lParam); //任务处理相关函数,处理包的内容 -BOOL XEngine_HTTPTask_Handle(RFCCOMPONENTS_HTTP_REQPARAM* pSt_HTTPParam, LPCTSTR lpszClientAddr, LPCTSTR lpszRVBuffer, int nRVLen); \ No newline at end of file +bool HTTPTask_TastPost_Handle(RFCCOMPONENTS_HTTP_REQPARAM* pSt_HTTPParam, LPCXSTR lpszClientAddr, LPCXSTR lpszRVBuffer, int nRVLen, XCHAR*** ppptszHDRList, int nHDRCount); \ No newline at end of file diff --git a/XEngine_Source/XEngine_ServiceApp/XEngine_HttpApp/XEngine_HTTPTask/HTTPTask_OPtions.cpp b/XEngine_Source/XEngine_ServiceApp/XEngine_HttpApp/XEngine_HTTPTask/HTTPTask_OPtions.cpp deleted file mode 100644 index bb7cddb4579b901060cc8b8169ce1d830fccb146..0000000000000000000000000000000000000000 --- a/XEngine_Source/XEngine_ServiceApp/XEngine_HttpApp/XEngine_HTTPTask/HTTPTask_OPtions.cpp +++ /dev/null @@ -1,37 +0,0 @@ -#include "../XEngine_Hdr.h" - - -BOOL XEngine_HTTPTask_OPTions(LPCTSTR lpszClientAddr) -{ - int nMsgLen = 4096; - int nPktLen = 4096; - TCHAR tszMsgBuffer[4096]; - TCHAR tszPktBuffer[4096]; - RFCCOMPONENTS_HTTP_HDRPARAM st_HDRParam; //发送给客户端的参数 - - memset(tszMsgBuffer, '\0', sizeof(tszMsgBuffer)); - memset(tszPktBuffer, '\0', sizeof(tszPktBuffer)); - memset(&st_HDRParam, '\0', sizeof(RFCCOMPONENTS_HTTP_HDRPARAM)); - - st_HDRParam.nHttpCode = 200; //HTTP CODE码 - st_HDRParam.bIsClose = TRUE; //收到回复后就关闭 - //解析能力配置 - XENGINE_OPTIONLIST st_OPtionList; - LPCTSTR lpszOPFile = _T("./XEngine_Config/XEngine_OPtionConfig.json"); - FILE* pSt_File = _tfopen(lpszOPFile, _T("rb")); - if (NULL == pSt_File) - { - st_HDRParam.nHttpCode = 404; - RfcComponents_HttpServer_SendMsgEx(xhHTTPPacket, tszMsgBuffer, &nMsgLen, &st_HDRParam, tszPktBuffer, nPktLen); - XEngine_Network_Send(lpszClientAddr, tszMsgBuffer, nMsgLen); - XLOG_PRINT(xhLog, XENGINE_HELPCOMPONENTS_XLOG_IN_LOGLEVEL_INFO, _T("HTTP客户端:%s,查询服务器能力失败,没有找到配置文件"), lpszClientAddr); - return FALSE; - } - nPktLen = fread(tszPktBuffer, 1, nPktLen, pSt_File); - fclose(pSt_File); - //打包发送 - RfcComponents_HttpServer_SendMsgEx(xhHTTPPacket, tszMsgBuffer, &nMsgLen, &st_HDRParam, tszPktBuffer, nPktLen); - XEngine_Network_Send(lpszClientAddr, tszMsgBuffer, nMsgLen); - XLOG_PRINT(xhLog, XENGINE_HELPCOMPONENTS_XLOG_IN_LOGLEVEL_INFO, _T("HTTP客户端:%s,查询服务器能力成功"), lpszClientAddr); - return TRUE; -} \ No newline at end of file diff --git a/XEngine_Source/XEngine_ServiceApp/XEngine_HttpApp/XEngine_HTTPTask/HTTPTask_OPtions.h b/XEngine_Source/XEngine_ServiceApp/XEngine_HttpApp/XEngine_HTTPTask/HTTPTask_OPtions.h deleted file mode 100644 index e6188d8779c7a796e7460a3580461f9de31f7b8a..0000000000000000000000000000000000000000 --- a/XEngine_Source/XEngine_ServiceApp/XEngine_HttpApp/XEngine_HTTPTask/HTTPTask_OPtions.h +++ /dev/null @@ -1,3 +0,0 @@ -#pragma once - -BOOL XEngine_HTTPTask_OPTions(LPCTSTR lpszClientAddr); \ No newline at end of file diff --git a/XEngine_Source/XEngine_ServiceApp/XEngine_HttpApp/XEngine_HTTPTask/HTTPTask_P2PClient.h b/XEngine_Source/XEngine_ServiceApp/XEngine_HttpApp/XEngine_HTTPTask/HTTPTask_P2PClient.h deleted file mode 100644 index 02bfba95c745351e5935b68205c94b6fc9b42524..0000000000000000000000000000000000000000 --- a/XEngine_Source/XEngine_ServiceApp/XEngine_HttpApp/XEngine_HTTPTask/HTTPTask_P2PClient.h +++ /dev/null @@ -1,4 +0,0 @@ -#pragma once - -void CALLBACK XEngine_HTTPTask_P2PCallback(XENGINE_P2XPPEER_PROTOCOL* pSt_P2PProtocol, LPVOID lParam); -BOOL XEngine_HTTPTask_P2PClient(LPCTSTR lpszClientAddr, LPCTSTR lpszMsgBuffer, int nMsgLen, int unOperatorCode); \ No newline at end of file diff --git a/XEngine_Source/XEngine_ServiceApp/XEngine_HttpApp/XEngine_HTTPTask/HTTPTask_SocketTest.h b/XEngine_Source/XEngine_ServiceApp/XEngine_HttpApp/XEngine_HTTPTask/HTTPTask_SocketTest.h deleted file mode 100644 index 3fe35ca009659e5a13d843c0e81e0cc8fb058a1a..0000000000000000000000000000000000000000 --- a/XEngine_Source/XEngine_ServiceApp/XEngine_HttpApp/XEngine_HTTPTask/HTTPTask_SocketTest.h +++ /dev/null @@ -1,4 +0,0 @@ -#pragma once - -void CALLBACK XEngine_HTTPTask_CBSocketTest(XNETHANDLE xhToken, LPCSTR lpszAddr, int nPort, __int64x nNumber, __int64x nFailed, __int64x nSuccess, int nStatus, LPVOID lParam); -BOOL XEngine_HTTPTask_SocketTest(LPCTSTR lpszClientAddr, LPCTSTR lpszMsgBuffer, int nMsgLen, int nType); \ No newline at end of file diff --git a/XEngine_Source/XEngine_ServiceApp/XEngine_HttpApp/XEngine_Hdr.h b/XEngine_Source/XEngine_ServiceApp/XEngine_HttpApp/XEngine_Hdr.h index 99aafa2bab2f8f6e76c4e6b97ac375fd10052cc5..1969ceded1efb91684193a35eeddde83b69f4554 100644 --- a/XEngine_Source/XEngine_ServiceApp/XEngine_HttpApp/XEngine_Hdr.h +++ b/XEngine_Source/XEngine_ServiceApp/XEngine_HttpApp/XEngine_Hdr.h @@ -8,7 +8,7 @@ #include #include #include -#ifdef _WINDOWS +#ifdef _MSC_BUILD #include #include #else @@ -34,8 +34,8 @@ using namespace std; #include #include #include -#include -#include +#include +#include #include #include #include @@ -58,17 +58,20 @@ using namespace std; #include "XEngine_Network.h" #include "XEngine_HTTPTask.h" #include "XEngine_PluginTask.h" -#include "XEngine_HTTPTask/HTTPTask_IDCard.h" -#include "XEngine_HTTPTask/HTTPTask_Bank.h" -#include "XEngine_HTTPTask/HTTPTask_Language.h" -#include "XEngine_HTTPTask/HTTPTask_Translation.h" -#include "XEngine_HTTPTask/HTTPTask_Locker.h" -#include "XEngine_HTTPTask/HTTPTask_OPtions.h" -#include "XEngine_HTTPTask/HTTPTask_P2PClient.h" -#include "XEngine_HTTPTask/HTTPTask_PostCode.h" -#include "XEngine_HTTPTask/HTTPTask_Log.h" -#include "XEngine_HTTPTask/HTTPTask_QRCode.h" -#include "XEngine_HTTPTask/HTTPTask_SocketTest.h" +//post +#include "XEngine_TaskPost/TaskPost_DTest.h" +#include "XEngine_TaskPost/TaskPost_Log.h" +#include "XEngine_TaskPost/TaskPost_P2PClient.h" +#include "XEngine_TaskPost/TaskPost_PostCode.h" +#include "XEngine_TaskPost/TaskPost_SocketTest.h" +#include "XEngine_TaskPost/TaskPost_QRCode.h" +#include "XEngine_TaskPost/TaskPost_ShortLink.h" +//get +#include "XEngine_TaskGet/TaskGet_IDCard.h" +#include "XEngine_TaskGet/TaskGet_Bank.h" +#include "XEngine_TaskGet/TaskGet_Language.h" +#include "XEngine_TaskGet/TaskGet_Translation.h" +#include "XEngine_TaskGet/TaskGet_Locker.h" /******************************************************************** // Created: 2022/01/20 14:42:06 // File Name: D:\XEngine_ServiceApp\XEngine_Source\XEngine_ServiceApp\XEngine_HttpApp\XEngine_Hdr.h @@ -82,8 +85,8 @@ using namespace std; *********************************************************************/ #define XENGIEN_APISERVICE_BUFFER_SIZE (1024 * 1024 * 10) -extern BOOL bIsRun; -extern XLOG xhLog; +extern bool bIsRun; +extern XHANDLE xhLog; //HTTP服务器 extern XHANDLE xhHTTPSocket; extern XHANDLE xhHTTPHeart; @@ -96,7 +99,7 @@ extern XENGINE_QRCODECONFIG st_QRCodeConfig; extern XENGINE_PLUGINCONFIG st_PluginLibConfig; extern XENGINE_PLUGINCONFIG st_PluginLuaConfig; //连接库 -#ifdef _WINDOWS +#ifdef _MSC_BUILD #ifdef _WIN64 #ifdef _DEBUG #pragma comment(lib,"../../x64/Debug/XEngine_ModuleConfigure.lib") @@ -131,7 +134,7 @@ extern XENGINE_PLUGINCONFIG st_PluginLuaConfig; #pragma comment(lib,"XEngine_Core/XEngine_ManagePool.lib") #pragma comment(lib,"XEngine_Core/XEngine_OPenSsl.lib") #pragma comment(lib,"XEngine_HelpComponents/HelpComponents_XLog.lib") -#pragma comment(lib,"XEngine_RfcComponents/RfcComponents_HttpServer.lib") +#pragma comment(lib,"XEngine_RfcComponents/RfcComponents_HttpProtocol.lib") #pragma comment(lib,"XEngine_NetHelp/NetHelp_APIClient.lib") #pragma comment(lib,"XEngine_SystemSdk/XEngine_SystemApi") #pragma comment(lib,"Ws2_32.lib") diff --git a/XEngine_Source/XEngine_ServiceApp/XEngine_HttpApp/XEngine_HttpApp.cpp b/XEngine_Source/XEngine_ServiceApp/XEngine_HttpApp/XEngine_HttpApp.cpp index a007b98b53bb8c4a1f0391b36056a15526b47373..cea9e3346a6768f4c7438d029215b23ad1ad7f93 100644 --- a/XEngine_Source/XEngine_ServiceApp/XEngine_HttpApp/XEngine_HttpApp.cpp +++ b/XEngine_Source/XEngine_ServiceApp/XEngine_HttpApp/XEngine_HttpApp.cpp @@ -10,8 +10,8 @@ // Purpose: 主要入口函数 // History: *********************************************************************/ -BOOL bIsRun = FALSE; -XLOG xhLog = NULL; +bool bIsRun = false; +XHANDLE xhLog = NULL; //HTTP服务器 XHANDLE xhHTTPSocket = NULL; XHANDLE xhHTTPHeart = NULL; @@ -28,18 +28,19 @@ void ServiceApp_Stop(int signo) { if (bIsRun) { - XLOG_PRINT(xhLog, XENGINE_HELPCOMPONENTS_XLOG_IN_LOGLEVEL_WARN, _T("服务器退出...")); - bIsRun = FALSE; + XLOG_PRINT(xhLog, XENGINE_HELPCOMPONENTS_XLOG_IN_LOGLEVEL_WARN, _X("服务器退出...")); + bIsRun = false; //销毁HTTP资源 NetCore_TCPXCore_DestroyEx(xhHTTPSocket); SocketOpt_HeartBeat_DestoryEx(xhHTTPHeart); - RfcComponents_HttpServer_DestroyEx(xhHTTPPacket); + HttpProtocol_Server_DestroyEx(xhHTTPPacket); ManagePool_Thread_NQDestroy(xhHTTPPool); //销毁数据库 ModuleDatabase_IDCard_Destory(); ModuleDatabase_Bank_Destory(); ModuleDatabase_ZIPCode_Destory(); ModuleDatabase_XLog_Destory(); + ModuleDatabase_ShortLink_Destory(); //销毁其他 ModulePlugin_LibCore_Destroy(); ModulePlugin_LuaCore_Destroy(); @@ -47,7 +48,7 @@ void ServiceApp_Stop(int signo) //销毁日志资源 HelpComponents_XLog_Destroy(xhLog); } -#ifdef _WINDOWS +#ifdef _MSC_BUILD WSACleanup(); #endif exit(0); @@ -55,7 +56,7 @@ void ServiceApp_Stop(int signo) //LINUX守护进程 static int ServiceApp_Deamon() { -#ifndef _WINDOWS +#ifndef _MSC_BUILD pid_t nPID = 0; int nStatus = 0; nPID = fork(); @@ -85,14 +86,14 @@ static int ServiceApp_Deamon() int main(int argc, char** argv) { -#ifdef _WINDOWS +#ifdef _MSC_BUILD WSADATA st_WSAData; WSAStartup(MAKEWORD(2, 2), &st_WSAData); #endif - bIsRun = TRUE; - LPCTSTR lpszHTTPMime = _T("./XEngine_Config/HttpMime.types"); - LPCTSTR lpszHTTPCode = _T("./XEngine_Config/HttpCode.types"); - LPCTSTR lpszLogFile = _T("./XEngine_Log/XEngine_HttpApp.Log"); + bIsRun = true; + LPCXSTR lpszHTTPMime = _X("./XEngine_Config/HttpMime.types"); + LPCXSTR lpszHTTPCode = _X("./XEngine_Config/HttpCode.types"); + LPCXSTR lpszLogFile = _X("./XEngine_Log/XEngine_HttpApp.Log"); HELPCOMPONENTS_XLOG_CONFIGURE st_XLogConfig; THREADPOOL_PARAMENT** ppSt_ListHTTPParam; @@ -105,7 +106,7 @@ int main(int argc, char** argv) st_XLogConfig.XLog_MaxBackupFile = 10; st_XLogConfig.XLog_MaxSize = 1024000; - _tcscpy(st_XLogConfig.tszFileName, lpszLogFile); + _tcsxcpy(st_XLogConfig.tszFileName, lpszLogFile); //初始化参数 if (!XEngine_Configure_Parament(argc, argv, &st_ServiceConfig)) { @@ -125,107 +126,113 @@ int main(int argc, char** argv) } //设置日志打印级别 HelpComponents_XLog_SetLogPriority(xhLog, XENGINE_HELPCOMPONENTS_XLOG_IN_LOGLEVEL_INFO); - XLOG_PRINT(xhLog, XENGINE_HELPCOMPONENTS_XLOG_IN_LOGLEVEL_INFO, _T("启动服务中,初始化日志系统成功")); + XLOG_PRINT(xhLog, XENGINE_HELPCOMPONENTS_XLOG_IN_LOGLEVEL_INFO, _X("启动服务中,初始化日志系统成功")); signal(SIGINT, ServiceApp_Stop); signal(SIGTERM, ServiceApp_Stop); signal(SIGABRT, ServiceApp_Stop); - XLOG_PRINT(xhLog, XENGINE_HELPCOMPONENTS_XLOG_IN_LOGLEVEL_INFO, _T("启动服务中,初始化信号量成功")); + XLOG_PRINT(xhLog, XENGINE_HELPCOMPONENTS_XLOG_IN_LOGLEVEL_INFO, _X("启动服务中,初始化信号量成功")); //初始化OPENCC配置 if (!ModuleConfigure_Json_OPenccFile(st_ServiceConfig.st_XConfig.tszConfigOPencc, &st_OPenccConfig)) { - XLOG_PRINT(xhLog, XENGINE_HELPCOMPONENTS_XLOG_IN_LOGLEVEL_ERROR, _T("启动服务中,初始化OPenCC配置文件失败,错误:%lX"), ModuleConfigure_GetLastError()); + XLOG_PRINT(xhLog, XENGINE_HELPCOMPONENTS_XLOG_IN_LOGLEVEL_ERROR, _X("启动服务中,初始化OPenCC配置文件失败,错误:%lX"), ModuleConfigure_GetLastError()); goto XENGINE_SERVICEAPP_EXIT; } - XLOG_PRINT(xhLog, XENGINE_HELPCOMPONENTS_XLOG_IN_LOGLEVEL_INFO, _T("启动服务中,初始化OPenCC配置文件:%s 成功"), st_ServiceConfig.st_XConfig.tszConfigOPencc); + XLOG_PRINT(xhLog, XENGINE_HELPCOMPONENTS_XLOG_IN_LOGLEVEL_INFO, _X("启动服务中,初始化OPenCC配置文件:%s 成功"), st_ServiceConfig.st_XConfig.tszConfigOPencc); if (!ModuleConfigure_Json_QRCodeFile(st_ServiceConfig.st_XConfig.tszConfigQRCode, &st_QRCodeConfig)) { - XLOG_PRINT(xhLog, XENGINE_HELPCOMPONENTS_XLOG_IN_LOGLEVEL_ERROR, _T("启动服务中,初始化二维码配置文件失败,错误:%lX"), ModuleConfigure_GetLastError()); + XLOG_PRINT(xhLog, XENGINE_HELPCOMPONENTS_XLOG_IN_LOGLEVEL_ERROR, _X("启动服务中,初始化二维码配置文件失败,错误:%lX"), ModuleConfigure_GetLastError()); goto XENGINE_SERVICEAPP_EXIT; } - XLOG_PRINT(xhLog, XENGINE_HELPCOMPONENTS_XLOG_IN_LOGLEVEL_INFO, _T("启动服务中,初始化二维码配置文件:%s 成功"), st_ServiceConfig.st_XConfig.tszConfigQRCode); + XLOG_PRINT(xhLog, XENGINE_HELPCOMPONENTS_XLOG_IN_LOGLEVEL_INFO, _X("启动服务中,初始化二维码配置文件:%s 成功"), st_ServiceConfig.st_XConfig.tszConfigQRCode); //初始化插件配置 if (st_ServiceConfig.st_XPlugin.bEnable) { if (!ModuleConfigure_Json_PluginFile(st_ServiceConfig.st_XPlugin.tszPluginLib, &st_PluginLibConfig)) { - XLOG_PRINT(xhLog, XENGINE_HELPCOMPONENTS_XLOG_IN_LOGLEVEL_ERROR, _T("启动服务中,初始化Lib插件配置文件失败,错误:%lX"), ModuleConfigure_GetLastError()); + XLOG_PRINT(xhLog, XENGINE_HELPCOMPONENTS_XLOG_IN_LOGLEVEL_ERROR, _X("启动服务中,初始化Lib插件配置文件失败,错误:%lX"), ModuleConfigure_GetLastError()); goto XENGINE_SERVICEAPP_EXIT; } - XLOG_PRINT(xhLog, XENGINE_HELPCOMPONENTS_XLOG_IN_LOGLEVEL_INFO, _T("启动服务中,初始化Lib插件配置文件成功")); + XLOG_PRINT(xhLog, XENGINE_HELPCOMPONENTS_XLOG_IN_LOGLEVEL_INFO, _X("启动服务中,初始化Lib插件配置文件成功")); if (!ModuleConfigure_Json_PluginFile(st_ServiceConfig.st_XPlugin.tszPluginLua, &st_PluginLuaConfig)) { - XLOG_PRINT(xhLog, XENGINE_HELPCOMPONENTS_XLOG_IN_LOGLEVEL_ERROR, _T("启动服务中,初始化Lua插件配置文件失败,错误:%lX"), ModuleConfigure_GetLastError()); + XLOG_PRINT(xhLog, XENGINE_HELPCOMPONENTS_XLOG_IN_LOGLEVEL_ERROR, _X("启动服务中,初始化Lua插件配置文件失败,错误:%lX"), ModuleConfigure_GetLastError()); goto XENGINE_SERVICEAPP_EXIT; } - XLOG_PRINT(xhLog, XENGINE_HELPCOMPONENTS_XLOG_IN_LOGLEVEL_INFO, _T("启动服务中,初始化Lua插件配置文件成功")); + XLOG_PRINT(xhLog, XENGINE_HELPCOMPONENTS_XLOG_IN_LOGLEVEL_INFO, _X("启动服务中,初始化Lua插件配置文件成功")); } else { - XLOG_PRINT(xhLog, XENGINE_HELPCOMPONENTS_XLOG_IN_LOGLEVEL_WARN, _T("启动服务中,插件系统被禁用")); + XLOG_PRINT(xhLog, XENGINE_HELPCOMPONENTS_XLOG_IN_LOGLEVEL_WARN, _X("启动服务中,插件系统被禁用")); } //初始化数据库 if (!ModuleDatabase_IDCard_Init((DATABASE_MYSQL_CONNECTINFO*)&st_ServiceConfig.st_XSql)) { - XLOG_PRINT(xhLog, XENGINE_HELPCOMPONENTS_XLOG_IN_LOGLEVEL_ERROR, _T("启动服务中,初始化ID数据库失败,错误:%lX"), ModuleDB_GetLastError()); + XLOG_PRINT(xhLog, XENGINE_HELPCOMPONENTS_XLOG_IN_LOGLEVEL_ERROR, _X("启动服务中,初始化ID数据库失败,错误:%lX"), ModuleDB_GetLastError()); goto XENGINE_SERVICEAPP_EXIT; } - XLOG_PRINT(xhLog, XENGINE_HELPCOMPONENTS_XLOG_IN_LOGLEVEL_INFO, _T("启动服务中,初始化ID数据库成功")); + XLOG_PRINT(xhLog, XENGINE_HELPCOMPONENTS_XLOG_IN_LOGLEVEL_INFO, _X("启动服务中,初始化ID数据库成功")); if (!ModuleDatabase_Bank_Init((DATABASE_MYSQL_CONNECTINFO*)&st_ServiceConfig.st_XSql)) { - XLOG_PRINT(xhLog, XENGINE_HELPCOMPONENTS_XLOG_IN_LOGLEVEL_ERROR, _T("启动服务中,初始化银行卡数据库失败,错误:%lX"), ModuleDB_GetLastError()); + XLOG_PRINT(xhLog, XENGINE_HELPCOMPONENTS_XLOG_IN_LOGLEVEL_ERROR, _X("启动服务中,初始化银行卡数据库失败,错误:%lX"), ModuleDB_GetLastError()); goto XENGINE_SERVICEAPP_EXIT; } - XLOG_PRINT(xhLog, XENGINE_HELPCOMPONENTS_XLOG_IN_LOGLEVEL_INFO, _T("启动服务中,初始化银行卡数据库成功")); + XLOG_PRINT(xhLog, XENGINE_HELPCOMPONENTS_XLOG_IN_LOGLEVEL_INFO, _X("启动服务中,初始化银行卡数据库成功")); if (!ModuleDatabase_ZIPCode_Init((DATABASE_MYSQL_CONNECTINFO*)&st_ServiceConfig.st_XSql)) { - XLOG_PRINT(xhLog, XENGINE_HELPCOMPONENTS_XLOG_IN_LOGLEVEL_ERROR, _T("启动服务中,初始化行政邮编信息数据库失败,错误:%lX"), ModuleDB_GetLastError()); + XLOG_PRINT(xhLog, XENGINE_HELPCOMPONENTS_XLOG_IN_LOGLEVEL_ERROR, _X("启动服务中,初始化行政邮编信息数据库失败,错误:%lX"), ModuleDB_GetLastError()); goto XENGINE_SERVICEAPP_EXIT; } - XLOG_PRINT(xhLog, XENGINE_HELPCOMPONENTS_XLOG_IN_LOGLEVEL_INFO, _T("启动服务中,初始化行政邮编信息数据库成功")); + XLOG_PRINT(xhLog, XENGINE_HELPCOMPONENTS_XLOG_IN_LOGLEVEL_INFO, _X("启动服务中,初始化行政邮编信息数据库成功")); if (!ModuleDatabase_XLog_Init((DATABASE_MYSQL_CONNECTINFO*)&st_ServiceConfig.st_XSql)) { - XLOG_PRINT(xhLog, XENGINE_HELPCOMPONENTS_XLOG_IN_LOGLEVEL_ERROR, _T("启动服务中,初始化日志信息数据库失败,错误:%lX"), ModuleDB_GetLastError()); + XLOG_PRINT(xhLog, XENGINE_HELPCOMPONENTS_XLOG_IN_LOGLEVEL_ERROR, _X("启动服务中,初始化日志信息数据库失败,错误:%lX"), ModuleDB_GetLastError()); goto XENGINE_SERVICEAPP_EXIT; } - XLOG_PRINT(xhLog, XENGINE_HELPCOMPONENTS_XLOG_IN_LOGLEVEL_INFO, _T("启动服务中,初始化日志信息数据库成功")); + XLOG_PRINT(xhLog, XENGINE_HELPCOMPONENTS_XLOG_IN_LOGLEVEL_INFO, _X("启动服务中,初始化日志信息数据库成功")); + if (!ModuleDatabase_ShortLink_Init((DATABASE_MYSQL_CONNECTINFO*)&st_ServiceConfig.st_XSql)) + { + XLOG_PRINT(xhLog, XENGINE_HELPCOMPONENTS_XLOG_IN_LOGLEVEL_ERROR, _X("启动服务中,初始化短连接数据库失败,错误:%lX"), ModuleDB_GetLastError()); + goto XENGINE_SERVICEAPP_EXIT; + } + XLOG_PRINT(xhLog, XENGINE_HELPCOMPONENTS_XLOG_IN_LOGLEVEL_INFO, _X("启动服务中,初始化短连接数据库成功")); //启动HTTP服务相关代码 if (st_ServiceConfig.nHttpPort > 0) { //HTTP包处理器 - xhHTTPPacket = RfcComponents_HttpServer_InitEx(lpszHTTPCode, lpszHTTPMime, st_ServiceConfig.st_XMax.nHTTPThread); + xhHTTPPacket = HttpProtocol_Server_InitEx(lpszHTTPCode, lpszHTTPMime, st_ServiceConfig.st_XMax.nHTTPThread); if (NULL == xhHTTPPacket) { - XLOG_PRINT(xhLog, XENGINE_HELPCOMPONENTS_XLOG_IN_LOGLEVEL_ERROR, _T("启动服务中,初始化HTTP组包失败,错误:%lX"), HttpServer_GetLastError()); + XLOG_PRINT(xhLog, XENGINE_HELPCOMPONENTS_XLOG_IN_LOGLEVEL_ERROR, _X("启动服务中,初始化HTTP组包失败,错误:%lX"), HttpProtocol_GetLastError()); goto XENGINE_SERVICEAPP_EXIT; } - XLOG_PRINT(xhLog, XENGINE_HELPCOMPONENTS_XLOG_IN_LOGLEVEL_INFO, _T("启动服务中,初始化HTTP组包成功,IO线程个数:%d"), st_ServiceConfig.st_XMax.nHTTPThread); + XLOG_PRINT(xhLog, XENGINE_HELPCOMPONENTS_XLOG_IN_LOGLEVEL_INFO, _X("启动服务中,初始化HTTP组包成功,IO线程个数:%d"), st_ServiceConfig.st_XMax.nHTTPThread); //启动心跳 if (st_ServiceConfig.st_XTime.nHTTPTimeOut > 0) { xhHTTPHeart = SocketOpt_HeartBeat_InitEx(st_ServiceConfig.st_XTime.nHTTPTimeOut, st_ServiceConfig.st_XTime.nTimeCheck, Network_Callback_HTTPHeart); if (NULL == xhHTTPHeart) { - XLOG_PRINT(xhLog, XENGINE_HELPCOMPONENTS_XLOG_IN_LOGLEVEL_ERROR, _T("启动服务中,初始化HTTP心跳服务失败,错误:%lX"), NetCore_GetLastError()); + XLOG_PRINT(xhLog, XENGINE_HELPCOMPONENTS_XLOG_IN_LOGLEVEL_ERROR, _X("启动服务中,初始化HTTP心跳服务失败,错误:%lX"), NetCore_GetLastError()); goto XENGINE_SERVICEAPP_EXIT; } - XLOG_PRINT(xhLog, XENGINE_HELPCOMPONENTS_XLOG_IN_LOGLEVEL_INFO, _T("启动服务中,初始化HTTP心跳服务成功,时间:%d,次数:%d"), st_ServiceConfig.st_XTime.nHTTPTimeOut, st_ServiceConfig.st_XTime.nTimeCheck); + XLOG_PRINT(xhLog, XENGINE_HELPCOMPONENTS_XLOG_IN_LOGLEVEL_INFO, _X("启动服务中,初始化HTTP心跳服务成功,时间:%d,次数:%d"), st_ServiceConfig.st_XTime.nHTTPTimeOut, st_ServiceConfig.st_XTime.nTimeCheck); } else { - XLOG_PRINT(xhLog, XENGINE_HELPCOMPONENTS_XLOG_IN_LOGLEVEL_WARN, _T("启动服务中,HTTP心跳服务被设置为不启用")); + XLOG_PRINT(xhLog, XENGINE_HELPCOMPONENTS_XLOG_IN_LOGLEVEL_WARN, _X("启动服务中,HTTP心跳服务被设置为不启用")); } //网络 xhHTTPSocket = NetCore_TCPXCore_StartEx(st_ServiceConfig.nHttpPort, st_ServiceConfig.st_XMax.nMaxClient, st_ServiceConfig.st_XMax.nIOThread); if (NULL == xhHTTPSocket) { - XLOG_PRINT(xhLog, XENGINE_HELPCOMPONENTS_XLOG_IN_LOGLEVEL_ERROR, _T("启动服务中,启动HTTP网络服务器失败,错误:%lX"), NetCore_GetLastError()); + XLOG_PRINT(xhLog, XENGINE_HELPCOMPONENTS_XLOG_IN_LOGLEVEL_ERROR, _X("启动服务中,启动HTTP网络服务器失败,错误:%lX"), NetCore_GetLastError()); goto XENGINE_SERVICEAPP_EXIT; } - XLOG_PRINT(xhLog, XENGINE_HELPCOMPONENTS_XLOG_IN_LOGLEVEL_INFO, _T("启动服务中,启动HTTP网络服务器成功,HTTP端口:%d,IO:%d"), st_ServiceConfig.nHttpPort, st_ServiceConfig.st_XMax.nIOThread); + XLOG_PRINT(xhLog, XENGINE_HELPCOMPONENTS_XLOG_IN_LOGLEVEL_INFO, _X("启动服务中,启动HTTP网络服务器成功,HTTP端口:%d,IO:%d"), st_ServiceConfig.nHttpPort, st_ServiceConfig.st_XMax.nIOThread); NetCore_TCPXCore_RegisterCallBackEx(xhHTTPSocket, Network_Callback_HTTPLogin, Network_Callback_HTTPRecv, Network_Callback_HTTPLeave); - XLOG_PRINT(xhLog, XENGINE_HELPCOMPONENTS_XLOG_IN_LOGLEVEL_INFO, _T("启动服务中,注册HTTP网络事件成功")); + XLOG_PRINT(xhLog, XENGINE_HELPCOMPONENTS_XLOG_IN_LOGLEVEL_INFO, _X("启动服务中,注册HTTP网络事件成功")); //HTTP任务池 BaseLib_OperatorMemory_Malloc((XPPPMEM)&ppSt_ListHTTPParam, st_ServiceConfig.st_XMax.nHTTPThread, sizeof(THREADPOOL_PARAMENT)); for (int i = 0; i < st_ServiceConfig.st_XMax.nHTTPThread; i++) @@ -234,36 +241,36 @@ int main(int argc, char** argv) *pInt_Pos = i; ppSt_ListHTTPParam[i]->lParam = pInt_Pos; - ppSt_ListHTTPParam[i]->fpCall_ThreadsTask = XEngine_HTTPTask_Thread; + ppSt_ListHTTPParam[i]->fpCall_ThreadsTask = HTTPTask_TastPost_Thread; } xhHTTPPool = ManagePool_Thread_NQCreate(&ppSt_ListHTTPParam, st_ServiceConfig.st_XMax.nHTTPThread); if (NULL == xhHTTPPool) { - XLOG_PRINT(xhLog, XENGINE_HELPCOMPONENTS_XLOG_IN_LOGLEVEL_ERROR, _T("启动服务中,启动HTTP线程池服务失败,错误:%lX"), ManagePool_GetLastError()); + XLOG_PRINT(xhLog, XENGINE_HELPCOMPONENTS_XLOG_IN_LOGLEVEL_ERROR, _X("启动服务中,启动HTTP线程池服务失败,错误:%lX"), ManagePool_GetLastError()); goto XENGINE_SERVICEAPP_EXIT; } - XLOG_PRINT(xhLog, XENGINE_HELPCOMPONENTS_XLOG_IN_LOGLEVEL_INFO, _T("启动服务中,启动HTTP线程池服务成功,启动个数:%d"), st_ServiceConfig.st_XMax.nHTTPThread); + XLOG_PRINT(xhLog, XENGINE_HELPCOMPONENTS_XLOG_IN_LOGLEVEL_INFO, _X("启动服务中,启动HTTP线程池服务成功,启动个数:%d"), st_ServiceConfig.st_XMax.nHTTPThread); } else { - XLOG_PRINT(xhLog, XENGINE_HELPCOMPONENTS_XLOG_IN_LOGLEVEL_WARN, _T("启动服务中,HTTP消息服务没有被启用")); + XLOG_PRINT(xhLog, XENGINE_HELPCOMPONENTS_XLOG_IN_LOGLEVEL_WARN, _X("启动服务中,HTTP消息服务没有被启用")); } //初始化P2P - if (!ModuleHelp_P2PClient_Init(st_ServiceConfig.st_XTime.nP2PTimeOut, XEngine_HTTPTask_P2PCallback)) + if (!ModuleHelp_P2PClient_Init(st_ServiceConfig.st_XTime.nP2PTimeOut, HTTPTask_TastPost_P2PCallback)) { - XLOG_PRINT(xhLog, XENGINE_HELPCOMPONENTS_XLOG_IN_LOGLEVEL_ERROR, _T("启动服务中,启动P2P客户端管理器失败,错误:%lX"), ModuleHelp_GetLastError()); + XLOG_PRINT(xhLog, XENGINE_HELPCOMPONENTS_XLOG_IN_LOGLEVEL_ERROR, _X("启动服务中,启动P2P客户端管理器失败,错误:%lX"), ModuleHelp_GetLastError()); goto XENGINE_SERVICEAPP_EXIT; } - XLOG_PRINT(xhLog, XENGINE_HELPCOMPONENTS_XLOG_IN_LOGLEVEL_INFO, _T("启动服务中,启动P2P客户端管理器成功,超时时间设置:%d 秒"), st_ServiceConfig.st_XTime.nP2PTimeOut); + XLOG_PRINT(xhLog, XENGINE_HELPCOMPONENTS_XLOG_IN_LOGLEVEL_INFO, _X("启动服务中,启动P2P客户端管理器成功,超时时间设置:%d 秒"), st_ServiceConfig.st_XTime.nP2PTimeOut); //启动插件 if (!ModulePlugin_LibCore_Init()) { - XLOG_PRINT(xhLog, XENGINE_HELPCOMPONENTS_XLOG_IN_LOGLEVEL_ERROR, _T("启动服务中,初始化Lib插件系统失败,错误:%lX"), ModulePlugin_GetLastError()); + XLOG_PRINT(xhLog, XENGINE_HELPCOMPONENTS_XLOG_IN_LOGLEVEL_ERROR, _X("启动服务中,初始化Lib插件系统失败,错误:%lX"), ModulePlugin_GetLastError()); goto XENGINE_SERVICEAPP_EXIT; } //加载插件 - XLOG_PRINT(xhLog, XENGINE_HELPCOMPONENTS_XLOG_IN_LOGLEVEL_INFO, _T("启动服务中,初始化Lib插件系统成功,开始加载插件")); + XLOG_PRINT(xhLog, XENGINE_HELPCOMPONENTS_XLOG_IN_LOGLEVEL_INFO, _X("启动服务中,初始化Lib插件系统成功,开始加载插件")); { list::const_iterator stl_ListIterator = st_PluginLibConfig.pStl_ListPlugin->begin(); for (int i = 1; stl_ListIterator != st_PluginLibConfig.pStl_ListPlugin->end(); stl_ListIterator++, i++) @@ -272,25 +279,25 @@ int main(int argc, char** argv) { if (ModulePlugin_Loader_Insert(stl_ListIterator->tszPluginMethod, stl_ListIterator->tszPluginFile, 0)) { - XLOG_PRINT(xhLog, XENGINE_HELPCOMPONENTS_XLOG_IN_LOGLEVEL_INFO, _T("启动服务中,加载Lib模块插件中,当前第:%d 个加载成功,方法:%s,路径:%s"), i, stl_ListIterator->tszPluginMethod, stl_ListIterator->tszPluginFile); + XLOG_PRINT(xhLog, XENGINE_HELPCOMPONENTS_XLOG_IN_LOGLEVEL_INFO, _X("启动服务中,加载Lib模块插件中,当前第:%d 个加载成功,方法:%s,路径:%s"), i, stl_ListIterator->tszPluginMethod, stl_ListIterator->tszPluginFile); } else { - XLOG_PRINT(xhLog, XENGINE_HELPCOMPONENTS_XLOG_IN_LOGLEVEL_ERROR, _T("启动服务中,加载Lib模块插件中,当前第:%d 个加载失败,方法:%s,路径:%s,错误:%lX"), i, stl_ListIterator->tszPluginMethod, stl_ListIterator->tszPluginFile, ModulePlugin_GetLastError()); + XLOG_PRINT(xhLog, XENGINE_HELPCOMPONENTS_XLOG_IN_LOGLEVEL_ERROR, _X("启动服务中,加载Lib模块插件中,当前第:%d 个加载失败,方法:%s,路径:%s,错误:%lX"), i, stl_ListIterator->tszPluginMethod, stl_ListIterator->tszPluginFile, ModulePlugin_GetLastError()); } } else { - XLOG_PRINT(xhLog, XENGINE_HELPCOMPONENTS_XLOG_IN_LOGLEVEL_WARN, _T("启动服务中,加载Lib模块插件中,当前第:%d 个加载失败,因为没有启用,方法:%s,路径:%s"), i, stl_ListIterator->tszPluginMethod, stl_ListIterator->tszPluginFile); + XLOG_PRINT(xhLog, XENGINE_HELPCOMPONENTS_XLOG_IN_LOGLEVEL_WARN, _X("启动服务中,加载Lib模块插件中,当前第:%d 个加载失败,因为没有启用,方法:%s,路径:%s"), i, stl_ListIterator->tszPluginMethod, stl_ListIterator->tszPluginFile); } } } if (!ModulePlugin_LuaCore_Init()) { - XLOG_PRINT(xhLog, XENGINE_HELPCOMPONENTS_XLOG_IN_LOGLEVEL_ERROR, _T("启动服务中,初始化Lua插件系统失败,错误:%lX"), ModulePlugin_GetLastError()); + XLOG_PRINT(xhLog, XENGINE_HELPCOMPONENTS_XLOG_IN_LOGLEVEL_ERROR, _X("启动服务中,初始化Lua插件系统失败,错误:%lX"), ModulePlugin_GetLastError()); goto XENGINE_SERVICEAPP_EXIT; } - XLOG_PRINT(xhLog, XENGINE_HELPCOMPONENTS_XLOG_IN_LOGLEVEL_INFO, _T("启动服务中,初始化Lua插件系统成功,开始加载插件")); + XLOG_PRINT(xhLog, XENGINE_HELPCOMPONENTS_XLOG_IN_LOGLEVEL_INFO, _X("启动服务中,初始化Lua插件系统成功,开始加载插件")); { list::const_iterator stl_ListIterator = st_PluginLuaConfig.pStl_ListPlugin->begin(); for (int i = 1; stl_ListIterator != st_PluginLuaConfig.pStl_ListPlugin->end(); stl_ListIterator++, i++) @@ -299,24 +306,24 @@ int main(int argc, char** argv) { if (ModulePlugin_Loader_Insert(stl_ListIterator->tszPluginMethod, stl_ListIterator->tszPluginFile, 1)) { - XLOG_PRINT(xhLog, XENGINE_HELPCOMPONENTS_XLOG_IN_LOGLEVEL_INFO, _T("启动服务中,加载Lua模块插件中,当前第:%d 个加载成功,方法:%s,路径:%s"), i, stl_ListIterator->tszPluginMethod, stl_ListIterator->tszPluginFile); + XLOG_PRINT(xhLog, XENGINE_HELPCOMPONENTS_XLOG_IN_LOGLEVEL_INFO, _X("启动服务中,加载Lua模块插件中,当前第:%d 个加载成功,方法:%s,路径:%s"), i, stl_ListIterator->tszPluginMethod, stl_ListIterator->tszPluginFile); } else { - XLOG_PRINT(xhLog, XENGINE_HELPCOMPONENTS_XLOG_IN_LOGLEVEL_ERROR, _T("启动服务中,加载Lua模块插件中,当前第:%d 个加载失败,方法:%s,路径:%s,错误:%lX"), i, stl_ListIterator->tszPluginMethod, stl_ListIterator->tszPluginFile, ModulePlugin_GetLastError()); + XLOG_PRINT(xhLog, XENGINE_HELPCOMPONENTS_XLOG_IN_LOGLEVEL_ERROR, _X("启动服务中,加载Lua模块插件中,当前第:%d 个加载失败,方法:%s,路径:%s,错误:%lX"), i, stl_ListIterator->tszPluginMethod, stl_ListIterator->tszPluginFile, ModulePlugin_GetLastError()); } } else { - XLOG_PRINT(xhLog, XENGINE_HELPCOMPONENTS_XLOG_IN_LOGLEVEL_WARN, _T("启动服务中,加载Lua模块插件中,当前第:%d 个加载失败,因为没有启用,方法:%s,路径:%s"), i, stl_ListIterator->tszPluginMethod, stl_ListIterator->tszPluginFile); + XLOG_PRINT(xhLog, XENGINE_HELPCOMPONENTS_XLOG_IN_LOGLEVEL_WARN, _X("启动服务中,加载Lua模块插件中,当前第:%d 个加载失败,因为没有启用,方法:%s,路径:%s"), i, stl_ListIterator->tszPluginMethod, stl_ListIterator->tszPluginFile); } } } //展示能力 - XLOG_PRINT(xhLog, XENGINE_HELPCOMPONENTS_XLOG_IN_LOGLEVEL_INFO, _T("启动服务中,加载的Lib插件:%d 个,Lua插件:%d 个"), st_PluginLibConfig.pStl_ListPlugin->size(), st_PluginLuaConfig.pStl_ListPlugin->size()); + XLOG_PRINT(xhLog, XENGINE_HELPCOMPONENTS_XLOG_IN_LOGLEVEL_INFO, _X("启动服务中,加载的Lib插件:%d 个,Lua插件:%d 个"), st_PluginLibConfig.pStl_ListPlugin->size(), st_PluginLuaConfig.pStl_ListPlugin->size()); - XLOG_PRINT(xhLog, XENGINE_HELPCOMPONENTS_XLOG_IN_LOGLEVEL_INFO, _T("所有服务成功启动,服务运行中,XEngine版本:%s,发行版本次数:%d,当前版本:%s。。。"), BaseLib_OperatorVer_XGetStr(), st_ServiceConfig.st_XVer.pStl_ListVer->size(), st_ServiceConfig.st_XVer.pStl_ListVer->front().c_str()); - while (TRUE) + XLOG_PRINT(xhLog, XENGINE_HELPCOMPONENTS_XLOG_IN_LOGLEVEL_INFO, _X("所有服务成功启动,服务运行中,XEngine版本:%s%s,发行版本次数:%d,当前版本:%s。。。"), BaseLib_OperatorVer_XNumberStr(), BaseLib_OperatorVer_XTypeStr(), st_ServiceConfig.st_XVer.pStl_ListVer->size(), st_ServiceConfig.st_XVer.pStl_ListVer->front().c_str()); + while (true) { std::this_thread::sleep_for(std::chrono::seconds(1)); } @@ -324,18 +331,19 @@ int main(int argc, char** argv) XENGINE_SERVICEAPP_EXIT: if (bIsRun) { - XLOG_PRINT(xhLog, XENGINE_HELPCOMPONENTS_XLOG_IN_LOGLEVEL_ERROR, _T("有服务启动失败,服务器退出...")); - bIsRun = FALSE; + XLOG_PRINT(xhLog, XENGINE_HELPCOMPONENTS_XLOG_IN_LOGLEVEL_ERROR, _X("有服务启动失败,服务器退出...")); + bIsRun = false; //销毁HTTP资源 NetCore_TCPXCore_DestroyEx(xhHTTPSocket); SocketOpt_HeartBeat_DestoryEx(xhHTTPHeart); - RfcComponents_HttpServer_DestroyEx(xhHTTPPacket); + HttpProtocol_Server_DestroyEx(xhHTTPPacket); ManagePool_Thread_NQDestroy(xhHTTPPool); //销毁数据库 ModuleDatabase_IDCard_Destory(); ModuleDatabase_Bank_Destory(); ModuleDatabase_ZIPCode_Destory(); ModuleDatabase_XLog_Destory(); + ModuleDatabase_ShortLink_Destory(); //销毁其他 ModulePlugin_LibCore_Destroy(); ModulePlugin_LuaCore_Destroy(); @@ -343,7 +351,7 @@ XENGINE_SERVICEAPP_EXIT: //销毁日志资源 HelpComponents_XLog_Destroy(xhLog); } -#ifdef _WINDOWS +#ifdef _MSC_BUILD WSACleanup(); #endif return 0; diff --git a/XEngine_Source/XEngine_ServiceApp/XEngine_HttpApp/XEngine_HttpApp.vcxproj b/XEngine_Source/XEngine_ServiceApp/XEngine_HttpApp/XEngine_HttpApp.vcxproj index 8cfd075e3c132982472010e0e62991c500904369..d77cf17a0b0fb07eaa858610e9da6ffbf9ccbe8a 100644 --- a/XEngine_Source/XEngine_ServiceApp/XEngine_HttpApp/XEngine_HttpApp.vcxproj +++ b/XEngine_Source/XEngine_ServiceApp/XEngine_HttpApp/XEngine_HttpApp.vcxproj @@ -30,27 +30,27 @@ Application true v143 - MultiByte + Unicode Application false v143 true - MultiByte + Unicode Application true v143 - MultiByte + Unicode Application false v143 true - MultiByte + Unicode @@ -156,37 +156,39 @@ - - - - - - - - - - - + + + + + + + + + + + + - - - - - - - - - - - + + + + + + + + + + + + diff --git a/XEngine_Source/XEngine_ServiceApp/XEngine_HttpApp/XEngine_HttpApp.vcxproj.filters b/XEngine_Source/XEngine_ServiceApp/XEngine_HttpApp/XEngine_HttpApp.vcxproj.filters index 57ae733f278fa55907b759778ef19ce1b904e215..8d35df7b476a582c15b1eb6da1b98bf2f6483a90 100644 --- a/XEngine_Source/XEngine_ServiceApp/XEngine_HttpApp/XEngine_HttpApp.vcxproj.filters +++ b/XEngine_Source/XEngine_ServiceApp/XEngine_HttpApp/XEngine_HttpApp.vcxproj.filters @@ -9,16 +9,22 @@ {67DA6AB6-F800-4c08-8B7A-83BB121AAD01} rc;ico;cur;bmp;dlg;rc2;rct;bin;rgs;gif;jpg;jpeg;jpe;resx;tiff;tif;png;wav;mfcribbon-ms - - {9bf2e74a-551b-4d8d-ad34-ccd13e64e985} - {4FC737F1-C7A5-4376-A066-2A32D752A2FF} cpp;c;cc;cxx;c++;cppm;ixx;def;odl;idl;hpj;bat;asm;asmx - + + {9bf2e74a-551b-4d8d-ad34-ccd13e64e985} + + {a205153f-6995-49dc-ae5f-cd2bc0d31549} + + {3d1f325b-4812-45f1-b04b-0056a7b2ce72} + + + {a904cf8f-7387-403f-8686-0f5c35c6b72c} + @@ -33,41 +39,44 @@ 源文件 - - 源文件\XEngine_HTTPTask + + 源文件 + + + 源文件\XEngine_TaskPost - - 源文件\XEngine_HTTPTask + + 源文件\XEngine_TaskPost - - 源文件\XEngine_HTTPTask + + 源文件\XEngine_TaskPost - - 源文件\XEngine_HTTPTask + + 源文件\XEngine_TaskPost - - 源文件 + + 源文件\XEngine_TaskPost - - 源文件\XEngine_HTTPTask + + 源文件\XEngine_TaskGet - - 源文件\XEngine_HTTPTask + + 源文件\XEngine_TaskGet - - 源文件\XEngine_HTTPTask + + 源文件\XEngine_TaskGet - - 源文件\XEngine_HTTPTask + + 源文件\XEngine_TaskGet - - 源文件\XEngine_HTTPTask + + 源文件\XEngine_TaskGet - - 源文件\XEngine_HTTPTask + + 源文件\XEngine_TaskPost - - 源文件\XEngine_HTTPTask + + 源文件\XEngine_TaskPost @@ -83,41 +92,44 @@ 头文件 - - 头文件\XEngine_HTTPTask + + 头文件 + + + 头文件\XEngine_TaskPost - - 头文件\XEngine_HTTPTask + + 头文件\XEngine_TaskPost - - 头文件\XEngine_HTTPTask + + 头文件\XEngine_TaskPost - - 头文件\XEngine_HTTPTask + + 头文件\XEngine_TaskPost - - 头文件 + + 头文件\XEngine_TaskPost - - 头文件\XEngine_HTTPTask + + 头文件\XEngine_TaskGet - - 头文件\XEngine_HTTPTask + + 头文件\XEngine_TaskGet - - 头文件\XEngine_HTTPTask + + 头文件\XEngine_TaskGet - - 头文件\XEngine_HTTPTask + + 头文件\XEngine_TaskGet - - 头文件\XEngine_HTTPTask + + 头文件\XEngine_TaskGet - - 头文件\XEngine_HTTPTask + + 头文件\XEngine_TaskPost - - 头文件\XEngine_HTTPTask + + 头文件\XEngine_TaskPost \ No newline at end of file diff --git a/XEngine_Source/XEngine_ServiceApp/XEngine_HttpApp/XEngine_Network.cpp b/XEngine_Source/XEngine_ServiceApp/XEngine_HttpApp/XEngine_Network.cpp index 6020282263080bae06cedf4bfdf99fac1ba8f3ae..eecee3c753a347f1bf995c04c1c54c9067414f96 100644 --- a/XEngine_Source/XEngine_ServiceApp/XEngine_HttpApp/XEngine_Network.cpp +++ b/XEngine_Source/XEngine_ServiceApp/XEngine_HttpApp/XEngine_Network.cpp @@ -11,33 +11,33 @@ // History: *********************************************************************/ //////////////////////////////////////////////////////////////////////////下面是HTTP网络IO相关代码处理函数 -BOOL CALLBACK Network_Callback_HTTPLogin(LPCTSTR lpszClientAddr, SOCKET hSocket, LPVOID lParam) +bool CALLBACK Network_Callback_HTTPLogin(LPCXSTR lpszClientAddr, XSOCKET hSocket, XPVOID lParam) { SocketOpt_HeartBeat_InsertAddrEx(xhHTTPHeart, lpszClientAddr); - RfcComponents_HttpServer_CreateClientEx(xhHTTPPacket, lpszClientAddr, 0); - XLOG_PRINT(xhLog, XENGINE_HELPCOMPONENTS_XLOG_IN_LOGLEVEL_INFO, _T("HTTP客户端:%s,连接到服务器"), lpszClientAddr); - return TRUE; + HttpProtocol_Server_CreateClientEx(xhHTTPPacket, lpszClientAddr, 0); + XLOG_PRINT(xhLog, XENGINE_HELPCOMPONENTS_XLOG_IN_LOGLEVEL_INFO, _X("HTTP客户端:%s,连接到服务器"), lpszClientAddr); + return true; } -void CALLBACK Network_Callback_HTTPRecv(LPCTSTR lpszClientAddr, SOCKET hSocket, LPCTSTR lpszRecvMsg, int nMsgLen, LPVOID lParam) +void CALLBACK Network_Callback_HTTPRecv(LPCXSTR lpszClientAddr, XSOCKET hSocket, LPCXSTR lpszRecvMsg, int nMsgLen, XPVOID lParam) { - if (!RfcComponents_HttpServer_InserQueueEx(xhHTTPPacket, lpszClientAddr, lpszRecvMsg, nMsgLen)) + if (!HttpProtocol_Server_InserQueueEx(xhHTTPPacket, lpszClientAddr, lpszRecvMsg, nMsgLen)) { - XLOG_PRINT(xhLog, XENGINE_HELPCOMPONENTS_XLOG_IN_LOGLEVEL_ERROR, _T("HTTP客户端:%s,投递HTTP数据包到消息队列失败,错误:%lX"), lpszClientAddr, HttpServer_GetLastError()); + XLOG_PRINT(xhLog, XENGINE_HELPCOMPONENTS_XLOG_IN_LOGLEVEL_ERROR, _X("HTTP客户端:%s,投递HTTP数据包到消息队列失败,错误:%lX"), lpszClientAddr, HttpProtocol_GetLastError()); return; } SocketOpt_HeartBeat_ActiveAddrEx(xhHTTPHeart, lpszClientAddr); - XLOG_PRINT(xhLog, XENGINE_HELPCOMPONENTS_XLOG_IN_LOGLEVEL_DEBUG, _T("HTTP客户端:%s,投递数据包到组包队列成功,大小:%d"), lpszClientAddr, nMsgLen); + XLOG_PRINT(xhLog, XENGINE_HELPCOMPONENTS_XLOG_IN_LOGLEVEL_DEBUG, _X("HTTP客户端:%s,投递数据包到组包队列成功,大小:%d"), lpszClientAddr, nMsgLen); } -void CALLBACK Network_Callback_HTTPLeave(LPCTSTR lpszClientAddr, SOCKET hSocket, LPVOID lParam) +void CALLBACK Network_Callback_HTTPLeave(LPCXSTR lpszClientAddr, XSOCKET hSocket, XPVOID lParam) { - XEngine_Network_Close(lpszClientAddr, FALSE); + XEngine_Network_Close(lpszClientAddr, false); } -void CALLBACK Network_Callback_HTTPHeart(LPCTSTR lpszClientAddr, SOCKET hSocket, int nStatus, LPVOID lParam) +void CALLBACK Network_Callback_HTTPHeart(LPCXSTR lpszClientAddr, XSOCKET hSocket, int nStatus, XPVOID lParam) { - XEngine_Network_Close(lpszClientAddr, TRUE); + XEngine_Network_Close(lpszClientAddr, true); } //////////////////////////////////////////////////////////////////////////网络IO关闭操作 -void XEngine_Network_Close(LPCTSTR lpszClientAddr, BOOL bHeart) +void XEngine_Network_Close(LPCXSTR lpszClientAddr, bool bHeart) { if (bHeart) { @@ -47,19 +47,19 @@ void XEngine_Network_Close(LPCTSTR lpszClientAddr, BOOL bHeart) { SocketOpt_HeartBeat_DeleteAddrEx(xhHTTPHeart, lpszClientAddr); } - RfcComponents_HttpServer_CloseClinetEx(xhHTTPPacket, lpszClientAddr); - XLOG_PRINT(xhLog, XENGINE_HELPCOMPONENTS_XLOG_IN_LOGLEVEL_INFO, _T("HTTP客户端:%s,离开服务器"), lpszClientAddr); + HttpProtocol_Server_CloseClinetEx(xhHTTPPacket, lpszClientAddr); + XLOG_PRINT(xhLog, XENGINE_HELPCOMPONENTS_XLOG_IN_LOGLEVEL_INFO, _X("HTTP客户端:%s,离开服务器"), lpszClientAddr); } ////////////////////////////////////////////////////////////////////////// -BOOL XEngine_Network_Send(LPCTSTR lpszClientAddr, LPCTSTR lpszMsgBuffer, int nMsgLen) +bool XEngine_Network_Send(LPCXSTR lpszClientAddr, LPCXSTR lpszMsgBuffer, int nMsgLen) { //发送数据给指定客户端 if (!NetCore_TCPXCore_SendEx(xhHTTPSocket, lpszClientAddr, lpszMsgBuffer, nMsgLen)) { - XLOG_PRINT(xhLog, XENGINE_HELPCOMPONENTS_XLOG_IN_LOGLEVEL_ERROR, _T("HTTP客户端:%s,发送数据失败,错误:%lX"), lpszClientAddr, NetCore_GetLastError()); - return FALSE; + XLOG_PRINT(xhLog, XENGINE_HELPCOMPONENTS_XLOG_IN_LOGLEVEL_ERROR, _X("HTTP客户端:%s,发送数据失败,错误:%lX"), lpszClientAddr, NetCore_GetLastError()); + return false; } //发送成功激活一次心跳 SocketOpt_HeartBeat_ActiveAddrEx(xhHTTPHeart, lpszClientAddr); - return TRUE; + return true; } \ No newline at end of file diff --git a/XEngine_Source/XEngine_ServiceApp/XEngine_HttpApp/XEngine_Network.h b/XEngine_Source/XEngine_ServiceApp/XEngine_HttpApp/XEngine_Network.h index ca18087a8fece2ca043b63cd1f652765ad7e4b35..79416c78bc491343e48a3aa9990bbfcb8956af9e 100644 --- a/XEngine_Source/XEngine_ServiceApp/XEngine_HttpApp/XEngine_Network.h +++ b/XEngine_Source/XEngine_ServiceApp/XEngine_HttpApp/XEngine_Network.h @@ -11,10 +11,10 @@ // History: *********************************************************************/ //HTTP相关 -BOOL CALLBACK Network_Callback_HTTPLogin(LPCTSTR lpszClientAddr, SOCKET hSocket, LPVOID lParam); -void CALLBACK Network_Callback_HTTPRecv(LPCTSTR lpszClientAddr, SOCKET hSocket, LPCTSTR lpszRecvMsg, int nMsgLen, LPVOID lParam); -void CALLBACK Network_Callback_HTTPLeave(LPCTSTR lpszClientAddr, SOCKET hSocket, LPVOID lParam); -void CALLBACK Network_Callback_HTTPHeart(LPCTSTR lpszClientAddr, SOCKET hSocket, int nStatus, LPVOID lParam); +bool CALLBACK Network_Callback_HTTPLogin(LPCXSTR lpszClientAddr, XSOCKET hSocket, XPVOID lParam); +void CALLBACK Network_Callback_HTTPRecv(LPCXSTR lpszClientAddr, XSOCKET hSocket, LPCXSTR lpszRecvMsg, int nMsgLen, XPVOID lParam); +void CALLBACK Network_Callback_HTTPLeave(LPCXSTR lpszClientAddr, XSOCKET hSocket, XPVOID lParam); +void CALLBACK Network_Callback_HTTPHeart(LPCXSTR lpszClientAddr, XSOCKET hSocket, int nStatus, XPVOID lParam); //关闭与发送 -void XEngine_Network_Close(LPCTSTR lpszClientAddr, BOOL bHeart); -BOOL XEngine_Network_Send(LPCTSTR lpszClientAddr, LPCTSTR lpszMsgBuffer, int nMsgLen); \ No newline at end of file +void XEngine_Network_Close(LPCXSTR lpszClientAddr, bool bHeart); +bool XEngine_Network_Send(LPCXSTR lpszClientAddr, LPCXSTR lpszMsgBuffer, int nMsgLen); \ No newline at end of file diff --git a/XEngine_Source/XEngine_ServiceApp/XEngine_HttpApp/XEngine_PluginTask.cpp b/XEngine_Source/XEngine_ServiceApp/XEngine_HttpApp/XEngine_PluginTask.cpp index 9e770d7b2cccdd5b74a32a3f601027619bcbe453..d1eac69115b2e316e798bd9c4096a27400b4ebc2 100644 --- a/XEngine_Source/XEngine_ServiceApp/XEngine_HttpApp/XEngine_PluginTask.cpp +++ b/XEngine_Source/XEngine_ServiceApp/XEngine_HttpApp/XEngine_PluginTask.cpp @@ -10,33 +10,33 @@ // Purpose: HTTP任务处理代码 // History: *********************************************************************/ -BOOL XEngine_PluginTask_Handle(LPCTSTR lpszMethodName, LPCTSTR lpszClientAddr, LPCTSTR lpszRVBuffer, int nRVLen, TCHAR*** ppptszList, int nListCount, int nPluginType) +bool XEngine_PluginTask_Handle(LPCXSTR lpszMethodName, LPCXSTR lpszClientAddr, LPCXSTR lpszRVBuffer, int nRVLen, XCHAR*** ppptszList, int nListCount, int nPluginType) { int nMsgLen = 0; int nPktLen = 0; - TCHAR tszMsgBuffer[2048]; - TCHAR tszPktBuffer[2048]; + XCHAR tszMsgBuffer[2048]; + XCHAR tszPktBuffer[2048]; RFCCOMPONENTS_HTTP_HDRPARAM st_HDRParament; memset(tszMsgBuffer, '\0', sizeof(tszMsgBuffer)); memset(tszPktBuffer, '\0', sizeof(tszPktBuffer)); memset(&st_HDRParament, '\0', sizeof(RFCCOMPONENTS_HTTP_HDRPARAM)); - st_HDRParament.bIsClose = TRUE; + st_HDRParament.bIsClose = true; st_HDRParament.nHttpCode = 200; - _tcscpy(st_HDRParament.tszMimeType, "json"); + _tcsxcpy(st_HDRParament.tszMimeType, "json"); if (ModulePlugin_Loader_Exec(lpszMethodName, ppptszList, nListCount, &st_HDRParament.nHttpCode, tszPktBuffer, &nPktLen)) { - RfcComponents_HttpServer_SendMsgEx(xhHTTPPacket, tszMsgBuffer, &nMsgLen, &st_HDRParament, tszPktBuffer, nPktLen); - XLOG_PRINT(xhLog, XENGINE_HELPCOMPONENTS_XLOG_IN_LOGLEVEL_INFO, _T("HTTP客户端:%s,请求的方法:%s,由%s插件模块处理成功"), lpszClientAddr, lpszMethodName, 0 == nPluginType ? "Lib" : "Lua"); + HttpProtocol_Server_SendMsgEx(xhHTTPPacket, tszMsgBuffer, &nMsgLen, &st_HDRParament, tszPktBuffer, nPktLen); + XLOG_PRINT(xhLog, XENGINE_HELPCOMPONENTS_XLOG_IN_LOGLEVEL_INFO, _X("HTTP客户端:%s,请求的方法:%s,由%s插件模块处理成功"), lpszClientAddr, lpszMethodName, 0 == nPluginType ? "Lib" : "Lua"); } else { st_HDRParament.nHttpCode = 400; - RfcComponents_HttpServer_SendMsgEx(xhHTTPPacket, tszMsgBuffer, &nMsgLen, &st_HDRParament); - XLOG_PRINT(xhLog, XENGINE_HELPCOMPONENTS_XLOG_IN_LOGLEVEL_INFO, _T("HTTP客户端:%s,请求的方法:%s,由%s插件模块处理失败,错误:%lX"), lpszClientAddr, lpszMethodName, 0 == nPluginType ? "Lib" : "Lua", ModulePlugin_GetLastError()); + HttpProtocol_Server_SendMsgEx(xhHTTPPacket, tszMsgBuffer, &nMsgLen, &st_HDRParament); + XLOG_PRINT(xhLog, XENGINE_HELPCOMPONENTS_XLOG_IN_LOGLEVEL_INFO, _X("HTTP客户端:%s,请求的方法:%s,由%s插件模块处理失败,错误:%lX"), lpszClientAddr, lpszMethodName, 0 == nPluginType ? "Lib" : "Lua", ModulePlugin_GetLastError()); } XEngine_Network_Send(lpszClientAddr, tszMsgBuffer, nMsgLen); - return TRUE; + return true; } \ No newline at end of file diff --git a/XEngine_Source/XEngine_ServiceApp/XEngine_HttpApp/XEngine_PluginTask.h b/XEngine_Source/XEngine_ServiceApp/XEngine_HttpApp/XEngine_PluginTask.h index d7c4cfd3900f6591fe3469db3f4375ae12402265..febad9c851006dd535752fee12ecf4bc57c114f3 100644 --- a/XEngine_Source/XEngine_ServiceApp/XEngine_HttpApp/XEngine_PluginTask.h +++ b/XEngine_Source/XEngine_ServiceApp/XEngine_HttpApp/XEngine_PluginTask.h @@ -11,4 +11,4 @@ // History: *********************************************************************/ //插件处理函数 -BOOL XEngine_PluginTask_Handle(LPCTSTR lpszMethodName, LPCTSTR lpszClientAddr, LPCTSTR lpszRVBuffer, int nRVLen, TCHAR*** ppptszList, int nListCount, int nPluginType); \ No newline at end of file +bool XEngine_PluginTask_Handle(LPCXSTR lpszMethodName, LPCXSTR lpszClientAddr, LPCXSTR lpszRVBuffer, int nRVLen, XCHAR*** ppptszList, int nListCount, int nPluginType); \ No newline at end of file diff --git a/XEngine_Source/XEngine_ServiceApp/XEngine_HttpApp/XEngine_HTTPTask/HTTPTask_Bank.cpp b/XEngine_Source/XEngine_ServiceApp/XEngine_HttpApp/XEngine_TaskGet/TaskGet_Bank.cpp similarity index 59% rename from XEngine_Source/XEngine_ServiceApp/XEngine_HttpApp/XEngine_HTTPTask/HTTPTask_Bank.cpp rename to XEngine_Source/XEngine_ServiceApp/XEngine_HttpApp/XEngine_TaskGet/TaskGet_Bank.cpp index ca389b3d6e9e3e8aafe9ee8d090b7252ece79f22..b8b7a087cde857b766e4ebbf576212f8225efe99 100644 --- a/XEngine_Source/XEngine_ServiceApp/XEngine_HttpApp/XEngine_HTTPTask/HTTPTask_Bank.cpp +++ b/XEngine_Source/XEngine_ServiceApp/XEngine_HttpApp/XEngine_TaskGet/TaskGet_Bank.cpp @@ -1,15 +1,15 @@ #include "../XEngine_Hdr.h" -BOOL XEngine_HTTPTask_BankInfo(LPCTSTR lpszClientAddr, LPCTSTR lpszBankNumber) +bool HTTPTask_TaskGet_BankInfo(LPCXSTR lpszClientAddr, LPCXSTR lpszBankNumber) { int nMsgLen = 4096; int nPktLen = 4096; int nBLen = 0; - TCHAR* ptszBodyBuffer; - TCHAR tszMsgBuffer[4096]; - TCHAR tszPktBuffer[4096]; - TCHAR tszUrlBuffer[MAX_PATH]; + XCHAR* ptszBodyBuffer; + XCHAR tszMsgBuffer[4096]; + XCHAR tszPktBuffer[4096]; + XCHAR tszUrlBuffer[MAX_PATH]; XENGINE_BANKINFO st_BankInfo; RFCCOMPONENTS_HTTP_HDRPARAM st_HDRParam; //发送给客户端的参数 @@ -20,35 +20,35 @@ BOOL XEngine_HTTPTask_BankInfo(LPCTSTR lpszClientAddr, LPCTSTR lpszBankNumber) memset(&st_HDRParam, '\0', sizeof(RFCCOMPONENTS_HTTP_HDRPARAM)); st_HDRParam.nHttpCode = 200; //HTTP CODE码 - st_HDRParam.bIsClose = TRUE; //收到回复后就关闭 + st_HDRParam.bIsClose = true; //收到回复后就关闭 - _tcscpy(st_BankInfo.tszBankNumber, lpszBankNumber); - _stprintf(tszUrlBuffer, st_ServiceConfig.st_XApi.tszBankUrl, lpszBankNumber); - APIClient_Http_Request(_T("GET"), tszUrlBuffer, NULL, NULL, &ptszBodyBuffer, &nBLen); + _tcsxcpy(st_BankInfo.tszBankNumber, lpszBankNumber); + _xstprintf(tszUrlBuffer, st_ServiceConfig.st_XApi.tszBankUrl, lpszBankNumber); + APIClient_Http_Request(_X("GET"), tszUrlBuffer, NULL, NULL, &ptszBodyBuffer, &nBLen); //解析JSON信息 if (!ModuleProtocol_Parse_Bank(ptszBodyBuffer, nBLen, &st_BankInfo)) { - ModuleProtocol_Packet_BankQuery(tszPktBuffer, &nPktLen, NULL, 1001, _T("banknumber is corrent")); + ModuleProtocol_Packet_BankQuery(tszPktBuffer, &nPktLen, NULL, 1001, _X("banknumber is corrent")); BaseLib_OperatorMemory_FreeCStyle((XPPMEM)&ptszBodyBuffer); - RfcComponents_HttpServer_SendMsgEx(xhHTTPPacket, tszMsgBuffer, &nMsgLen, &st_HDRParam, tszPktBuffer, nPktLen); + HttpProtocol_Server_SendMsgEx(xhHTTPPacket, tszMsgBuffer, &nMsgLen, &st_HDRParam, tszPktBuffer, nPktLen); XEngine_Network_Send(lpszClientAddr, tszMsgBuffer, nMsgLen); - XLOG_PRINT(xhLog, XENGINE_HELPCOMPONENTS_XLOG_IN_LOGLEVEL_INFO, _T("HTTP客户端:%s,请求的银行卡号码错误:%s"), lpszClientAddr, lpszBankNumber); - return FALSE; + XLOG_PRINT(xhLog, XENGINE_HELPCOMPONENTS_XLOG_IN_LOGLEVEL_INFO, _X("HTTP客户端:%s,请求的银行卡号码错误:%s"), lpszClientAddr, lpszBankNumber); + return false; } BaseLib_OperatorMemory_FreeCStyle((XPPMEM)&ptszBodyBuffer); //查询对应名称 if (!ModuleDatabase_Bank_Query(&st_BankInfo)) { - ModuleProtocol_Packet_BankQuery(tszPktBuffer, &nPktLen, NULL, 1010, _T("not found")); - RfcComponents_HttpServer_SendMsgEx(xhHTTPPacket, tszMsgBuffer, &nMsgLen, &st_HDRParam, tszPktBuffer, nPktLen); + ModuleProtocol_Packet_BankQuery(tszPktBuffer, &nPktLen, NULL, 1010, _X("not found")); + HttpProtocol_Server_SendMsgEx(xhHTTPPacket, tszMsgBuffer, &nMsgLen, &st_HDRParam, tszPktBuffer, nPktLen); XEngine_Network_Send(lpszClientAddr, tszMsgBuffer, nMsgLen); - XLOG_PRINT(xhLog, XENGINE_HELPCOMPONENTS_XLOG_IN_LOGLEVEL_INFO, _T("HTTP客户端:%s,请求的银行卡信息没有找到:%s"), lpszClientAddr, lpszBankNumber); - return FALSE; + XLOG_PRINT(xhLog, XENGINE_HELPCOMPONENTS_XLOG_IN_LOGLEVEL_INFO, _X("HTTP客户端:%s,请求的银行卡信息没有找到:%s"), lpszClientAddr, lpszBankNumber); + return false; } //打包发送 ModuleProtocol_Packet_BankQuery(tszPktBuffer, &nPktLen, &st_BankInfo); - RfcComponents_HttpServer_SendMsgEx(xhHTTPPacket, tszMsgBuffer, &nMsgLen, &st_HDRParam, tszPktBuffer, nPktLen); + HttpProtocol_Server_SendMsgEx(xhHTTPPacket, tszMsgBuffer, &nMsgLen, &st_HDRParam, tszPktBuffer, nPktLen); XEngine_Network_Send(lpszClientAddr, tszMsgBuffer, nMsgLen); - XLOG_PRINT(xhLog, XENGINE_HELPCOMPONENTS_XLOG_IN_LOGLEVEL_INFO, _T("HTTP客户端:%s,发送银行卡信息获取请求给服务器,查询号码:%s"), lpszClientAddr, lpszBankNumber); - return TRUE; + XLOG_PRINT(xhLog, XENGINE_HELPCOMPONENTS_XLOG_IN_LOGLEVEL_INFO, _X("HTTP客户端:%s,发送银行卡信息获取请求给服务器,查询号码:%s"), lpszClientAddr, lpszBankNumber); + return true; } \ No newline at end of file diff --git a/XEngine_Source/XEngine_ServiceApp/XEngine_HttpApp/XEngine_HTTPTask/HTTPTask_Bank.h b/XEngine_Source/XEngine_ServiceApp/XEngine_HttpApp/XEngine_TaskGet/TaskGet_Bank.h similarity index 33% rename from XEngine_Source/XEngine_ServiceApp/XEngine_HttpApp/XEngine_HTTPTask/HTTPTask_Bank.h rename to XEngine_Source/XEngine_ServiceApp/XEngine_HttpApp/XEngine_TaskGet/TaskGet_Bank.h index 994afd97b115939219a0f2b2474fd3b0b4f9b8e1..32a6f51a453489b5d35c957eec6e929997a27020 100644 --- a/XEngine_Source/XEngine_ServiceApp/XEngine_HttpApp/XEngine_HTTPTask/HTTPTask_Bank.h +++ b/XEngine_Source/XEngine_ServiceApp/XEngine_HttpApp/XEngine_TaskGet/TaskGet_Bank.h @@ -1,3 +1,3 @@ #pragma once -BOOL XEngine_HTTPTask_BankInfo(LPCTSTR lpszClientAddr, LPCTSTR lpszBankNumber); \ No newline at end of file +bool HTTPTask_TaskGet_BankInfo(LPCXSTR lpszClientAddr, LPCXSTR lpszBankNumber); \ No newline at end of file diff --git a/XEngine_Source/XEngine_ServiceApp/XEngine_HttpApp/XEngine_HTTPTask/HTTPTask_IDCard.cpp b/XEngine_Source/XEngine_ServiceApp/XEngine_HttpApp/XEngine_TaskGet/TaskGet_IDCard.cpp similarity index 62% rename from XEngine_Source/XEngine_ServiceApp/XEngine_HttpApp/XEngine_HTTPTask/HTTPTask_IDCard.cpp rename to XEngine_Source/XEngine_ServiceApp/XEngine_HttpApp/XEngine_TaskGet/TaskGet_IDCard.cpp index 7687f6411b3ee702c1836116c6f28056ba5560f4..e0eadadb88a15217ef3ba2aa1ddf9a02564708c6 100644 --- a/XEngine_Source/XEngine_ServiceApp/XEngine_HttpApp/XEngine_HTTPTask/HTTPTask_IDCard.cpp +++ b/XEngine_Source/XEngine_ServiceApp/XEngine_HttpApp/XEngine_TaskGet/TaskGet_IDCard.cpp @@ -1,11 +1,11 @@ #include "../XEngine_Hdr.h" -BOOL XEngine_HTTPTask_IDCard(LPCTSTR lpszClientAddr, LPCTSTR lpszMsgBuffer) +bool HTTPTask_TaskGet_IDCard(LPCXSTR lpszClientAddr, LPCXSTR lpszMsgBuffer) { int nMsgLen = 4096; int nPktLen = 4096; - TCHAR tszMsgBuffer[4096]; - TCHAR tszPktBuffer[4096]; + XCHAR tszMsgBuffer[4096]; + XCHAR tszPktBuffer[4096]; XENGINE_IDREGION st_IDRegion; XENGINE_IDCARDINFO st_IDCardInfo; RFCCOMPONENTS_HTTP_HDRPARAM st_HDRParam; //发送给客户端的参数 @@ -17,37 +17,37 @@ BOOL XEngine_HTTPTask_IDCard(LPCTSTR lpszClientAddr, LPCTSTR lpszMsgBuffer) memset(&st_HDRParam, '\0', sizeof(RFCCOMPONENTS_HTTP_HDRPARAM)); st_HDRParam.nHttpCode = 200; //HTTP CODE码 - st_HDRParam.bIsClose = TRUE; //收到回复后就关闭 + st_HDRParam.bIsClose = true; //收到回复后就关闭 if (!ModuleProtocol_Parse_IDCard(lpszMsgBuffer, &st_IDCardInfo)) { - ModuleProtocol_Packet_IDQuery(tszPktBuffer, &nPktLen, NULL, NULL, 1001, _T("idnumber is incorrent")); - RfcComponents_HttpServer_SendMsgEx(xhHTTPPacket, tszMsgBuffer, &nMsgLen, &st_HDRParam, tszPktBuffer, nPktLen); + ModuleProtocol_Packet_IDQuery(tszPktBuffer, &nPktLen, NULL, NULL, 1001, _X("idnumber is incorrent")); + HttpProtocol_Server_SendMsgEx(xhHTTPPacket, tszMsgBuffer, &nMsgLen, &st_HDRParam, tszPktBuffer, nPktLen); XEngine_Network_Send(lpszClientAddr, tszMsgBuffer, nMsgLen); - XLOG_PRINT(xhLog, XENGINE_HELPCOMPONENTS_XLOG_IN_LOGLEVEL_INFO, _T("HTTP客户端:%s,请求的身份证编号不正确:%s"), lpszClientAddr, lpszMsgBuffer); - return FALSE; + XLOG_PRINT(xhLog, XENGINE_HELPCOMPONENTS_XLOG_IN_LOGLEVEL_INFO, _X("HTTP客户端:%s,请求的身份证编号不正确:%s"), lpszClientAddr, lpszMsgBuffer); + return false; } //验证身份证是否正确 if (!ModuleHelp_IDCard_CheckBirth(&st_IDCardInfo)) { - ModuleProtocol_Packet_IDQuery(tszPktBuffer, &nPktLen, NULL, NULL, 1002, _T("idnumber is incorrent")); - RfcComponents_HttpServer_SendMsgEx(xhHTTPPacket, tszMsgBuffer, &nMsgLen, &st_HDRParam, tszPktBuffer, nPktLen); + ModuleProtocol_Packet_IDQuery(tszPktBuffer, &nPktLen, NULL, NULL, 1002, _X("idnumber is incorrent")); + HttpProtocol_Server_SendMsgEx(xhHTTPPacket, tszMsgBuffer, &nMsgLen, &st_HDRParam, tszPktBuffer, nPktLen); XEngine_Network_Send(lpszClientAddr, tszMsgBuffer, nMsgLen); - XLOG_PRINT(xhLog, XENGINE_HELPCOMPONENTS_XLOG_IN_LOGLEVEL_INFO, _T("HTTP客户端:%s,请求的身份证验证生日失败:%s"), lpszClientAddr, lpszMsgBuffer); - return FALSE; + XLOG_PRINT(xhLog, XENGINE_HELPCOMPONENTS_XLOG_IN_LOGLEVEL_INFO, _X("HTTP客户端:%s,请求的身份证验证生日失败:%s"), lpszClientAddr, lpszMsgBuffer); + return false; } if (!ModuleHelp_IDCard_CheckSum(&st_IDCardInfo)) { - ModuleProtocol_Packet_IDQuery(tszPktBuffer, &nPktLen, NULL, NULL, 1010, _T("not found")); - RfcComponents_HttpServer_SendMsgEx(xhHTTPPacket, tszMsgBuffer, &nMsgLen, &st_HDRParam, tszPktBuffer, nPktLen); + ModuleProtocol_Packet_IDQuery(tszPktBuffer, &nPktLen, NULL, NULL, 1010, _X("not found")); + HttpProtocol_Server_SendMsgEx(xhHTTPPacket, tszMsgBuffer, &nMsgLen, &st_HDRParam, tszPktBuffer, nPktLen); XEngine_Network_Send(lpszClientAddr, tszMsgBuffer, nMsgLen); - XLOG_PRINT(xhLog, XENGINE_HELPCOMPONENTS_XLOG_IN_LOGLEVEL_INFO, _T("HTTP客户端:%s,请求的身份证验证校验码失败:%s"), lpszClientAddr, lpszMsgBuffer); - return FALSE; + XLOG_PRINT(xhLog, XENGINE_HELPCOMPONENTS_XLOG_IN_LOGLEVEL_INFO, _X("HTTP客户端:%s,请求的身份证验证校验码失败:%s"), lpszClientAddr, lpszMsgBuffer); + return false; } ModuleDatabase_IDCard_QueryRegion(&st_IDRegion, &st_IDCardInfo); ModuleProtocol_Packet_IDQuery(tszPktBuffer, &nPktLen, &st_IDCardInfo, &st_IDRegion); - RfcComponents_HttpServer_SendMsgEx(xhHTTPPacket, tszMsgBuffer, &nMsgLen, &st_HDRParam, tszPktBuffer, nPktLen); + HttpProtocol_Server_SendMsgEx(xhHTTPPacket, tszMsgBuffer, &nMsgLen, &st_HDRParam, tszPktBuffer, nPktLen); XEngine_Network_Send(lpszClientAddr, tszMsgBuffer, nMsgLen); - XLOG_PRINT(xhLog, XENGINE_HELPCOMPONENTS_XLOG_IN_LOGLEVEL_INFO, _T("HTTP客户端:%s,请求身份证号码验证与信息查询成功,号码:%s"), lpszClientAddr, lpszMsgBuffer); - return TRUE; + XLOG_PRINT(xhLog, XENGINE_HELPCOMPONENTS_XLOG_IN_LOGLEVEL_INFO, _X("HTTP客户端:%s,请求身份证号码验证与信息查询成功,号码:%s"), lpszClientAddr, lpszMsgBuffer); + return true; } \ No newline at end of file diff --git a/XEngine_Source/XEngine_ServiceApp/XEngine_HttpApp/XEngine_HTTPTask/HTTPTask_IDCard.h b/XEngine_Source/XEngine_ServiceApp/XEngine_HttpApp/XEngine_TaskGet/TaskGet_IDCard.h similarity index 31% rename from XEngine_Source/XEngine_ServiceApp/XEngine_HttpApp/XEngine_HTTPTask/HTTPTask_IDCard.h rename to XEngine_Source/XEngine_ServiceApp/XEngine_HttpApp/XEngine_TaskGet/TaskGet_IDCard.h index 51f9ee3a490cd6a53e4e461d5628131afb1d8f6c..09a5607b7c09142d84f65d6a713914db1ec7f0ec 100644 --- a/XEngine_Source/XEngine_ServiceApp/XEngine_HttpApp/XEngine_HTTPTask/HTTPTask_IDCard.h +++ b/XEngine_Source/XEngine_ServiceApp/XEngine_HttpApp/XEngine_TaskGet/TaskGet_IDCard.h @@ -1,3 +1,3 @@ #pragma once -BOOL XEngine_HTTPTask_IDCard(LPCTSTR lpszClientAddr, LPCTSTR lpszMsgBuffer); \ No newline at end of file +bool HTTPTask_TaskGet_IDCard(LPCXSTR lpszClientAddr, LPCXSTR lpszMsgBuffer); \ No newline at end of file diff --git a/XEngine_Source/XEngine_ServiceApp/XEngine_HttpApp/XEngine_HTTPTask/HTTPTask_Language.cpp b/XEngine_Source/XEngine_ServiceApp/XEngine_HttpApp/XEngine_TaskGet/TaskGet_Language.cpp similarity index 88% rename from XEngine_Source/XEngine_ServiceApp/XEngine_HttpApp/XEngine_HTTPTask/HTTPTask_Language.cpp rename to XEngine_Source/XEngine_ServiceApp/XEngine_HttpApp/XEngine_TaskGet/TaskGet_Language.cpp index e0211030c0fef70a39081347725530b46132cfc3..ff679881a644ea7ffb75aebef8cfd894c00180cd 100644 --- a/XEngine_Source/XEngine_ServiceApp/XEngine_HttpApp/XEngine_HTTPTask/HTTPTask_Language.cpp +++ b/XEngine_Source/XEngine_ServiceApp/XEngine_HttpApp/XEngine_TaskGet/TaskGet_Language.cpp @@ -1,12 +1,12 @@ #include "../XEngine_Hdr.h" -BOOL XEngine_HTTPTask_Language(LPCTSTR lpszClientAddr, LPCTSTR lpszMsgBuffer, int nConvertType) +bool HTTPTask_TaskGet_Language(LPCXSTR lpszClientAddr, LPCXSTR lpszMsgBuffer, int nConvertType) { int nMsgLen = 4096; int nPktLen = 4096; - TCHAR tszMsgBuffer[4096]; - TCHAR tszPktBuffer[4096]; + XCHAR tszMsgBuffer[4096]; + XCHAR tszPktBuffer[4096]; XENGINE_LANGUAGEINFO st_LanguageInfo; RFCCOMPONENTS_HTTP_HDRPARAM st_HDRParam; //发送给客户端的参数 @@ -16,10 +16,10 @@ BOOL XEngine_HTTPTask_Language(LPCTSTR lpszClientAddr, LPCTSTR lpszMsgBuffer, in memset(&st_HDRParam, '\0', sizeof(RFCCOMPONENTS_HTTP_HDRPARAM)); st_HDRParam.nHttpCode = 200; //HTTP CODE码 - st_HDRParam.bIsClose = TRUE; //收到回复后就关闭 + st_HDRParam.bIsClose = true; //收到回复后就关闭 st_LanguageInfo.enType = nConvertType; - OPenSsl_Codec_UrlDeCodec(lpszMsgBuffer, _tcslen(lpszMsgBuffer), st_LanguageInfo.tszSourceStr); + OPenSsl_Codec_UrlDeCodec(lpszMsgBuffer, _tcsxlen(lpszMsgBuffer), st_LanguageInfo.tszSourceStr); if (ENUM_XENGINE_APISERVICE_LANGUAGE_TYPE_S2T == nConvertType) { ModuleHelp_Language_ConvertZh(st_OPenccConfig.tszFiles2t, st_LanguageInfo.tszSourceStr, st_LanguageInfo.tszDestStr); @@ -78,8 +78,8 @@ BOOL XEngine_HTTPTask_Language(LPCTSTR lpszClientAddr, LPCTSTR lpszMsgBuffer, in } //打包发送 ModuleProtocol_Packet_LanguageQuery(tszPktBuffer, &nPktLen, &st_LanguageInfo); - RfcComponents_HttpServer_SendMsgEx(xhHTTPPacket, tszMsgBuffer, &nMsgLen, &st_HDRParam, tszPktBuffer, nPktLen); + HttpProtocol_Server_SendMsgEx(xhHTTPPacket, tszMsgBuffer, &nMsgLen, &st_HDRParam, tszPktBuffer, nPktLen); XEngine_Network_Send(lpszClientAddr, tszMsgBuffer, nMsgLen); - XLOG_PRINT(xhLog, XENGINE_HELPCOMPONENTS_XLOG_IN_LOGLEVEL_INFO, _T("HTTP客户端:%s,请求语言转换成功,原始语言:%s,目标语言:%s"), lpszClientAddr, st_LanguageInfo.tszSourceStr, st_LanguageInfo.tszDestStr); - return TRUE; + XLOG_PRINT(xhLog, XENGINE_HELPCOMPONENTS_XLOG_IN_LOGLEVEL_INFO, _X("HTTP客户端:%s,请求语言转换成功,原始语言:%s,目标语言:%s"), lpszClientAddr, st_LanguageInfo.tszSourceStr, st_LanguageInfo.tszDestStr); + return true; } \ No newline at end of file diff --git a/XEngine_Source/XEngine_ServiceApp/XEngine_HttpApp/XEngine_HTTPTask/HTTPTask_Language.h b/XEngine_Source/XEngine_ServiceApp/XEngine_HttpApp/XEngine_TaskGet/TaskGet_Language.h similarity index 43% rename from XEngine_Source/XEngine_ServiceApp/XEngine_HttpApp/XEngine_HTTPTask/HTTPTask_Language.h rename to XEngine_Source/XEngine_ServiceApp/XEngine_HttpApp/XEngine_TaskGet/TaskGet_Language.h index efc91f9e1e099db46d4576f6e907ea940c863593..ce7cdb62cf8775f215f499788e9ae15bcf9ae296 100644 --- a/XEngine_Source/XEngine_ServiceApp/XEngine_HttpApp/XEngine_HTTPTask/HTTPTask_Language.h +++ b/XEngine_Source/XEngine_ServiceApp/XEngine_HttpApp/XEngine_TaskGet/TaskGet_Language.h @@ -1,3 +1,3 @@ #pragma once -BOOL XEngine_HTTPTask_Language(LPCTSTR lpszClientAddr, LPCTSTR lpszMsgBuffer, int nConvertType); \ No newline at end of file +bool HTTPTask_TaskGet_Language(LPCXSTR lpszClientAddr, LPCXSTR lpszMsgBuffer, int nConvertType); \ No newline at end of file diff --git a/XEngine_Source/XEngine_ServiceApp/XEngine_HttpApp/XEngine_HTTPTask/HTTPTask_Locker.cpp b/XEngine_Source/XEngine_ServiceApp/XEngine_HttpApp/XEngine_TaskGet/TaskGet_Locker.cpp similarity index 61% rename from XEngine_Source/XEngine_ServiceApp/XEngine_HttpApp/XEngine_HTTPTask/HTTPTask_Locker.cpp rename to XEngine_Source/XEngine_ServiceApp/XEngine_HttpApp/XEngine_TaskGet/TaskGet_Locker.cpp index b563575dedbe18bad1c38bdfe7bfb6b008cbb7b0..6fe3228845683e683cec27d2bdc315551ea1141c 100644 --- a/XEngine_Source/XEngine_ServiceApp/XEngine_HttpApp/XEngine_HTTPTask/HTTPTask_Locker.cpp +++ b/XEngine_Source/XEngine_ServiceApp/XEngine_HttpApp/XEngine_TaskGet/TaskGet_Locker.cpp @@ -1,11 +1,11 @@ #include "../XEngine_Hdr.h" -BOOL XEngine_HTTPTask_Locker(LPCTSTR lpszClientAddr, __int64x xhToken, ENUM_XENGINE_APISERVICE_LOCKER_TYPE enLockType) +bool HTTPTask_TaskGet_Locker(LPCXSTR lpszClientAddr, __int64x xhToken, ENUM_XENGINE_APISERVICE_LOCKER_TYPE enLockType) { int nSDLen = 4096; int nRVLen = 4096; - TCHAR tszSDBuffer[4096]; - TCHAR tszRVBuffer[4096]; + XCHAR tszSDBuffer[4096]; + XCHAR tszRVBuffer[4096]; RFCCOMPONENTS_HTTP_HDRPARAM st_HDRParam; //发送给客户端的参数 memset(tszSDBuffer, '\0', sizeof(tszSDBuffer)); @@ -13,112 +13,112 @@ BOOL XEngine_HTTPTask_Locker(LPCTSTR lpszClientAddr, __int64x xhToken, ENUM_XENG memset(&st_HDRParam, '\0', sizeof(RFCCOMPONENTS_HTTP_HDRPARAM)); st_HDRParam.nHttpCode = 200; //HTTP CODE码 - st_HDRParam.bIsClose = TRUE; //收到回复后就关闭 + st_HDRParam.bIsClose = true; //收到回复后就关闭 if (ENUM_XENGINE_APISERVICE_LOCKER_TYPE_CREATE == enLockType) { //创建 XNETHANDLE xhToken = 0; ModuleHelp_Locker_Create(&xhToken); ModuleProtocol_Packet_Locker(tszRVBuffer, &nRVLen, xhToken); - RfcComponents_HttpServer_SendMsgEx(xhHTTPPacket, tszSDBuffer, &nSDLen, &st_HDRParam, tszRVBuffer, nRVLen); + HttpProtocol_Server_SendMsgEx(xhHTTPPacket, tszSDBuffer, &nSDLen, &st_HDRParam, tszRVBuffer, nRVLen); XEngine_Network_Send(lpszClientAddr, tszSDBuffer, nSDLen); - XLOG_PRINT(xhLog, XENGINE_HELPCOMPONENTS_XLOG_IN_LOGLEVEL_WARN, _T("客户端:%s,请求创建锁成功,锁句柄:%lld"), lpszClientAddr, xhToken); + XLOG_PRINT(xhLog, XENGINE_HELPCOMPONENTS_XLOG_IN_LOGLEVEL_WARN, _X("客户端:%s,请求创建锁成功,锁句柄:%lld"), lpszClientAddr, xhToken); } else if (ENUM_XENGINE_APISERVICE_LOCKER_TYPE_OPEN == enLockType) { //打开 if (!ModuleHelp_Locker_OPen(xhToken)) { - DWORD dwRet = ModuleHelp_GetLastError(); + XLONG dwRet = ModuleHelp_GetLastError(); ModuleProtocol_Packet_Locker(tszRVBuffer, &nRVLen, xhToken, dwRet, "request is failed"); - RfcComponents_HttpServer_SendMsgEx(xhHTTPPacket, tszSDBuffer, &nSDLen, &st_HDRParam, tszRVBuffer, nRVLen); + HttpProtocol_Server_SendMsgEx(xhHTTPPacket, tszSDBuffer, &nSDLen, &st_HDRParam, tszRVBuffer, nRVLen); XEngine_Network_Send(lpszClientAddr, tszSDBuffer, nSDLen); - XLOG_PRINT(xhLog, XENGINE_HELPCOMPONENTS_XLOG_IN_LOGLEVEL_WARN, _T("客户端:%s,请求打开锁失败,锁句柄:%lld,错误码:%lX"), lpszClientAddr, xhToken, dwRet); - return FALSE; + XLOG_PRINT(xhLog, XENGINE_HELPCOMPONENTS_XLOG_IN_LOGLEVEL_WARN, _X("客户端:%s,请求打开锁失败,锁句柄:%lld,错误码:%lX"), lpszClientAddr, xhToken, dwRet); + return false; } ModuleProtocol_Packet_Locker(tszRVBuffer, &nRVLen, xhToken); - RfcComponents_HttpServer_SendMsgEx(xhHTTPPacket, tszSDBuffer, &nSDLen, &st_HDRParam, tszRVBuffer, nRVLen); + HttpProtocol_Server_SendMsgEx(xhHTTPPacket, tszSDBuffer, &nSDLen, &st_HDRParam, tszRVBuffer, nRVLen); XEngine_Network_Send(lpszClientAddr, tszSDBuffer, nSDLen); - XLOG_PRINT(xhLog, XENGINE_HELPCOMPONENTS_XLOG_IN_LOGLEVEL_WARN, _T("客户端:%s,请求打开锁成功,锁句柄:%lld"), lpszClientAddr, xhToken); + XLOG_PRINT(xhLog, XENGINE_HELPCOMPONENTS_XLOG_IN_LOGLEVEL_WARN, _X("客户端:%s,请求打开锁成功,锁句柄:%lld"), lpszClientAddr, xhToken); } else if (ENUM_XENGINE_APISERVICE_LOCKER_TYPE_CLOSE == enLockType) { ModuleHelp_Locker_Close(xhToken); ModuleProtocol_Packet_Locker(tszRVBuffer, &nRVLen, xhToken); - RfcComponents_HttpServer_SendMsgEx(xhHTTPPacket, tszSDBuffer, &nSDLen, &st_HDRParam, tszRVBuffer, nRVLen); + HttpProtocol_Server_SendMsgEx(xhHTTPPacket, tszSDBuffer, &nSDLen, &st_HDRParam, tszRVBuffer, nRVLen); XEngine_Network_Send(lpszClientAddr, tszSDBuffer, nSDLen); - XLOG_PRINT(xhLog, XENGINE_HELPCOMPONENTS_XLOG_IN_LOGLEVEL_WARN, _T("客户端:%s,请求关闭锁成功,锁句柄:%lld"), lpszClientAddr, xhToken); + XLOG_PRINT(xhLog, XENGINE_HELPCOMPONENTS_XLOG_IN_LOGLEVEL_WARN, _X("客户端:%s,请求关闭锁成功,锁句柄:%lld"), lpszClientAddr, xhToken); } else if (ENUM_XENGINE_APISERVICE_LOCKER_TYPE_READ == enLockType) { if (!ModuleHelp_Locker_ReadLock(xhToken)) { - DWORD dwRet = ModuleHelp_GetLastError(); + XLONG dwRet = ModuleHelp_GetLastError(); ModuleProtocol_Packet_Locker(tszRVBuffer, &nRVLen, xhToken, dwRet, "request is failed"); - RfcComponents_HttpServer_SendMsgEx(xhHTTPPacket, tszSDBuffer, &nSDLen, &st_HDRParam, tszRVBuffer, nRVLen); + HttpProtocol_Server_SendMsgEx(xhHTTPPacket, tszSDBuffer, &nSDLen, &st_HDRParam, tszRVBuffer, nRVLen); XEngine_Network_Send(lpszClientAddr, tszSDBuffer, nSDLen); - XLOG_PRINT(xhLog, XENGINE_HELPCOMPONENTS_XLOG_IN_LOGLEVEL_WARN, _T("客户端:%s,请求读加锁失败,锁句柄:%lld,错误码:%lX"), lpszClientAddr, xhToken, dwRet); - return FALSE; + XLOG_PRINT(xhLog, XENGINE_HELPCOMPONENTS_XLOG_IN_LOGLEVEL_WARN, _X("客户端:%s,请求读加锁失败,锁句柄:%lld,错误码:%lX"), lpszClientAddr, xhToken, dwRet); + return false; } ModuleProtocol_Packet_Locker(tszRVBuffer, &nRVLen, xhToken); - RfcComponents_HttpServer_SendMsgEx(xhHTTPPacket, tszSDBuffer, &nSDLen, &st_HDRParam, tszRVBuffer, nRVLen); + HttpProtocol_Server_SendMsgEx(xhHTTPPacket, tszSDBuffer, &nSDLen, &st_HDRParam, tszRVBuffer, nRVLen); XEngine_Network_Send(lpszClientAddr, tszSDBuffer, nSDLen); - XLOG_PRINT(xhLog, XENGINE_HELPCOMPONENTS_XLOG_IN_LOGLEVEL_WARN, _T("客户端:%s,请求读加锁成功,锁句柄:%lld"), lpszClientAddr, xhToken); + XLOG_PRINT(xhLog, XENGINE_HELPCOMPONENTS_XLOG_IN_LOGLEVEL_WARN, _X("客户端:%s,请求读加锁成功,锁句柄:%lld"), lpszClientAddr, xhToken); } else if (ENUM_XENGINE_APISERVICE_LOCKER_TYPE_UNREAD == enLockType) { if (!ModuleHelp_Locker_ReadUNLock(xhToken)) { - DWORD dwRet = ModuleHelp_GetLastError(); + XLONG dwRet = ModuleHelp_GetLastError(); ModuleProtocol_Packet_Locker(tszRVBuffer, &nRVLen, xhToken, dwRet, "request is failed"); - RfcComponents_HttpServer_SendMsgEx(xhHTTPPacket, tszSDBuffer, &nSDLen, &st_HDRParam, tszRVBuffer, nRVLen); + HttpProtocol_Server_SendMsgEx(xhHTTPPacket, tszSDBuffer, &nSDLen, &st_HDRParam, tszRVBuffer, nRVLen); XEngine_Network_Send(lpszClientAddr, tszSDBuffer, nSDLen); - XLOG_PRINT(xhLog, XENGINE_HELPCOMPONENTS_XLOG_IN_LOGLEVEL_WARN, _T("客户端:%s,请求读解锁失败,锁句柄:%lld,错误码:%lX"), lpszClientAddr, xhToken, dwRet); - return FALSE; + XLOG_PRINT(xhLog, XENGINE_HELPCOMPONENTS_XLOG_IN_LOGLEVEL_WARN, _X("客户端:%s,请求读解锁失败,锁句柄:%lld,错误码:%lX"), lpszClientAddr, xhToken, dwRet); + return false; } ModuleProtocol_Packet_Locker(tszRVBuffer, &nRVLen, xhToken); - RfcComponents_HttpServer_SendMsgEx(xhHTTPPacket, tszSDBuffer, &nSDLen, &st_HDRParam, tszRVBuffer, nRVLen); + HttpProtocol_Server_SendMsgEx(xhHTTPPacket, tszSDBuffer, &nSDLen, &st_HDRParam, tszRVBuffer, nRVLen); XEngine_Network_Send(lpszClientAddr, tszSDBuffer, nSDLen); - XLOG_PRINT(xhLog, XENGINE_HELPCOMPONENTS_XLOG_IN_LOGLEVEL_WARN, _T("客户端:%s,请求读解锁成功,锁句柄:%lld"), lpszClientAddr, xhToken); + XLOG_PRINT(xhLog, XENGINE_HELPCOMPONENTS_XLOG_IN_LOGLEVEL_WARN, _X("客户端:%s,请求读解锁成功,锁句柄:%lld"), lpszClientAddr, xhToken); } else if (ENUM_XENGINE_APISERVICE_LOCKER_TYPE_WRITE == enLockType) { if (!ModuleHelp_Locker_WriteLock(xhToken)) { - DWORD dwRet = ModuleHelp_GetLastError(); + XLONG dwRet = ModuleHelp_GetLastError(); ModuleProtocol_Packet_Locker(tszRVBuffer, &nRVLen, xhToken, dwRet, "request is failed"); - RfcComponents_HttpServer_SendMsgEx(xhHTTPPacket, tszSDBuffer, &nSDLen, &st_HDRParam, tszRVBuffer, nRVLen); + HttpProtocol_Server_SendMsgEx(xhHTTPPacket, tszSDBuffer, &nSDLen, &st_HDRParam, tszRVBuffer, nRVLen); XEngine_Network_Send(lpszClientAddr, tszSDBuffer, nSDLen); - XLOG_PRINT(xhLog, XENGINE_HELPCOMPONENTS_XLOG_IN_LOGLEVEL_WARN, _T("客户端:%s,请求写加锁失败,锁句柄:%lld,错误码:%lX"), lpszClientAddr, xhToken, dwRet); - return FALSE; + XLOG_PRINT(xhLog, XENGINE_HELPCOMPONENTS_XLOG_IN_LOGLEVEL_WARN, _X("客户端:%s,请求写加锁失败,锁句柄:%lld,错误码:%lX"), lpszClientAddr, xhToken, dwRet); + return false; } ModuleProtocol_Packet_Locker(tszRVBuffer, &nRVLen, xhToken); - RfcComponents_HttpServer_SendMsgEx(xhHTTPPacket, tszSDBuffer, &nSDLen, &st_HDRParam, tszRVBuffer, nRVLen); + HttpProtocol_Server_SendMsgEx(xhHTTPPacket, tszSDBuffer, &nSDLen, &st_HDRParam, tszRVBuffer, nRVLen); XEngine_Network_Send(lpszClientAddr, tszSDBuffer, nSDLen); - XLOG_PRINT(xhLog, XENGINE_HELPCOMPONENTS_XLOG_IN_LOGLEVEL_WARN, _T("客户端:%s,请求写加锁成功,锁句柄:%lld"), lpszClientAddr, xhToken); + XLOG_PRINT(xhLog, XENGINE_HELPCOMPONENTS_XLOG_IN_LOGLEVEL_WARN, _X("客户端:%s,请求写加锁成功,锁句柄:%lld"), lpszClientAddr, xhToken); } else if (ENUM_XENGINE_APISERVICE_LOCKER_TYPE_UNWRITE == enLockType) { if (!ModuleHelp_Locker_WriteUNLock(xhToken)) { - DWORD dwRet = ModuleHelp_GetLastError(); + XLONG dwRet = ModuleHelp_GetLastError(); ModuleProtocol_Packet_Locker(tszRVBuffer, &nRVLen, xhToken, dwRet, "request is failed"); - RfcComponents_HttpServer_SendMsgEx(xhHTTPPacket, tszSDBuffer, &nSDLen, &st_HDRParam, tszRVBuffer, nRVLen); + HttpProtocol_Server_SendMsgEx(xhHTTPPacket, tszSDBuffer, &nSDLen, &st_HDRParam, tszRVBuffer, nRVLen); XEngine_Network_Send(lpszClientAddr, tszSDBuffer, nSDLen); - XLOG_PRINT(xhLog, XENGINE_HELPCOMPONENTS_XLOG_IN_LOGLEVEL_WARN, _T("客户端:%s,请求写解锁失败,锁句柄:%lld,错误码:%lX"), lpszClientAddr, xhToken, dwRet); - return FALSE; + XLOG_PRINT(xhLog, XENGINE_HELPCOMPONENTS_XLOG_IN_LOGLEVEL_WARN, _X("客户端:%s,请求写解锁失败,锁句柄:%lld,错误码:%lX"), lpszClientAddr, xhToken, dwRet); + return false; } ModuleProtocol_Packet_Locker(tszRVBuffer, &nRVLen, xhToken); - RfcComponents_HttpServer_SendMsgEx(xhHTTPPacket, tszSDBuffer, &nSDLen, &st_HDRParam, tszRVBuffer, nRVLen); + HttpProtocol_Server_SendMsgEx(xhHTTPPacket, tszSDBuffer, &nSDLen, &st_HDRParam, tszRVBuffer, nRVLen); XEngine_Network_Send(lpszClientAddr, tszSDBuffer, nSDLen); - XLOG_PRINT(xhLog, XENGINE_HELPCOMPONENTS_XLOG_IN_LOGLEVEL_WARN, _T("客户端:%s,请求写解锁成功,锁句柄:%lld"), lpszClientAddr, xhToken); + XLOG_PRINT(xhLog, XENGINE_HELPCOMPONENTS_XLOG_IN_LOGLEVEL_WARN, _X("客户端:%s,请求写解锁成功,锁句柄:%lld"), lpszClientAddr, xhToken); } else { st_HDRParam.nHttpCode = 404; - RfcComponents_HttpServer_SendMsgEx(xhHTTPPacket, tszSDBuffer, &nSDLen, &st_HDRParam); + HttpProtocol_Server_SendMsgEx(xhHTTPPacket, tszSDBuffer, &nSDLen, &st_HDRParam); XEngine_Network_Send(lpszClientAddr, tszSDBuffer, nSDLen); - XLOG_PRINT(xhLog, XENGINE_HELPCOMPONENTS_XLOG_IN_LOGLEVEL_WARN, _T("客户端:%s,请求了一条未知的子协议:%d"), lpszClientAddr, enLockType); + XLOG_PRINT(xhLog, XENGINE_HELPCOMPONENTS_XLOG_IN_LOGLEVEL_WARN, _X("客户端:%s,请求了一条未知的子协议:%d"), lpszClientAddr, enLockType); } - return TRUE; + return true; } \ No newline at end of file diff --git a/XEngine_Source/XEngine_ServiceApp/XEngine_HttpApp/XEngine_HTTPTask/HTTPTask_Locker.h b/XEngine_Source/XEngine_ServiceApp/XEngine_HttpApp/XEngine_TaskGet/TaskGet_Locker.h similarity index 52% rename from XEngine_Source/XEngine_ServiceApp/XEngine_HttpApp/XEngine_HTTPTask/HTTPTask_Locker.h rename to XEngine_Source/XEngine_ServiceApp/XEngine_HttpApp/XEngine_TaskGet/TaskGet_Locker.h index 96b0e6bd577d54ea8006da31735eda51f4b167ff..fad5371e302af64b840c6ed7037f56ed71f048b0 100644 --- a/XEngine_Source/XEngine_ServiceApp/XEngine_HttpApp/XEngine_HTTPTask/HTTPTask_Locker.h +++ b/XEngine_Source/XEngine_ServiceApp/XEngine_HttpApp/XEngine_TaskGet/TaskGet_Locker.h @@ -1,3 +1,3 @@ #pragma once -BOOL XEngine_HTTPTask_Locker(LPCTSTR lpszClientAddr,__int64x nToken, ENUM_XENGINE_APISERVICE_LOCKER_TYPE enLockType); \ No newline at end of file +bool HTTPTask_TaskGet_Locker(LPCXSTR lpszClientAddr,__int64x nToken, ENUM_XENGINE_APISERVICE_LOCKER_TYPE enLockType); \ No newline at end of file diff --git a/XEngine_Source/XEngine_ServiceApp/XEngine_HttpApp/XEngine_HTTPTask/HTTPTask_Translation.cpp b/XEngine_Source/XEngine_ServiceApp/XEngine_HttpApp/XEngine_TaskGet/TaskGet_Translation.cpp similarity index 64% rename from XEngine_Source/XEngine_ServiceApp/XEngine_HttpApp/XEngine_HTTPTask/HTTPTask_Translation.cpp rename to XEngine_Source/XEngine_ServiceApp/XEngine_HttpApp/XEngine_TaskGet/TaskGet_Translation.cpp index 3cc6daffda58b8d896df0d173e1b7901900abafa..2b7099cf1dc690b12547897543cbe40af52f74c2 100644 --- a/XEngine_Source/XEngine_ServiceApp/XEngine_HttpApp/XEngine_HTTPTask/HTTPTask_Translation.cpp +++ b/XEngine_Source/XEngine_ServiceApp/XEngine_HttpApp/XEngine_TaskGet/TaskGet_Translation.cpp @@ -1,15 +1,15 @@ #include "../XEngine_Hdr.h" -BOOL XEngine_HTTPTask_Translation(LPCTSTR lpszClientAddr, LPCTSTR lpszMsgBuffer, int nConvertType) +bool HTTPTask_TaskGet_Translation(LPCXSTR lpszClientAddr, LPCXSTR lpszMsgBuffer, int nConvertType) { int nMsgLen = 4096; int nPktLen = 4096; int nBLen = 0; - TCHAR* ptszBodyBuffer; - TCHAR tszMsgBuffer[4096]; - TCHAR tszPktBuffer[4096]; - TCHAR tszUrlBuffer[MAX_PATH]; - TCHAR tszTypeBuffer[64]; + XCHAR* ptszBodyBuffer; + XCHAR tszMsgBuffer[4096]; + XCHAR tszPktBuffer[4096]; + XCHAR tszUrlBuffer[MAX_PATH]; + XCHAR tszTypeBuffer[64]; XENGINE_LANGUAGEINFO st_LanguageInfo; RFCCOMPONENTS_HTTP_HDRPARAM st_HDRParam; //发送给客户端的参数 @@ -21,36 +21,36 @@ BOOL XEngine_HTTPTask_Translation(LPCTSTR lpszClientAddr, LPCTSTR lpszMsgBuffer, memset(&st_HDRParam, '\0', sizeof(RFCCOMPONENTS_HTTP_HDRPARAM)); st_HDRParam.nHttpCode = 200; //HTTP CODE码 - st_HDRParam.bIsClose = TRUE; //收到回复后就关闭 + st_HDRParam.bIsClose = true; //收到回复后就关闭 st_LanguageInfo.enType = nConvertType; //转换类型 if (!ModuleHelp_Translation_Convert((ENUM_XENGINE_APISERVICE_TRANSLATION_TYPE)nConvertType, tszTypeBuffer)) { - ModuleProtocol_Packet_LanguageQuery(tszPktBuffer, &nPktLen, NULL, 1001, _T("type not support")); + ModuleProtocol_Packet_LanguageQuery(tszPktBuffer, &nPktLen, NULL, 1001, _X("type not support")); BaseLib_OperatorMemory_FreeCStyle((XPPMEM)&ptszBodyBuffer); - RfcComponents_HttpServer_SendMsgEx(xhHTTPPacket, tszMsgBuffer, &nMsgLen, &st_HDRParam, tszPktBuffer, nPktLen); + HttpProtocol_Server_SendMsgEx(xhHTTPPacket, tszMsgBuffer, &nMsgLen, &st_HDRParam, tszPktBuffer, nPktLen); XEngine_Network_Send(lpszClientAddr, tszMsgBuffer, nMsgLen); - XLOG_PRINT(xhLog, XENGINE_HELPCOMPONENTS_XLOG_IN_LOGLEVEL_INFO, _T("HTTP客户端:%s,请求的翻译类型不正确:%d,原始字符串:%s"), lpszClientAddr, nConvertType, lpszMsgBuffer); - return FALSE; + XLOG_PRINT(xhLog, XENGINE_HELPCOMPONENTS_XLOG_IN_LOGLEVEL_INFO, _X("HTTP客户端:%s,请求的翻译类型不正确:%d,原始字符串:%s"), lpszClientAddr, nConvertType, lpszMsgBuffer); + return false; } - _stprintf(tszUrlBuffer, st_ServiceConfig.st_XApi.tszTranslationUrl, tszTypeBuffer, lpszMsgBuffer); - APIClient_Http_Request(_T("GET"), tszUrlBuffer, NULL, NULL, &ptszBodyBuffer, &nBLen); + _xstprintf(tszUrlBuffer, st_ServiceConfig.st_XApi.tszTranslationUrl, tszTypeBuffer, lpszMsgBuffer); + APIClient_Http_Request(_X("GET"), tszUrlBuffer, NULL, NULL, &ptszBodyBuffer, &nBLen); //解析数据 if (!ModuleProtocol_Parse_Translation(ptszBodyBuffer, nBLen, &st_LanguageInfo)) { - ModuleProtocol_Packet_LanguageQuery(tszPktBuffer, &nPktLen, NULL, 1002, _T("translation failed")); + ModuleProtocol_Packet_LanguageQuery(tszPktBuffer, &nPktLen, NULL, 1002, _X("translation failed")); BaseLib_OperatorMemory_FreeCStyle((XPPMEM)&ptszBodyBuffer); - RfcComponents_HttpServer_SendMsgEx(xhHTTPPacket, tszMsgBuffer, &nMsgLen, &st_HDRParam, tszPktBuffer, nPktLen); + HttpProtocol_Server_SendMsgEx(xhHTTPPacket, tszMsgBuffer, &nMsgLen, &st_HDRParam, tszPktBuffer, nPktLen); XEngine_Network_Send(lpszClientAddr, tszMsgBuffer, nMsgLen); - XLOG_PRINT(xhLog, XENGINE_HELPCOMPONENTS_XLOG_IN_LOGLEVEL_INFO, _T("HTTP客户端:%s,请求的翻译失败,类型:%d,原始字符串:%s"), lpszClientAddr, nConvertType, lpszMsgBuffer); - return FALSE; + XLOG_PRINT(xhLog, XENGINE_HELPCOMPONENTS_XLOG_IN_LOGLEVEL_INFO, _X("HTTP客户端:%s,请求的翻译失败,类型:%d,原始字符串:%s"), lpszClientAddr, nConvertType, lpszMsgBuffer); + return false; } //打包发送 ModuleProtocol_Packet_LanguageQuery(tszPktBuffer, &nPktLen, &st_LanguageInfo); - RfcComponents_HttpServer_SendMsgEx(xhHTTPPacket, tszMsgBuffer, &nMsgLen, &st_HDRParam, tszPktBuffer, nPktLen); + HttpProtocol_Server_SendMsgEx(xhHTTPPacket, tszMsgBuffer, &nMsgLen, &st_HDRParam, tszPktBuffer, nPktLen); XEngine_Network_Send(lpszClientAddr, tszMsgBuffer, nMsgLen); BaseLib_OperatorMemory_FreeCStyle((XPPMEM)&ptszBodyBuffer); - XLOG_PRINT(xhLog, XENGINE_HELPCOMPONENTS_XLOG_IN_LOGLEVEL_INFO, _T("HTTP客户端:%s,请求语言翻译成功,原始语言:%s,目标语言:%s"), lpszClientAddr, st_LanguageInfo.tszSourceStr, st_LanguageInfo.tszDestStr); - return TRUE; + XLOG_PRINT(xhLog, XENGINE_HELPCOMPONENTS_XLOG_IN_LOGLEVEL_INFO, _X("HTTP客户端:%s,请求语言翻译成功,原始语言:%s,目标语言:%s"), lpszClientAddr, st_LanguageInfo.tszSourceStr, st_LanguageInfo.tszDestStr); + return true; } \ No newline at end of file diff --git a/XEngine_Source/XEngine_ServiceApp/XEngine_HttpApp/XEngine_HTTPTask/HTTPTask_Translation.h b/XEngine_Source/XEngine_ServiceApp/XEngine_HttpApp/XEngine_TaskGet/TaskGet_Translation.h similarity index 44% rename from XEngine_Source/XEngine_ServiceApp/XEngine_HttpApp/XEngine_HTTPTask/HTTPTask_Translation.h rename to XEngine_Source/XEngine_ServiceApp/XEngine_HttpApp/XEngine_TaskGet/TaskGet_Translation.h index 322fa84e2ac975d7846acb982a47a7e4443376c7..6799a714370716048075e405dc78d1b053ffa05f 100644 --- a/XEngine_Source/XEngine_ServiceApp/XEngine_HttpApp/XEngine_HTTPTask/HTTPTask_Translation.h +++ b/XEngine_Source/XEngine_ServiceApp/XEngine_HttpApp/XEngine_TaskGet/TaskGet_Translation.h @@ -1,3 +1,3 @@ #pragma once -BOOL XEngine_HTTPTask_Translation(LPCTSTR lpszClientAddr, LPCTSTR lpszMsgBuffer, int nConvertType); \ No newline at end of file +bool HTTPTask_TaskGet_Translation(LPCXSTR lpszClientAddr, LPCXSTR lpszMsgBuffer, int nConvertType); \ No newline at end of file diff --git a/XEngine_Source/XEngine_ServiceApp/XEngine_HttpApp/XEngine_TaskPost/TaskPost_DTest.cpp b/XEngine_Source/XEngine_ServiceApp/XEngine_HttpApp/XEngine_TaskPost/TaskPost_DTest.cpp new file mode 100644 index 0000000000000000000000000000000000000000..85ac83ce2723d12f58bf31371e4d4d9db099477b --- /dev/null +++ b/XEngine_Source/XEngine_ServiceApp/XEngine_HttpApp/XEngine_TaskPost/TaskPost_DTest.cpp @@ -0,0 +1,26 @@ +#include "../XEngine_Hdr.h" + +bool HTTPTask_TastPost_DTest(LPCXSTR lpszClientAddr, LPCXSTR lpszMsgBuffer, int nMsgLen, int nType) +{ + int nSDLen = 0; + XCHAR tszSDBuffer[4096]; + RFCCOMPONENTS_HTTP_HDRPARAM st_HDRParam; //发送给客户端的参数 + + memset(tszSDBuffer, '\0', sizeof(tszSDBuffer)); + memset(&st_HDRParam, '\0', sizeof(RFCCOMPONENTS_HTTP_HDRPARAM)); + + st_HDRParam.nHttpCode = 200; //HTTP CODE码 + st_HDRParam.bIsClose = true; //收到回复后就关闭 + //0发什么返回什么,1 仅仅返回确认 + if (0 == nType) + { + HttpProtocol_Server_SendMsgEx(xhHTTPPacket, tszSDBuffer, &nSDLen, &st_HDRParam, lpszMsgBuffer, nMsgLen); + } + else + { + HttpProtocol_Server_SendMsgEx(xhHTTPPacket, tszSDBuffer, &nSDLen, &st_HDRParam); + } + XEngine_Network_Send(lpszClientAddr, tszSDBuffer, nSDLen); + XLOG_PRINT(xhLog, XENGINE_HELPCOMPONENTS_XLOG_IN_LOGLEVEL_INFO, _X("HTTP客户端:%s,请求数据用例测试成功,请求的大小:%d,请求的类型:%d"), lpszClientAddr, nMsgLen, nType); + return true; +} \ No newline at end of file diff --git a/XEngine_Source/XEngine_ServiceApp/XEngine_HttpApp/XEngine_HTTPTask/HTTPTask_QRCode.h b/XEngine_Source/XEngine_ServiceApp/XEngine_HttpApp/XEngine_TaskPost/TaskPost_DTest.h similarity index 45% rename from XEngine_Source/XEngine_ServiceApp/XEngine_HttpApp/XEngine_HTTPTask/HTTPTask_QRCode.h rename to XEngine_Source/XEngine_ServiceApp/XEngine_HttpApp/XEngine_TaskPost/TaskPost_DTest.h index b5bb2a62406df413559f60386a5563a5d57f4e39..61c7ed98ca858748631ebf63b3b1dc0ed9ff856e 100644 --- a/XEngine_Source/XEngine_ServiceApp/XEngine_HttpApp/XEngine_HTTPTask/HTTPTask_QRCode.h +++ b/XEngine_Source/XEngine_ServiceApp/XEngine_HttpApp/XEngine_TaskPost/TaskPost_DTest.h @@ -1,3 +1,3 @@ #pragma once -BOOL XEngine_HTTPTask_QRCode(LPCTSTR lpszClientAddr, LPCTSTR lpszMsgBuffer, int nMsgLen, int nType); \ No newline at end of file +bool HTTPTask_TastPost_DTest(LPCXSTR lpszClientAddr, LPCXSTR lpszMsgBuffer, int nMsgLen, int nType); \ No newline at end of file diff --git a/XEngine_Source/XEngine_ServiceApp/XEngine_HttpApp/XEngine_HTTPTask/HTTPTask_Log.cpp b/XEngine_Source/XEngine_ServiceApp/XEngine_HttpApp/XEngine_TaskPost/TaskPost_Log.cpp similarity index 68% rename from XEngine_Source/XEngine_ServiceApp/XEngine_HttpApp/XEngine_HTTPTask/HTTPTask_Log.cpp rename to XEngine_Source/XEngine_ServiceApp/XEngine_HttpApp/XEngine_TaskPost/TaskPost_Log.cpp index 31a4802cb93dbb4b171b038536d70078eab3b0ba..657babd7a20721db2a1f1d55d94cee68bb3d42cd 100644 --- a/XEngine_Source/XEngine_ServiceApp/XEngine_HttpApp/XEngine_HTTPTask/HTTPTask_Log.cpp +++ b/XEngine_Source/XEngine_ServiceApp/XEngine_HttpApp/XEngine_TaskPost/TaskPost_Log.cpp @@ -1,11 +1,11 @@ #include "../XEngine_Hdr.h" -BOOL XEngine_HTTPTask_LogInfo(LPCTSTR lpszClientAddr, LPCTSTR lpszMsgBuffer, int nMsgLen, int nType) +bool HTTPTask_TastPost_LogInfo(LPCXSTR lpszClientAddr, LPCXSTR lpszMsgBuffer, int nMsgLen, int nType) { int nSDLen = 0; int nRVLen = 0; - TCHAR tszSDBuffer[4096]; - TCHAR tszRVBuffer[4096]; + XCHAR tszSDBuffer[4096]; + XCHAR tszRVBuffer[4096]; XENGINE_XLOGINFO st_XLogInfo; RFCCOMPONENTS_HTTP_HDRPARAM st_HDRParam; //发送给客户端的参数 @@ -15,24 +15,24 @@ BOOL XEngine_HTTPTask_LogInfo(LPCTSTR lpszClientAddr, LPCTSTR lpszMsgBuffer, int memset(&st_HDRParam, '\0', sizeof(RFCCOMPONENTS_HTTP_HDRPARAM)); st_HDRParam.nHttpCode = 200; //HTTP CODE码 - st_HDRParam.bIsClose = TRUE; //收到回复后就关闭 + st_HDRParam.bIsClose = true; //收到回复后就关闭 ModuleProtocol_Parse_XLog(lpszMsgBuffer, nMsgLen, &st_XLogInfo); if (0 == nType) { ModuleDatabase_XLog_Create(st_XLogInfo.tszTableName); ModuleProtocol_Packet_Common(tszRVBuffer, &nRVLen); - RfcComponents_HttpServer_SendMsgEx(xhHTTPPacket, tszSDBuffer, &nSDLen, &st_HDRParam, tszRVBuffer, nRVLen); + HttpProtocol_Server_SendMsgEx(xhHTTPPacket, tszSDBuffer, &nSDLen, &st_HDRParam, tszRVBuffer, nRVLen); XEngine_Network_Send(lpszClientAddr, tszSDBuffer, nSDLen); - XLOG_PRINT(xhLog, XENGINE_HELPCOMPONENTS_XLOG_IN_LOGLEVEL_INFO, _T("HTTP客户端:%s,请求日志表创建成功,创建的表:%s,"), lpszClientAddr, st_XLogInfo.tszTableName); + XLOG_PRINT(xhLog, XENGINE_HELPCOMPONENTS_XLOG_IN_LOGLEVEL_INFO, _X("HTTP客户端:%s,请求日志表创建成功,创建的表:%s,"), lpszClientAddr, st_XLogInfo.tszTableName); } else if (1 == nType) { ModuleDatabase_XLog_Insert(&st_XLogInfo); ModuleProtocol_Packet_Common(tszRVBuffer, &nRVLen); - RfcComponents_HttpServer_SendMsgEx(xhHTTPPacket, tszSDBuffer, &nSDLen, &st_HDRParam, tszRVBuffer, nRVLen); + HttpProtocol_Server_SendMsgEx(xhHTTPPacket, tszSDBuffer, &nSDLen, &st_HDRParam, tszRVBuffer, nRVLen); XEngine_Network_Send(lpszClientAddr, tszSDBuffer, nSDLen); - XLOG_PRINT(xhLog, XENGINE_HELPCOMPONENTS_XLOG_IN_LOGLEVEL_INFO, _T("HTTP客户端:%s,请求日志插入成功,插入的表:%s,日志大小:%d"), lpszClientAddr, st_XLogInfo.tszTableName, st_XLogInfo.nLogSize); + XLOG_PRINT(xhLog, XENGINE_HELPCOMPONENTS_XLOG_IN_LOGLEVEL_INFO, _X("HTTP客户端:%s,请求日志插入成功,插入的表:%s,日志大小:%d"), lpszClientAddr, st_XLogInfo.tszTableName, st_XLogInfo.nLogSize); } else if (2 == nType) { @@ -40,17 +40,17 @@ BOOL XEngine_HTTPTask_LogInfo(LPCTSTR lpszClientAddr, LPCTSTR lpszMsgBuffer, int XENGINE_XLOGINFO** ppSt_XLogInfo; ModuleDatabase_XLog_Query(&ppSt_XLogInfo, &nListCount, st_XLogInfo.tszTableName, st_XLogInfo.tszTimeStart, st_XLogInfo.tszTimeEnd); ModuleProtocol_Packet_Log(tszRVBuffer, &nRVLen, &ppSt_XLogInfo, nListCount); - RfcComponents_HttpServer_SendMsgEx(xhHTTPPacket, tszSDBuffer, &nSDLen, &st_HDRParam, tszRVBuffer, nRVLen); + HttpProtocol_Server_SendMsgEx(xhHTTPPacket, tszSDBuffer, &nSDLen, &st_HDRParam, tszRVBuffer, nRVLen); XEngine_Network_Send(lpszClientAddr, tszSDBuffer, nSDLen); - XLOG_PRINT(xhLog, XENGINE_HELPCOMPONENTS_XLOG_IN_LOGLEVEL_INFO, _T("HTTP客户端:%s,请求日志查询成功,查询的表:%s,查询日期:%s - %s,查询条数:%d"), lpszClientAddr, st_XLogInfo.tszTableName, st_XLogInfo.tszTimeStart, st_XLogInfo.tszTimeEnd, nListCount); + XLOG_PRINT(xhLog, XENGINE_HELPCOMPONENTS_XLOG_IN_LOGLEVEL_INFO, _X("HTTP客户端:%s,请求日志查询成功,查询的表:%s,查询日期:%s - %s,查询条数:%d"), lpszClientAddr, st_XLogInfo.tszTableName, st_XLogInfo.tszTimeStart, st_XLogInfo.tszTimeEnd, nListCount); } else { ModuleDatabase_XLog_Delete(st_XLogInfo.tszTableName); ModuleProtocol_Packet_Common(tszRVBuffer, &nRVLen); - RfcComponents_HttpServer_SendMsgEx(xhHTTPPacket, tszSDBuffer, &nSDLen, &st_HDRParam, tszRVBuffer, nRVLen); + HttpProtocol_Server_SendMsgEx(xhHTTPPacket, tszSDBuffer, &nSDLen, &st_HDRParam, tszRVBuffer, nRVLen); XEngine_Network_Send(lpszClientAddr, tszSDBuffer, nSDLen); - XLOG_PRINT(xhLog, XENGINE_HELPCOMPONENTS_XLOG_IN_LOGLEVEL_INFO, _T("HTTP客户端:%s,请求日志删除成功,删除的表:%s"), lpszClientAddr, st_XLogInfo.tszTableName); + XLOG_PRINT(xhLog, XENGINE_HELPCOMPONENTS_XLOG_IN_LOGLEVEL_INFO, _X("HTTP客户端:%s,请求日志删除成功,删除的表:%s"), lpszClientAddr, st_XLogInfo.tszTableName); } - return TRUE; + return true; } \ No newline at end of file diff --git a/XEngine_Source/XEngine_ServiceApp/XEngine_HttpApp/XEngine_HTTPTask/HTTPTask_PostCode.h b/XEngine_Source/XEngine_ServiceApp/XEngine_HttpApp/XEngine_TaskPost/TaskPost_Log.h similarity index 46% rename from XEngine_Source/XEngine_ServiceApp/XEngine_HttpApp/XEngine_HTTPTask/HTTPTask_PostCode.h rename to XEngine_Source/XEngine_ServiceApp/XEngine_HttpApp/XEngine_TaskPost/TaskPost_Log.h index fb06c83b5a9b9ed7b6c4ba967642b78524637ef8..78dc027cbcf7933fae669ac199156c1ed3e1aa36 100644 --- a/XEngine_Source/XEngine_ServiceApp/XEngine_HttpApp/XEngine_HTTPTask/HTTPTask_PostCode.h +++ b/XEngine_Source/XEngine_ServiceApp/XEngine_HttpApp/XEngine_TaskPost/TaskPost_Log.h @@ -1,3 +1,3 @@ #pragma once -BOOL XEngine_HTTPTask_PostCode(LPCTSTR lpszClientAddr, LPCTSTR lpszMsgBuffer, int nMsgLen, int nType); \ No newline at end of file +bool HTTPTask_TastPost_LogInfo(LPCXSTR lpszClientAddr, LPCXSTR lpszMsgBuffer, int nMsgLen, int nType); \ No newline at end of file diff --git a/XEngine_Source/XEngine_ServiceApp/XEngine_HttpApp/XEngine_HTTPTask/HTTPTask_P2PClient.cpp b/XEngine_Source/XEngine_ServiceApp/XEngine_HttpApp/XEngine_TaskPost/TaskPost_P2PClient.cpp similarity index 68% rename from XEngine_Source/XEngine_ServiceApp/XEngine_HttpApp/XEngine_HTTPTask/HTTPTask_P2PClient.cpp rename to XEngine_Source/XEngine_ServiceApp/XEngine_HttpApp/XEngine_TaskPost/TaskPost_P2PClient.cpp index 0bb0cd4386cf49c6d4414f75160be1b4cefa1106..452191654d331600c68761fd40db59de61639c21 100644 --- a/XEngine_Source/XEngine_ServiceApp/XEngine_HttpApp/XEngine_HTTPTask/HTTPTask_P2PClient.cpp +++ b/XEngine_Source/XEngine_ServiceApp/XEngine_HttpApp/XEngine_TaskPost/TaskPost_P2PClient.cpp @@ -1,15 +1,15 @@ #include "../XEngine_Hdr.h" -void CALLBACK XEngine_HTTPTask_P2PCallback(XENGINE_P2XPPEER_PROTOCOL* pSt_P2PProtocol, LPVOID lParam) +void CALLBACK HTTPTask_TastPost_P2PCallback(XENGINE_P2XPPEER_PROTOCOL* pSt_P2PProtocol, XPVOID lParam) { - XLOG_PRINT(xhLog, XENGINE_HELPCOMPONENTS_XLOG_IN_LOGLEVEL_WARN, _T("HTTP客户端:公网:%s,私网:%s,连接:%s P2P离开"), pSt_P2PProtocol->tszPublicAddr, pSt_P2PProtocol->tszPrivateAddr, pSt_P2PProtocol->tszConnectAddr); + XLOG_PRINT(xhLog, XENGINE_HELPCOMPONENTS_XLOG_IN_LOGLEVEL_WARN, _X("HTTP客户端:公网:%s,私网:%s,连接:%s P2P离开"), pSt_P2PProtocol->tszPublicAddr, pSt_P2PProtocol->tszPrivateAddr, pSt_P2PProtocol->tszConnectAddr); } -BOOL XEngine_HTTPTask_P2PClient(LPCTSTR lpszClientAddr, LPCTSTR lpszMsgBuffer, int nMsgLen, int unOperatorCode) +bool HTTPTask_TastPost_P2PClient(LPCXSTR lpszClientAddr, LPCXSTR lpszMsgBuffer, int nMsgLen, int unOperatorCode) { int nSDLen = 4096; int nRVLen = 4096; - TCHAR tszSDBuffer[4096]; - TCHAR tszRVBuffer[MAX_PATH]; + XCHAR tszSDBuffer[4096]; + XCHAR tszRVBuffer[MAX_PATH]; RFCCOMPONENTS_HTTP_HDRPARAM st_HDRParam; //发送给客户端的参数 memset(tszSDBuffer, '\0', sizeof(tszSDBuffer)); @@ -17,7 +17,7 @@ BOOL XEngine_HTTPTask_P2PClient(LPCTSTR lpszClientAddr, LPCTSTR lpszMsgBuffer, i memset(&st_HDRParam, '\0', sizeof(RFCCOMPONENTS_HTTP_HDRPARAM)); st_HDRParam.nHttpCode = 200; //HTTP CODE码 - st_HDRParam.bIsClose = TRUE; //收到回复后就关闭 + st_HDRParam.bIsClose = true; //收到回复后就关闭 if (XENGINE_COMMUNICATION_PROTOCOL_OPERATOR_CODE_P2XP_REQLOGIN == unOperatorCode) { XENGINE_P2XP_PEERINFO st_ClientPeer; @@ -26,15 +26,15 @@ BOOL XEngine_HTTPTask_P2PClient(LPCTSTR lpszClientAddr, LPCTSTR lpszMsgBuffer, i if (!ModuleProtocol_Parse_P2PClient(lpszMsgBuffer, nMsgLen, &st_ClientPeer.st_PeerAddr)) { ModuleProtocol_Packet_Common(tszRVBuffer, &nRVLen, 400, "协议错误"); - RfcComponents_HttpServer_SendMsgEx(xhHTTPPacket, tszSDBuffer, &nSDLen, &st_HDRParam, tszRVBuffer, nRVLen); + HttpProtocol_Server_SendMsgEx(xhHTTPPacket, tszSDBuffer, &nSDLen, &st_HDRParam, tszRVBuffer, nRVLen); XEngine_Network_Send(lpszClientAddr, tszSDBuffer, nSDLen); - XLOG_PRINT(xhLog, XENGINE_HELPCOMPONENTS_XLOG_IN_LOGLEVEL_ERROR, _T("HTTP客户端:%s,处理登录错误,解析协议失败,错误码:%lX"), lpszClientAddr, ModuleProtocol_GetLastError()); - return FALSE; + XLOG_PRINT(xhLog, XENGINE_HELPCOMPONENTS_XLOG_IN_LOGLEVEL_ERROR, _X("HTTP客户端:%s,处理登录错误,解析协议失败,错误码:%lX"), lpszClientAddr, ModuleProtocol_GetLastError()); + return false; } //如果没有填充公用地址,用他的连接地址代替,外网服务器都可以这样做 - if (_tcslen(st_ClientPeer.st_PeerAddr.tszPublicAddr) <= 0) + if (_tcsxlen(st_ClientPeer.st_PeerAddr.tszPublicAddr) <= 0) { - _tcscpy(st_ClientPeer.st_PeerAddr.tszPublicAddr, lpszClientAddr); + _tcsxcpy(st_ClientPeer.st_PeerAddr.tszPublicAddr, lpszClientAddr); BaseLib_OperatorIPAddr_SegAddr(st_ClientPeer.st_PeerAddr.tszPublicAddr, NULL); } //获取外网IP所在位置 @@ -42,20 +42,20 @@ BOOL XEngine_HTTPTask_P2PClient(LPCTSTR lpszClientAddr, LPCTSTR lpszMsgBuffer, i st_ClientPeer.st_PeerTimer.dwUserTime = time(NULL); st_ClientPeer.st_PeerTimer.dwKeepAlive = time(NULL); - st_ClientPeer.bIsLogin = TRUE; - _tcscpy(st_ClientPeer.st_PeerAddr.tszConnectAddr, lpszClientAddr); + st_ClientPeer.bIsLogin = true; + _tcsxcpy(st_ClientPeer.st_PeerAddr.tszConnectAddr, lpszClientAddr); if (!ModuleHelp_P2PClient_Add(&st_ClientPeer)) { ModuleProtocol_Packet_Common(tszRVBuffer, &nRVLen, 500, "内部错误"); - RfcComponents_HttpServer_SendMsgEx(xhHTTPPacket, tszSDBuffer, &nSDLen, &st_HDRParam, tszRVBuffer, nRVLen); + HttpProtocol_Server_SendMsgEx(xhHTTPPacket, tszSDBuffer, &nSDLen, &st_HDRParam, tszRVBuffer, nRVLen); XEngine_Network_Send(lpszClientAddr, tszSDBuffer, nSDLen); - XLOG_PRINT(xhLog, XENGINE_HELPCOMPONENTS_XLOG_IN_LOGLEVEL_ERROR, _T("HTTP客户端:%s,处理登录错误,设置用户信息失败,错误码:%lX"), lpszClientAddr, ModuleHelp_GetLastError()); - return FALSE; + XLOG_PRINT(xhLog, XENGINE_HELPCOMPONENTS_XLOG_IN_LOGLEVEL_ERROR, _X("HTTP客户端:%s,处理登录错误,设置用户信息失败,错误码:%lX"), lpszClientAddr, ModuleHelp_GetLastError()); + return false; } ModuleProtocol_Packet_Common(tszRVBuffer, &nRVLen); - RfcComponents_HttpServer_SendMsgEx(xhHTTPPacket, tszSDBuffer, &nSDLen, &st_HDRParam, tszRVBuffer, nRVLen); + HttpProtocol_Server_SendMsgEx(xhHTTPPacket, tszSDBuffer, &nSDLen, &st_HDRParam, tszRVBuffer, nRVLen); XEngine_Network_Send(lpszClientAddr, tszSDBuffer, nSDLen); - XLOG_PRINT(xhLog, XENGINE_HELPCOMPONENTS_XLOG_IN_LOGLEVEL_INFO, _T("HTTP客户端:%s,处理用户登录请求成功,用户名:%s"), lpszClientAddr, st_ClientPeer.st_PeerAddr.tszUserName); + XLOG_PRINT(xhLog, XENGINE_HELPCOMPONENTS_XLOG_IN_LOGLEVEL_INFO, _X("HTTP客户端:%s,处理用户登录请求成功,用户名:%s"), lpszClientAddr, st_ClientPeer.st_PeerAddr.tszUserName); } else if (XENGINE_COMMUNICATION_PROTOCOL_OPERATOR_CODE_P2XP_REQLANLIST == unOperatorCode) { @@ -65,35 +65,35 @@ BOOL XEngine_HTTPTask_P2PClient(LPCTSTR lpszClientAddr, LPCTSTR lpszMsgBuffer, i if (!ModuleProtocol_Parse_P2PClient(lpszMsgBuffer, nMsgLen, &st_P2PProtocol)) { ModuleProtocol_Packet_Common(tszRVBuffer, &nRVLen, 400, "协议错误"); - RfcComponents_HttpServer_SendMsgEx(xhHTTPPacket, tszSDBuffer, &nSDLen, &st_HDRParam, tszRVBuffer, nRVLen); + HttpProtocol_Server_SendMsgEx(xhHTTPPacket, tszSDBuffer, &nSDLen, &st_HDRParam, tszRVBuffer, nRVLen); XEngine_Network_Send(lpszClientAddr, tszSDBuffer, nSDLen); - XLOG_PRINT(xhLog, XENGINE_HELPCOMPONENTS_XLOG_IN_LOGLEVEL_ERROR, _T("HTTP客户端:%s,列表请求失败,协议解析错误,错误码:%lX"), lpszClientAddr, ModuleProtocol_GetLastError()); - return FALSE; + XLOG_PRINT(xhLog, XENGINE_HELPCOMPONENTS_XLOG_IN_LOGLEVEL_ERROR, _X("HTTP客户端:%s,列表请求失败,协议解析错误,错误码:%lX"), lpszClientAddr, ModuleProtocol_GetLastError()); + return false; } //请求同步列表 - if (_tcslen(st_P2PProtocol.tszPrivateAddr) > 0) + if (_tcsxlen(st_P2PProtocol.tszPrivateAddr) > 0) { int nListCount = 0; XENGINE_P2XPPEER_PROTOCOL** ppSt_ListClients; if (!ModuleHelp_P2PClient_GetLan(&st_P2PProtocol, &ppSt_ListClients, &nListCount)) { ModuleProtocol_Packet_Common(tszRVBuffer, &nRVLen, 500, "内部错误"); - RfcComponents_HttpServer_SendMsgEx(xhHTTPPacket, tszSDBuffer, &nSDLen, &st_HDRParam, tszRVBuffer, nRVLen); + HttpProtocol_Server_SendMsgEx(xhHTTPPacket, tszSDBuffer, &nSDLen, &st_HDRParam, tszRVBuffer, nRVLen); XEngine_Network_Send(lpszClientAddr, tszSDBuffer, nSDLen); - XLOG_PRINT(xhLog, XENGINE_HELPCOMPONENTS_XLOG_IN_LOGLEVEL_ERROR, _T("HTTP客户端:%s,列表请求失败,请求同步局域网列表失败,公有地址:%s,私有地址:%s,错误码:%lX"), lpszClientAddr, st_P2PProtocol.tszPublicAddr, st_P2PProtocol.tszPrivateAddr, ModuleHelp_GetLastError()); - return FALSE; + XLOG_PRINT(xhLog, XENGINE_HELPCOMPONENTS_XLOG_IN_LOGLEVEL_ERROR, _X("HTTP客户端:%s,列表请求失败,请求同步局域网列表失败,公有地址:%s,私有地址:%s,错误码:%lX"), lpszClientAddr, st_P2PProtocol.tszPublicAddr, st_P2PProtocol.tszPrivateAddr, ModuleHelp_GetLastError()); + return false; } ModuleProtocol_Packet_P2PLan(tszRVBuffer, &nRVLen, &ppSt_ListClients, nListCount); - RfcComponents_HttpServer_SendMsgEx(xhHTTPPacket, tszSDBuffer, &nSDLen, &st_HDRParam, tszRVBuffer, nRVLen); + HttpProtocol_Server_SendMsgEx(xhHTTPPacket, tszSDBuffer, &nSDLen, &st_HDRParam, tszRVBuffer, nRVLen); XEngine_Network_Send(lpszClientAddr, tszSDBuffer, nSDLen); BaseLib_OperatorMemory_Free((XPPPMEM)&ppSt_ListClients, nListCount); - XLOG_PRINT(xhLog, XENGINE_HELPCOMPONENTS_XLOG_IN_LOGLEVEL_INFO, _T("HTTP客户端:%s,请求同步局域网列表成功,公有地址:%s,私有地址:%s"), lpszClientAddr, st_P2PProtocol.tszPublicAddr, st_P2PProtocol.tszPrivateAddr); + XLOG_PRINT(xhLog, XENGINE_HELPCOMPONENTS_XLOG_IN_LOGLEVEL_INFO, _X("HTTP客户端:%s,请求同步局域网列表成功,公有地址:%s,私有地址:%s"), lpszClientAddr, st_P2PProtocol.tszPublicAddr, st_P2PProtocol.tszPrivateAddr); } else { //公网下所有列表 int nListCount = 0; - TCHAR** ppszClientList; + XCHAR** ppszClientList; list stl_ListClient; if (ModuleHelp_P2PClient_GetLList(st_P2PProtocol.tszPublicAddr, &ppszClientList, &nListCount)) { @@ -103,7 +103,7 @@ BOOL XEngine_HTTPTask_P2PClient(LPCTSTR lpszClientAddr, LPCTSTR lpszMsgBuffer, i XENGINE_P2XPPEER_PROTOCOL** ppSt_ListClients; memset(st_P2PProtocol.tszPrivateAddr, '\0', sizeof(st_P2PProtocol.tszPrivateAddr)); - _tcscpy(st_P2PProtocol.tszPrivateAddr, ppszClientList[i]); + _tcsxcpy(st_P2PProtocol.tszPrivateAddr, ppszClientList[i]); if (ModuleHelp_P2PClient_GetLan(&st_P2PProtocol, &ppSt_ListClients, &nLanCount)) { @@ -117,17 +117,17 @@ BOOL XEngine_HTTPTask_P2PClient(LPCTSTR lpszClientAddr, LPCTSTR lpszMsgBuffer, i BaseLib_OperatorMemory_Free((XPPPMEM)&ppszClientList, nListCount); } ModuleProtocol_Packet_P2PWLan(tszRVBuffer, &nRVLen, &stl_ListClient); - RfcComponents_HttpServer_SendMsgEx(xhHTTPPacket, tszSDBuffer, &nSDLen, &st_HDRParam, tszRVBuffer, nRVLen); + HttpProtocol_Server_SendMsgEx(xhHTTPPacket, tszSDBuffer, &nSDLen, &st_HDRParam, tszRVBuffer, nRVLen); XEngine_Network_Send(lpszClientAddr, tszSDBuffer, nSDLen); - XLOG_PRINT(xhLog, XENGINE_HELPCOMPONENTS_XLOG_IN_LOGLEVEL_INFO, _T("HTTP客户端:%s,请求同步公有局域网列表成功,公有地址:%s"), lpszClientAddr, st_P2PProtocol.tszPublicAddr); + XLOG_PRINT(xhLog, XENGINE_HELPCOMPONENTS_XLOG_IN_LOGLEVEL_INFO, _X("HTTP客户端:%s,请求同步公有局域网列表成功,公有地址:%s"), lpszClientAddr, st_P2PProtocol.tszPublicAddr); } } else { st_HDRParam.nHttpCode = 404; - RfcComponents_HttpServer_SendMsgEx(xhHTTPPacket, tszSDBuffer, &nSDLen, &st_HDRParam); + HttpProtocol_Server_SendMsgEx(xhHTTPPacket, tszSDBuffer, &nSDLen, &st_HDRParam); XEngine_Network_Send(lpszClientAddr, tszSDBuffer, nSDLen); - XLOG_PRINT(xhLog, XENGINE_HELPCOMPONENTS_XLOG_IN_LOGLEVEL_WARN, _T("客户端:%s,请求了一条未知的子协议:%lX"), lpszClientAddr, unOperatorCode); + XLOG_PRINT(xhLog, XENGINE_HELPCOMPONENTS_XLOG_IN_LOGLEVEL_WARN, _X("客户端:%s,请求了一条未知的子协议:%lX"), lpszClientAddr, unOperatorCode); } - return TRUE; + return true; } \ No newline at end of file diff --git a/XEngine_Source/XEngine_ServiceApp/XEngine_HttpApp/XEngine_TaskPost/TaskPost_P2PClient.h b/XEngine_Source/XEngine_ServiceApp/XEngine_HttpApp/XEngine_TaskPost/TaskPost_P2PClient.h new file mode 100644 index 0000000000000000000000000000000000000000..87a364e83fb250fea97f3f9f39ef12eec66973e3 --- /dev/null +++ b/XEngine_Source/XEngine_ServiceApp/XEngine_HttpApp/XEngine_TaskPost/TaskPost_P2PClient.h @@ -0,0 +1,4 @@ +#pragma once + +void CALLBACK HTTPTask_TastPost_P2PCallback(XENGINE_P2XPPEER_PROTOCOL* pSt_P2PProtocol, XPVOID lParam); +bool HTTPTask_TastPost_P2PClient(LPCXSTR lpszClientAddr, LPCXSTR lpszMsgBuffer, int nMsgLen, int unOperatorCode); \ No newline at end of file diff --git a/XEngine_Source/XEngine_ServiceApp/XEngine_HttpApp/XEngine_HTTPTask/HTTPTask_PostCode.cpp b/XEngine_Source/XEngine_ServiceApp/XEngine_HttpApp/XEngine_TaskPost/TaskPost_PostCode.cpp similarity index 70% rename from XEngine_Source/XEngine_ServiceApp/XEngine_HttpApp/XEngine_HTTPTask/HTTPTask_PostCode.cpp rename to XEngine_Source/XEngine_ServiceApp/XEngine_HttpApp/XEngine_TaskPost/TaskPost_PostCode.cpp index a83e8501eba5905ac4f074161ef8c7be08b7c7cf..d0833fd1b497a76ab474ff7b3f5ae0efddcff691 100644 --- a/XEngine_Source/XEngine_ServiceApp/XEngine_HttpApp/XEngine_HTTPTask/HTTPTask_PostCode.cpp +++ b/XEngine_Source/XEngine_ServiceApp/XEngine_HttpApp/XEngine_TaskPost/TaskPost_PostCode.cpp @@ -1,11 +1,11 @@ #include "../XEngine_Hdr.h" -BOOL XEngine_HTTPTask_PostCode(LPCTSTR lpszClientAddr, LPCTSTR lpszMsgBuffer, int nMsgLen, int nType) +bool HTTPTask_TastPost_PostCode(LPCXSTR lpszClientAddr, LPCXSTR lpszMsgBuffer, int nMsgLen, int nType) { int nSDLen = 4096; int nRVLen = 4096; - TCHAR tszSDBuffer[4096]; - TCHAR tszRVBuffer[4096]; + XCHAR tszSDBuffer[4096]; + XCHAR tszRVBuffer[4096]; XENGINE_ZIPINFO st_ZIPInfo; RFCCOMPONENTS_HTTP_HDRPARAM st_HDRParam; //发送给客户端的参数 @@ -15,7 +15,7 @@ BOOL XEngine_HTTPTask_PostCode(LPCTSTR lpszClientAddr, LPCTSTR lpszMsgBuffer, in memset(&st_HDRParam, '\0', sizeof(RFCCOMPONENTS_HTTP_HDRPARAM)); st_HDRParam.nHttpCode = 200; //HTTP CODE码 - st_HDRParam.bIsClose = TRUE; //收到回复后就关闭 + st_HDRParam.bIsClose = true; //收到回复后就关闭 ModuleProtocol_Parse_ZIPCode(lpszMsgBuffer, nMsgLen, &st_ZIPInfo); if (0 == nType) @@ -28,8 +28,8 @@ BOOL XEngine_HTTPTask_PostCode(LPCTSTR lpszClientAddr, LPCTSTR lpszMsgBuffer, in } ModuleProtocol_Packet_ZIPCode(tszRVBuffer, &nRVLen, &st_ZIPInfo); - RfcComponents_HttpServer_SendMsgEx(xhHTTPPacket, tszSDBuffer, &nSDLen, &st_HDRParam, tszRVBuffer, nRVLen); + HttpProtocol_Server_SendMsgEx(xhHTTPPacket, tszSDBuffer, &nSDLen, &st_HDRParam, tszRVBuffer, nRVLen); XEngine_Network_Send(lpszClientAddr, tszSDBuffer, nSDLen); - XLOG_PRINT(xhLog, XENGINE_HELPCOMPONENTS_XLOG_IN_LOGLEVEL_INFO, _T("HTTP客户端:%s,请求查询邮政编码地址信息查询成功,查询邮编;%d,查询地址:%s"), lpszClientAddr, st_ZIPInfo.nZipCode, st_ZIPInfo.tszCounty); - return TRUE; + XLOG_PRINT(xhLog, XENGINE_HELPCOMPONENTS_XLOG_IN_LOGLEVEL_INFO, _X("HTTP客户端:%s,请求查询邮政编码地址信息查询成功,查询邮编;%d,查询地址:%s"), lpszClientAddr, st_ZIPInfo.nZipCode, st_ZIPInfo.tszCounty); + return true; } \ No newline at end of file diff --git a/XEngine_Source/XEngine_ServiceApp/XEngine_HttpApp/XEngine_TaskPost/TaskPost_PostCode.h b/XEngine_Source/XEngine_ServiceApp/XEngine_HttpApp/XEngine_TaskPost/TaskPost_PostCode.h new file mode 100644 index 0000000000000000000000000000000000000000..047005550d3e73da47e0942c86d33b07408077e9 --- /dev/null +++ b/XEngine_Source/XEngine_ServiceApp/XEngine_HttpApp/XEngine_TaskPost/TaskPost_PostCode.h @@ -0,0 +1,3 @@ +#pragma once + +bool HTTPTask_TastPost_PostCode(LPCXSTR lpszClientAddr, LPCXSTR lpszMsgBuffer, int nMsgLen, int nType); \ No newline at end of file diff --git a/XEngine_Source/XEngine_ServiceApp/XEngine_HttpApp/XEngine_HTTPTask/HTTPTask_QRCode.cpp b/XEngine_Source/XEngine_ServiceApp/XEngine_HttpApp/XEngine_TaskPost/TaskPost_QRCode.cpp similarity index 64% rename from XEngine_Source/XEngine_ServiceApp/XEngine_HttpApp/XEngine_HTTPTask/HTTPTask_QRCode.cpp rename to XEngine_Source/XEngine_ServiceApp/XEngine_HttpApp/XEngine_TaskPost/TaskPost_QRCode.cpp index 2fe487a3c41857d9cb11dc348990e8a86db65099..03456e2384d17e14adc755d5a78ffec1daa3c181 100644 --- a/XEngine_Source/XEngine_ServiceApp/XEngine_HttpApp/XEngine_HTTPTask/HTTPTask_QRCode.cpp +++ b/XEngine_Source/XEngine_ServiceApp/XEngine_HttpApp/XEngine_TaskPost/TaskPost_QRCode.cpp @@ -1,11 +1,11 @@ #include "../XEngine_Hdr.h" -BOOL XEngine_HTTPTask_QRCode(LPCTSTR lpszClientAddr, LPCTSTR lpszMsgBuffer, int nMsgLen, int nType) +bool HTTPTask_TaskPost_QRCode(LPCXSTR lpszClientAddr, LPCXSTR lpszMsgBuffer, int nMsgLen, int nType) { int nSDLen = 0; int nRVLen = 0; - TCHAR *ptszSDBuffer = (TCHAR *)malloc(XENGIEN_APISERVICE_BUFFER_SIZE); - TCHAR *ptszRVBuffer = (TCHAR *)malloc(XENGIEN_APISERVICE_BUFFER_SIZE); + XCHAR *ptszSDBuffer = (XCHAR *)malloc(XENGIEN_APISERVICE_BUFFER_SIZE); + XCHAR *ptszRVBuffer = (XCHAR *)malloc(XENGIEN_APISERVICE_BUFFER_SIZE); XENGINE_QRCODE st_QRCode; RFCCOMPONENTS_HTTP_HDRPARAM st_HDRParam; //发送给客户端的参数 @@ -15,28 +15,28 @@ BOOL XEngine_HTTPTask_QRCode(LPCTSTR lpszClientAddr, LPCTSTR lpszMsgBuffer, int memset(&st_HDRParam, '\0', sizeof(RFCCOMPONENTS_HTTP_HDRPARAM)); st_HDRParam.nHttpCode = 200; //HTTP CODE码 - st_HDRParam.bIsClose = TRUE; //收到回复后就关闭 + st_HDRParam.bIsClose = true; //收到回复后就关闭 //0创建,1解析 if (0 == nType) { ModuleProtocol_Parse_QRCode(lpszMsgBuffer, nMsgLen, &st_QRCode); - _tcscpy(st_HDRParam.tszMimeType, st_QRCode.tszFmtBuffer + 1); + _tcsxcpy(st_HDRParam.tszMimeType, st_QRCode.tszFmtBuffer + 1); ModuleHelp_QRCode_QREncodecMemory(st_QRCode.tszMsgBuffer, ptszRVBuffer, &nRVLen, st_QRCode.tszFmtBuffer); - RfcComponents_HttpServer_SendMsgEx(xhHTTPPacket, ptszSDBuffer, &nSDLen, &st_HDRParam, ptszRVBuffer, nRVLen); + HttpProtocol_Server_SendMsgEx(xhHTTPPacket, ptszSDBuffer, &nSDLen, &st_HDRParam, ptszRVBuffer, nRVLen); XEngine_Network_Send(lpszClientAddr, ptszSDBuffer, nSDLen); - XLOG_PRINT(xhLog, XENGINE_HELPCOMPONENTS_XLOG_IN_LOGLEVEL_INFO, _T("HTTP客户端:%s,请求创建二维码成功,创建的二维码数据:%s"), lpszClientAddr, st_QRCode.tszMsgBuffer); + XLOG_PRINT(xhLog, XENGINE_HELPCOMPONENTS_XLOG_IN_LOGLEVEL_INFO, _X("HTTP客户端:%s,请求创建二维码成功,创建的二维码数据:%s"), lpszClientAddr, st_QRCode.tszMsgBuffer); } else { ModuleHelp_QRCode_QRDecodecMemory(lpszMsgBuffer, nMsgLen, ptszRVBuffer, st_QRCodeConfig.tszProtoDetect, st_QRCodeConfig.tszModelDetect, st_QRCodeConfig.tszProtoSr, st_QRCodeConfig.tszModelSr); - nRVLen = _tcslen(ptszRVBuffer); - RfcComponents_HttpServer_SendMsgEx(xhHTTPPacket, ptszSDBuffer, &nSDLen, &st_HDRParam, ptszRVBuffer, nRVLen); + nRVLen = _tcsxlen(ptszRVBuffer); + HttpProtocol_Server_SendMsgEx(xhHTTPPacket, ptszSDBuffer, &nSDLen, &st_HDRParam, ptszRVBuffer, nRVLen); XEngine_Network_Send(lpszClientAddr, ptszSDBuffer, nSDLen); - XLOG_PRINT(xhLog, XENGINE_HELPCOMPONENTS_XLOG_IN_LOGLEVEL_INFO, _T("HTTP客户端:%s,请求二维码解析成功,解析的数据:%s"), lpszClientAddr, ptszRVBuffer); + XLOG_PRINT(xhLog, XENGINE_HELPCOMPONENTS_XLOG_IN_LOGLEVEL_INFO, _X("HTTP客户端:%s,请求二维码解析成功,解析的数据:%s"), lpszClientAddr, ptszRVBuffer); } free(ptszRVBuffer); free(ptszSDBuffer); ptszRVBuffer = NULL; ptszSDBuffer = NULL; - return TRUE; + return true; } \ No newline at end of file diff --git a/XEngine_Source/XEngine_ServiceApp/XEngine_HttpApp/XEngine_HTTPTask/HTTPTask_Log.h b/XEngine_Source/XEngine_ServiceApp/XEngine_HttpApp/XEngine_TaskPost/TaskPost_QRCode.h similarity index 45% rename from XEngine_Source/XEngine_ServiceApp/XEngine_HttpApp/XEngine_HTTPTask/HTTPTask_Log.h rename to XEngine_Source/XEngine_ServiceApp/XEngine_HttpApp/XEngine_TaskPost/TaskPost_QRCode.h index 3379ca0cf0d8a59cae2763e62c577671c11e6e82..5013bdfa41a880e94ab2157306beea488be82576 100644 --- a/XEngine_Source/XEngine_ServiceApp/XEngine_HttpApp/XEngine_HTTPTask/HTTPTask_Log.h +++ b/XEngine_Source/XEngine_ServiceApp/XEngine_HttpApp/XEngine_TaskPost/TaskPost_QRCode.h @@ -1,3 +1,3 @@ #pragma once -BOOL XEngine_HTTPTask_LogInfo(LPCTSTR lpszClientAddr, LPCTSTR lpszMsgBuffer, int nMsgLen, int nType); \ No newline at end of file +bool HTTPTask_TaskPost_QRCode(LPCXSTR lpszClientAddr, LPCXSTR lpszMsgBuffer, int nMsgLen, int nType); \ No newline at end of file diff --git a/XEngine_Source/XEngine_ServiceApp/XEngine_HttpApp/XEngine_TaskPost/TaskPost_ShortLink.cpp b/XEngine_Source/XEngine_ServiceApp/XEngine_HttpApp/XEngine_TaskPost/TaskPost_ShortLink.cpp new file mode 100644 index 0000000000000000000000000000000000000000..bb1a9b9b87af7d7b3a2421a2f975c3b68b6d68a7 --- /dev/null +++ b/XEngine_Source/XEngine_ServiceApp/XEngine_HttpApp/XEngine_TaskPost/TaskPost_ShortLink.cpp @@ -0,0 +1,118 @@ +#include "../XEngine_Hdr.h" + +bool HTTPTask_TaskPost_SLProxy(LPCXSTR lpszClientAddr, LPCXSTR lpszUriStr, XCHAR*** ppptszHDRList, int nHDRCount) +{ + //是不是代理转发 + bool bFound = false; + for (int i = 0; i < nHDRCount; i++) + { + XCHAR tszKey[MAX_PATH]; + XCHAR tszValue[MAX_PATH]; + + memset(tszKey, '\0', sizeof(tszKey)); + memset(tszValue, '\0', sizeof(tszValue)); + + BaseLib_OperatorString_GetKeyValue((*ppptszHDRList)[i], ": ", tszKey, tszValue); + if (0 == _tcsxnicmp(st_ServiceConfig.st_XShortLink.tszHostUrl, tszValue, _tcsxlen(st_ServiceConfig.st_XShortLink.tszHostUrl))) + { + bFound = true; + break; + } + } + if (!bFound) + { + return false; + } + int nSDLen = 0; + XCHAR tszSDBuffer[4096]; + XCHAR tszRVBuffer[4096]; + XENGINE_SHORTLINK st_ShortLink; + RFCCOMPONENTS_HTTP_HDRPARAM st_HDRParam; + + memset(tszSDBuffer, '\0', sizeof(tszSDBuffer)); + memset(tszRVBuffer, '\0', sizeof(tszRVBuffer)); + memset(&st_ShortLink, '\0', sizeof(XENGINE_SHORTLINK)); + memset(&st_HDRParam, '\0', sizeof(RFCCOMPONENTS_HTTP_HDRPARAM)); + + _xstprintf(st_ShortLink.tszMapUrl, _X("http://%s%s"), st_ServiceConfig.st_XShortLink.tszHostUrl, lpszUriStr); + if (!ModuleDatabase_ShortLink_Query(&st_ShortLink)) + { + return false; + } + st_HDRParam.nHttpCode = st_ServiceConfig.st_XShortLink.nHTTPCode; + st_HDRParam.bIsClose = true; + + _xstprintf(tszRVBuffer, _X("Location: %s\r\n"), st_ShortLink.tszFullUrl); + HttpProtocol_Server_SendMsgEx(xhHTTPPacket, tszSDBuffer, &nSDLen, &st_HDRParam, NULL, 0, tszRVBuffer); + XEngine_Network_Send(lpszClientAddr, tszSDBuffer, nSDLen); + XLOG_PRINT(xhLog, XENGINE_HELPCOMPONENTS_XLOG_IN_LOGLEVEL_INFO, _X("HTTP客户端:%s,请求的短连接地址重定向成功,短连接:%s,长连接:%s"), lpszClientAddr, st_ShortLink.tszMapUrl, st_ShortLink.tszFullUrl); + return true; +} +bool HTTPTask_TaskPost_ShortLink(LPCXSTR lpszClientAddr, LPCXSTR lpszMsgBuffer, int nMsgLen, int nType) +{ + int nSDLen = 0; + int nRVLen = 0; + XCHAR tszSDBuffer[4096]; + XCHAR tszRVBuffer[4096]; + XENGINE_SHORTLINK st_ShortLink; + RFCCOMPONENTS_HTTP_HDRPARAM st_HDRParam; //发送给客户端的参数 + + memset(tszSDBuffer, '\0', sizeof(tszSDBuffer)); + memset(tszRVBuffer, '\0', sizeof(tszRVBuffer)); + memset(&st_ShortLink, '\0', sizeof(XENGINE_SHORTLINK)); + memset(&st_HDRParam, '\0', sizeof(RFCCOMPONENTS_HTTP_HDRPARAM)); + + st_HDRParam.nHttpCode = 200; //HTTP CODE码 + st_HDRParam.bIsClose = true; //收到回复后就关闭 + + ModuleProtocol_Parse_ShortLink(lpszMsgBuffer, nMsgLen, &st_ShortLink); + //0生成,1还原,2删除 + if (0 == nType) + { + BaseLib_OperatorTime_TimeToStr(st_ShortLink.tszCreateTime); + if (!HttpProtocol_ServerHelp_ShortLink(st_ShortLink.tszFullUrl, st_ShortLink.tszShotUrl, st_ShortLink.tszKeyUrl, st_ShortLink.nLength, st_ShortLink.tszCvtUrl)) + { + st_HDRParam.nHttpCode = 400; + HttpProtocol_Server_SendMsgEx(xhHTTPPacket, tszSDBuffer, &nSDLen, &st_HDRParam); + XEngine_Network_Send(lpszClientAddr, tszSDBuffer, nSDLen); + XLOG_PRINT(xhLog, XENGINE_HELPCOMPONENTS_XLOG_IN_LOGLEVEL_ERROR, _X("HTTP客户端:%s,请求生成短连接生成错误,生成的连接:%s,替换的连接:%s,错误码:%lX"), lpszClientAddr, st_ShortLink.tszFullUrl, st_ShortLink.tszCvtUrl, HttpProtocol_GetLastError()); + return false; + } + _xstprintf(st_ShortLink.tszMapUrl, _X("%s/%s"), st_ShortLink.tszShotUrl, st_ShortLink.tszKeyUrl); + if (!ModuleDatabase_ShortLink_Insert(&st_ShortLink)) + { + st_HDRParam.nHttpCode = 400; + HttpProtocol_Server_SendMsgEx(xhHTTPPacket, tszSDBuffer, &nSDLen, &st_HDRParam); + XEngine_Network_Send(lpszClientAddr, tszSDBuffer, nSDLen); + XLOG_PRINT(xhLog, XENGINE_HELPCOMPONENTS_XLOG_IN_LOGLEVEL_ERROR, _X("HTTP客户端:%s,请求生成短连接插入数据库错误,生成的连接:%s,替换的连接:%s,错误码:%lX"), lpszClientAddr, st_ShortLink.tszFullUrl, st_ShortLink.tszCvtUrl, ModuleDB_GetLastError()); + return false; + } + } + else if (1 == nType) + { + if (!ModuleDatabase_ShortLink_Query(&st_ShortLink)) + { + st_HDRParam.nHttpCode = 400; + HttpProtocol_Server_SendMsgEx(xhHTTPPacket, tszSDBuffer, &nSDLen, &st_HDRParam); + XEngine_Network_Send(lpszClientAddr, tszSDBuffer, nSDLen); + XLOG_PRINT(xhLog, XENGINE_HELPCOMPONENTS_XLOG_IN_LOGLEVEL_ERROR, _X("HTTP客户端:%s,请求获取短连接错误,连接:%s,错误码:%lX"), lpszClientAddr, st_ShortLink.tszMapUrl, ModuleDB_GetLastError()); + return false; + } + } + else + { + if (!ModuleDatabase_ShortLink_Delete(&st_ShortLink)) + { + st_HDRParam.nHttpCode = 400; + HttpProtocol_Server_SendMsgEx(xhHTTPPacket, tszSDBuffer, &nSDLen, &st_HDRParam); + XEngine_Network_Send(lpszClientAddr, tszSDBuffer, nSDLen); + XLOG_PRINT(xhLog, XENGINE_HELPCOMPONENTS_XLOG_IN_LOGLEVEL_ERROR, _X("HTTP客户端:%s,请求删除短连接错误,完整地址:%s,映射地址:%s,错误码:%lX"), lpszClientAddr, st_ShortLink.tszFullUrl, st_ShortLink.tszMapUrl, ModuleDB_GetLastError()); + return false; + } + } + ModuleProtocol_Packet_ShortLink(tszRVBuffer, &nRVLen, &st_ShortLink); + HttpProtocol_Server_SendMsgEx(xhHTTPPacket, tszSDBuffer, &nSDLen, &st_HDRParam, tszRVBuffer, nRVLen); + XEngine_Network_Send(lpszClientAddr, tszSDBuffer, nSDLen); + XLOG_PRINT(xhLog, XENGINE_HELPCOMPONENTS_XLOG_IN_LOGLEVEL_INFO, _X("HTTP客户端:%s,请求操作短连接成功,操作类型:%d,完整地址URL:%s,映射URL:%s"), lpszClientAddr, nType, st_ShortLink.tszFullUrl, st_ShortLink.tszMapUrl); + return true; +} \ No newline at end of file diff --git a/XEngine_Source/XEngine_ServiceApp/XEngine_HttpApp/XEngine_TaskPost/TaskPost_ShortLink.h b/XEngine_Source/XEngine_ServiceApp/XEngine_HttpApp/XEngine_TaskPost/TaskPost_ShortLink.h new file mode 100644 index 0000000000000000000000000000000000000000..4d03d0ff1abfafea08b474270af71872b938cc7a --- /dev/null +++ b/XEngine_Source/XEngine_ServiceApp/XEngine_HttpApp/XEngine_TaskPost/TaskPost_ShortLink.h @@ -0,0 +1,4 @@ +#pragma once + +bool HTTPTask_TaskPost_SLProxy(LPCXSTR lpszClientAddr, LPCXSTR lpszUriStr, XCHAR*** ppptszHDRList, int nHDRCount); +bool HTTPTask_TaskPost_ShortLink(LPCXSTR lpszClientAddr, LPCXSTR lpszMsgBuffer, int nMsgLen, int nType); \ No newline at end of file diff --git a/XEngine_Source/XEngine_ServiceApp/XEngine_HttpApp/XEngine_HTTPTask/HTTPTask_SocketTest.cpp b/XEngine_Source/XEngine_ServiceApp/XEngine_HttpApp/XEngine_TaskPost/TaskPost_SocketTest.cpp similarity index 72% rename from XEngine_Source/XEngine_ServiceApp/XEngine_HttpApp/XEngine_HTTPTask/HTTPTask_SocketTest.cpp rename to XEngine_Source/XEngine_ServiceApp/XEngine_HttpApp/XEngine_TaskPost/TaskPost_SocketTest.cpp index e61d630babf2732d6a925e28d8048472a1ba93ae..57c6c0df888504c3fc117cf249d9139aaf855125 100644 --- a/XEngine_Source/XEngine_ServiceApp/XEngine_HttpApp/XEngine_HTTPTask/HTTPTask_SocketTest.cpp +++ b/XEngine_Source/XEngine_ServiceApp/XEngine_HttpApp/XEngine_TaskPost/TaskPost_SocketTest.cpp @@ -1,17 +1,17 @@ #include "../XEngine_Hdr.h" -void CALLBACK XEngine_HTTPTask_CBSocketTest(XNETHANDLE xhToken, LPCSTR lpszAddr, int nPort, __int64x nNumber, __int64x nFailed, __int64x nSuccess, int nStatus, LPVOID lParam) +void CALLBACK HTTPTask_TastPost_CBSocketTest(XNETHANDLE xhToken, LPCXSTR lpszAddr, int nPort, __int64x nNumber, __int64x nFailed, __int64x nSuccess, int nStatus, XPVOID lParam) { XENGINE_SOCKETTEST* pSt_SocketTest = (XENGINE_SOCKETTEST*)lParam; int nMsgLen = 0; - TCHAR tszMsgBuffer[4096]; + XCHAR tszMsgBuffer[4096]; memset(tszMsgBuffer, '\0', sizeof(tszMsgBuffer)); if (0 == pSt_SocketTest->nType) { //每次都报告 ModuleProtocol_Packet_TestReport(tszMsgBuffer, &nMsgLen, xhToken, lpszAddr, nPort, nNumber, nFailed, nSuccess, nStatus); - if (_tcslen(pSt_SocketTest->tszAPIUrl) > 0) + if (_tcsxlen(pSt_SocketTest->tszAPIUrl) > 0) { APIClient_Http_Request("POST", pSt_SocketTest->tszAPIUrl, tszMsgBuffer); } @@ -20,7 +20,7 @@ void CALLBACK XEngine_HTTPTask_CBSocketTest(XNETHANDLE xhToken, LPCSTR lpszAddr, { //成功报告 ModuleProtocol_Packet_TestReport(tszMsgBuffer, &nMsgLen, xhToken, lpszAddr, nPort, nNumber, nFailed, nSuccess, nStatus); - if (_tcslen(pSt_SocketTest->tszAPIUrl) > 0) + if (_tcsxlen(pSt_SocketTest->tszAPIUrl) > 0) { APIClient_Http_Request("POST", pSt_SocketTest->tszAPIUrl, tszMsgBuffer); } @@ -29,7 +29,7 @@ void CALLBACK XEngine_HTTPTask_CBSocketTest(XNETHANDLE xhToken, LPCSTR lpszAddr, { //失败报告 ModuleProtocol_Packet_TestReport(tszMsgBuffer, &nMsgLen, xhToken, lpszAddr, nPort, nNumber, nFailed, nSuccess, nStatus); - if (_tcslen(pSt_SocketTest->tszAPIUrl) > 0) + if (_tcsxlen(pSt_SocketTest->tszAPIUrl) > 0) { APIClient_Http_Request("POST", pSt_SocketTest->tszAPIUrl, tszMsgBuffer); } @@ -40,19 +40,19 @@ void CALLBACK XEngine_HTTPTask_CBSocketTest(XNETHANDLE xhToken, LPCSTR lpszAddr, { //结束报告 ModuleProtocol_Packet_TestReport(tszMsgBuffer, &nMsgLen, xhToken, lpszAddr, nPort, nNumber, nFailed, nSuccess, nStatus); - if (_tcslen(pSt_SocketTest->tszAPIUrl) > 0) + if (_tcsxlen(pSt_SocketTest->tszAPIUrl) > 0) { APIClient_Http_Request("POST", pSt_SocketTest->tszAPIUrl, tszMsgBuffer); } } } } -BOOL XEngine_HTTPTask_SocketTest(LPCTSTR lpszClientAddr, LPCTSTR lpszMsgBuffer, int nMsgLen, int nType) +bool HTTPTask_TastPost_SocketTest(LPCXSTR lpszClientAddr, LPCXSTR lpszMsgBuffer, int nMsgLen, int nType) { int nSDLen = 0; int nRVLen = 0; - TCHAR tszSDBuffer[4096]; - TCHAR tszRVBuffer[4096]; + XCHAR tszSDBuffer[4096]; + XCHAR tszRVBuffer[4096]; XENGINE_SOCKETTEST *pSt_SocketTest = new XENGINE_SOCKETTEST; RFCCOMPONENTS_HTTP_HDRPARAM st_HDRParam; //发送给客户端的参数 @@ -62,7 +62,7 @@ BOOL XEngine_HTTPTask_SocketTest(LPCTSTR lpszClientAddr, LPCTSTR lpszMsgBuffer, memset(&st_HDRParam, '\0', sizeof(RFCCOMPONENTS_HTTP_HDRPARAM)); st_HDRParam.nHttpCode = 200; //HTTP CODE码 - st_HDRParam.bIsClose = TRUE; //收到回复后就关闭 + st_HDRParam.bIsClose = true; //收到回复后就关闭 ModuleProtocol_Parse_SocketTest(lpszMsgBuffer, nMsgLen, pSt_SocketTest); //0创建,1删除 @@ -70,17 +70,17 @@ BOOL XEngine_HTTPTask_SocketTest(LPCTSTR lpszClientAddr, LPCTSTR lpszMsgBuffer, { if (pSt_SocketTest->bConn) { - ModuleHelp_SocketTest_StartConnect(&pSt_SocketTest->xhToken, &pSt_SocketTest->st_SocketConn, XEngine_HTTPTask_CBSocketTest, pSt_SocketTest); + ModuleHelp_SocketTest_StartConnect(&pSt_SocketTest->xhToken, &pSt_SocketTest->st_SocketConn, HTTPTask_TastPost_CBSocketTest, pSt_SocketTest); } else { memcpy(&pSt_SocketTest->st_SocketData.st_REConnect, &pSt_SocketTest->st_SocketConn, sizeof(MODULEHELP_SOCKETTEST_RECONNECT)); - ModuleHelp_SocketTest_StartDatas(&pSt_SocketTest->xhToken, &pSt_SocketTest->st_SocketData, XEngine_HTTPTask_CBSocketTest, pSt_SocketTest->bTCP, pSt_SocketTest); + ModuleHelp_SocketTest_StartDatas(&pSt_SocketTest->xhToken, &pSt_SocketTest->st_SocketData, HTTPTask_TastPost_CBSocketTest, pSt_SocketTest->bTCP, pSt_SocketTest); } ModuleProtocol_Packet_TestReply(tszRVBuffer, &nRVLen, pSt_SocketTest->xhToken); - RfcComponents_HttpServer_SendMsgEx(xhHTTPPacket, tszSDBuffer, &nSDLen, &st_HDRParam, tszRVBuffer, nRVLen); + HttpProtocol_Server_SendMsgEx(xhHTTPPacket, tszSDBuffer, &nSDLen, &st_HDRParam, tszRVBuffer, nRVLen); XEngine_Network_Send(lpszClientAddr, tszSDBuffer, nSDLen); - XLOG_PRINT(xhLog, XENGINE_HELPCOMPONENTS_XLOG_IN_LOGLEVEL_INFO, _T("HTTP客户端:%s,请求创建套接字测试成功,句柄:%lld,地址:%s:%d,TCP:%d,测试类型:%d"), lpszClientAddr, pSt_SocketTest->xhToken, pSt_SocketTest->st_SocketConn.tszAddr, pSt_SocketTest->st_SocketConn.nPort, pSt_SocketTest->bTCP, pSt_SocketTest->bConn); + XLOG_PRINT(xhLog, XENGINE_HELPCOMPONENTS_XLOG_IN_LOGLEVEL_INFO, _X("HTTP客户端:%s,请求创建套接字测试成功,句柄:%lld,地址:%s:%d,TCP:%d,测试类型:%d"), lpszClientAddr, pSt_SocketTest->xhToken, pSt_SocketTest->st_SocketConn.tszAddr, pSt_SocketTest->st_SocketConn.nPort, pSt_SocketTest->bTCP, pSt_SocketTest->bConn); } else { @@ -93,11 +93,11 @@ BOOL XEngine_HTTPTask_SocketTest(LPCTSTR lpszClientAddr, LPCTSTR lpszMsgBuffer, ModuleHelp_SocketTest_StopDatas(pSt_SocketTest->xhToken); } ModuleProtocol_Packet_Common(tszRVBuffer, &nRVLen); - RfcComponents_HttpServer_SendMsgEx(xhHTTPPacket, tszSDBuffer, &nSDLen, &st_HDRParam, tszRVBuffer, nRVLen); + HttpProtocol_Server_SendMsgEx(xhHTTPPacket, tszSDBuffer, &nSDLen, &st_HDRParam, tszRVBuffer, nRVLen); XEngine_Network_Send(lpszClientAddr, tszSDBuffer, nSDLen); - XLOG_PRINT(xhLog, XENGINE_HELPCOMPONENTS_XLOG_IN_LOGLEVEL_INFO, _T("HTTP客户端:%s,请求销毁套接字测试成功,句柄:%lld"), lpszClientAddr, pSt_SocketTest->xhToken); + XLOG_PRINT(xhLog, XENGINE_HELPCOMPONENTS_XLOG_IN_LOGLEVEL_INFO, _X("HTTP客户端:%s,请求销毁套接字测试成功,句柄:%lld"), lpszClientAddr, pSt_SocketTest->xhToken); delete pSt_SocketTest; pSt_SocketTest = NULL; } - return TRUE; + return true; } \ No newline at end of file diff --git a/XEngine_Source/XEngine_ServiceApp/XEngine_HttpApp/XEngine_TaskPost/TaskPost_SocketTest.h b/XEngine_Source/XEngine_ServiceApp/XEngine_HttpApp/XEngine_TaskPost/TaskPost_SocketTest.h new file mode 100644 index 0000000000000000000000000000000000000000..efb7d17e1ac3cb1b1a8294b5691f329b5d8acc2b --- /dev/null +++ b/XEngine_Source/XEngine_ServiceApp/XEngine_HttpApp/XEngine_TaskPost/TaskPost_SocketTest.h @@ -0,0 +1,4 @@ +#pragma once + +void CALLBACK HTTPTask_TastPost_CBSocketTest(XNETHANDLE xhToken, LPCXSTR lpszAddr, int nPort, __int64x nNumber, __int64x nFailed, __int64x nSuccess, int nStatus, XPVOID lParam); +bool HTTPTask_TastPost_SocketTest(LPCXSTR lpszClientAddr, LPCXSTR lpszMsgBuffer, int nMsgLen, int nType); \ No newline at end of file diff --git a/XEngine_Source/XEngine_ThirdPart/jsoncpp/Makefile b/XEngine_Source/XEngine_ThirdPart/jsoncpp/Makefile index 4611006188f7ccdafb5a938e3945c45a1fd2affa..39af933f1d734cf10ea5cee4be99b9aa2d3f3d65 100644 --- a/XEngine_Source/XEngine_ThirdPart/jsoncpp/Makefile +++ b/XEngine_Source/XEngine_ThirdPart/jsoncpp/Makefile @@ -1,52 +1,66 @@ CC = g++ -Wall -std=c++17 -fPIC -SHAREFLAG = -shared -SHAREDLL = so +PLATFORM = linux +PLATVER = +PLATDIR = +FILEEXT = +LIBFLAG = RELEASE = 0 UNICODE = 0 -INCLUDE = -I ./ -FILECENTOS = /etc/redhat-release -LOADBIN = +LOADHDR = -I ./ +LOADSO = -L LIB = -LIBEX = -ldl -lpthread -LOADSO = -Wl,-rpath= -LIBINCLUDE = json_reader.o json_value.o json_writer.o - -ifeq ($(shell uname),Darwin) - SHAREDLL = dylib - SHAREFLAG = -dynamiclib - LOADSO = -else - SHAREDLL = so - SHAREFLAG = -shared -endif +LIBEX = +OBJECTS = json_reader.o json_value.o json_writer.o ifeq ($(RELEASE),1) -FLAGS = -c -O2 -DEBUG = -else FLAGS = -c -DEBUG = -g +DEBUG = +else +FLAGS = -c -lc_p +DEBUG = -g -pg endif ifeq ($(UNICODE),1) UNICODE = -D _UNICODE else -UNICODE = +UNICODE = +endif + +ifeq ($(PLATFORM),linux) + ifeq (/etc/redhat-release,$(wildcard /etc/redhat-release)) + PLATVER = -D __CENTOS__ + PLATDIR = XEngine_Linux/Centos + else + PLATVER = -D __UBUNTU__ + PLATDIR = XEngine_Linux/Ubuntu + endif + FILEEXT = so + LIBFLAG = -shared + LIBEX = -lpthread -lrt -ldl + LOADBIN = -Wl,-rpath=./,--disable-new-dtags +else ifeq ($(PLATFORM),mac) + CC += -Wno-deprecated-declarations + PLATVER = -D __MACOS__ + PLATDIR = XEngine_Mac + FILEEXT = dylib + LIBFLAG = -dynamiclib + LIBEX = -lpthread -ldl + LOADBIN = -Wl,-rpath,@loader_path/./ endif -all:$(LIBINCLUDE) - $(CC) $(DEBUG) $(LIBINCLUDE) -o libjsoncpp.$(SHAREDLL) $(SHAREFLAG) -fPIC $(LOADBIN) $(LIB) $(LIBEX) $(LOADSO) +all:$(OBJECTS) + $(CC) $(DEBUG) $(OBJECTS) -o libjsoncpp.$(FILEEXT) $(LIBFLAG) $(LIB) $(LIBEX) $(LOADSO) $(LOADBIN) json_reader.o:json_reader.cpp - $(CC) $(DEBUG) $(FLAGS) $(UNICODE) $(INCLUDE) json_reader.cpp + $(CC) $(DEBUG) $(FLAGS) $(UNICODE) $(PLATVER) $(LOADHDR) json_reader.cpp json_value.o:json_value.cpp - $(CC) $(DEBUG) $(FLAGS) $(UNICODE) $(INCLUDE) json_value.cpp + $(CC) $(DEBUG) $(FLAGS) $(UNICODE) $(PLATVER) $(LOADHDR) json_value.cpp json_writer.o:json_writer.cpp - $(CC) $(DEBUG) $(FLAGS) $(UNICODE) $(INCLUDE) json_writer.cpp + $(CC) $(DEBUG) $(FLAGS) $(UNICODE) $(PLATVER) $(LOADHDR) json_writer.cpp InstallAll:InstallSo -InstallSo:./libjsoncpp.$(SHAREDLL) - cp ./libjsoncpp.$(SHAREDLL) ../../../XEngine_Release/libjsoncpp.$(SHAREDLL) +InstallSo:./libjsoncpp.$(FILEEXT) + cp ./libjsoncpp.$(FILEEXT) ../../../XEngine_Release/libjsoncpp.$(FILEEXT) @@ -54,4 +68,4 @@ CleanAll:CleanObj CleanMk CleanObj: rm *.o CleanMk: - rm *.$(SHAREDLL) + rm *.$(FILEEXT) diff --git a/XEngine_Source/XEngine_UserProtocol.h b/XEngine_Source/XEngine_UserProtocol.h index 6b5fedf03bc9fb141604c7d1ad7ee97f2e009d87..421b597923db36f35a378669ca726ecac7f78d08 100644 --- a/XEngine_Source/XEngine_UserProtocol.h +++ b/XEngine_Source/XEngine_UserProtocol.h @@ -95,65 +95,65 @@ typedef enum //身份证校验 typedef struct { - TCHAR tszIDNumber[20]; - WORD nIDProvince; //省/自治区/直辖市 - WORD nIDCity; //市/区 - WORD nIDCounty; //县 - WORD nBirthYear; //出生年 - WORD nBirthMonth; //出生月 - WORD nBirthDay; //出生日 - WORD nPoliceID; //派出所编码 - WORD nSex; //性别 - WORD nCheck; //校验码 + XCHAR tszIDNumber[20]; + XSHOT nIDProvince; //省/自治区/直辖市 + XSHOT nIDCity; //市/区 + XSHOT nIDCounty; //县 + XSHOT nBirthYear; //出生年 + XSHOT nBirthMonth; //出生月 + XSHOT nBirthDay; //出生日 + XSHOT nPoliceID; //派出所编码 + XSHOT nSex; //性别 + XSHOT nCheck; //校验码 }XENGINE_IDCARDINFO; //行政区域 typedef struct { - TCHAR tszProvincer[64]; //省/自治区/直辖市 - TCHAR tszCity[64]; //市/区 - TCHAR tszCounty[64]; //县 + XCHAR tszProvincer[64]; //省/自治区/直辖市 + XCHAR tszCity[64]; //市/区 + XCHAR tszCounty[64]; //县 }XENGINE_IDREGION; //银行卡 typedef struct { - TCHAR tszBankNumber[MAX_PATH]; //银行卡号 - TCHAR tszBankName[MAX_PATH]; //银行卡名称 - TCHAR tszBankAbridge[MAX_PATH]; //银行卡缩写 + XCHAR tszBankNumber[MAX_PATH]; //银行卡号 + XCHAR tszBankName[MAX_PATH]; //银行卡名称 + XCHAR tszBankAbridge[MAX_PATH]; //银行卡缩写 ENUM_XENGINE_APISERVICE_BANK_TYPE enBankType; }XENGINE_BANKINFO; //语言转换 typedef struct { - TCHAR tszSourceStr[1024]; //原始字符串 - TCHAR tszDestStr[1024]; //转换字符串 + XCHAR tszSourceStr[1024]; //原始字符串 + XCHAR tszDestStr[1024]; //转换字符串 int enType; //简繁为ENUM_XENGINE_APISERVICE_LANGUAGE_TYPE 翻译为ENUM_XENGINE_APISERVICE_TRANSLATION_TYPE }XENGINE_LANGUAGEINFO; //连接信息 typedef struct { - CHAR tszUserName[64]; //用户信息 - CHAR tszPrivateAddr[32]; //私有本地地址,内网地址 - CHAR tszPublicAddr[32]; //外网地址 - CHAR tszConnectAddr[32]; //链接地址 - WORD dwConnectType; //连接类型 - WORD dwPeerType; //节点类型 + XCHAR tszUserName[64]; //用户信息 + XCHAR tszPrivateAddr[32]; //私有本地地址,内网地址 + XCHAR tszPublicAddr[32]; //外网地址 + XCHAR tszConnectAddr[32]; //链接地址 + XSHOT dwConnectType; //连接类型 + XSHOT dwPeerType; //节点类型 }XENGINE_P2XPPEER_PROTOCOL, * LPXENGINE_P2XPPEER_PROTOCOL; //P2XP通道连接命令 typedef struct tag_XEngine_P2XPIO_Protocol { - CHAR tszSourceUser[32]; //请求连接的用户 - CHAR tszDestUser[32]; //要连接的用户 - CHAR tszConnectAddr[32]; //连接的IP地址 + XCHAR tszSourceUser[32]; //请求连接的用户 + XCHAR tszDestUser[32]; //要连接的用户 + XCHAR tszConnectAddr[32]; //连接的IP地址 int nDestPort; //要连接的端口 - BOOL bIsTcp; //连接类型TCP,否则为UDP + bool bIsTcp; //连接类型TCP,否则为UDP }XENGINE_P2XPIO_PROTOCOL, * LPXENGINE_P2XPIO_PROTOCOL; //邮编信息 typedef struct { - TCHAR tszProvincer[64]; //省/自治区/直辖市 - TCHAR tszCity[64]; //市/区 - TCHAR tszCounty[64]; //县 - TCHAR tszPinYin[64]; //拼音 + XCHAR tszProvincer[64]; //省/自治区/直辖市 + XCHAR tszCity[64]; //市/区 + XCHAR tszCounty[64]; //县 + XCHAR tszPinYin[64]; //拼音 double dlLng; //经度 double dlLat; //纬度 int nZipCode; //邮编 @@ -164,22 +164,22 @@ typedef struct typedef struct { XENGINE_PROTOCOL_XLOG st_ProtocolLog; - TCHAR tszLogBuffer[10240]; - TCHAR tszTableName[128]; - TCHAR tszTimeStart[128]; - TCHAR tszTimeEnd[128]; + XCHAR tszLogBuffer[10240]; + XCHAR tszTableName[128]; + XCHAR tszTimeStart[128]; + XCHAR tszTimeEnd[128]; int nLogSize; }XENGINE_XLOGINFO; //二维码 typedef struct { - TCHAR tszMsgBuffer[4096]; - TCHAR tszFmtBuffer[8]; + XCHAR tszMsgBuffer[4096]; + XCHAR tszFmtBuffer[8]; }XENGINE_QRCODE; //网络测试 typedef struct { - CHAR tszAddr[64]; //要测试的IP地址 + XCHAR tszAddr[64]; //要测试的IP地址 int nPort; //端口号码 //单位毫秒 int nConnectCount; //要测试的客户端个数 @@ -193,17 +193,29 @@ typedef struct MODULEHELP_SOCKETTEST_RECONNECT st_REConnect; int nSDLen; //发送数据包大小,如果ptszSDBuffer的值为NULL,那么这个值表示测试端允许发送的大小,否则表示缓冲区大小 int nRVLen; //接收端大小,表示ptszRVBuffer缓冲区大小,ptszRVBuffer的值匹配接受数据才表示成功,如果ptszRVBuffer为NULL,不做数据验证只接受. - CHAR tszSDBuffer[4096]; //如果你的服务器有特殊数据测试,请填写这个参数,否则测试端将自定义数据发送,内存需要由用户管理 - CHAR tszRVBuffer[4096]; + XCHAR tszSDBuffer[4096]; //如果你的服务器有特殊数据测试,请填写这个参数,否则测试端将自定义数据发送,内存需要由用户管理 + XCHAR tszRVBuffer[4096]; }MODULEHELP_SOCKETTEST_DATAS, * LPMODULEHELP_SOCKETTEST_DATAS; typedef struct { MODULEHELP_SOCKETTEST_RECONNECT st_SocketConn; MODULEHELP_SOCKETTEST_DATAS st_SocketData; - TCHAR tszAPIUrl[MAX_PATH]; + XCHAR tszAPIUrl[MAX_PATH]; XNETHANDLE xhToken; int nType; //0,全部报告,其他结束统计报告 bool bTCP; bool bConn; }XENGINE_SOCKETTEST; +//短连接 +typedef struct +{ + XCHAR tszFullUrl[MAX_PATH]; + XCHAR tszShotUrl[MAX_PATH]; + XCHAR tszKeyUrl[MAX_PATH]; + XCHAR tszMapUrl[MAX_PATH]; + XCHAR tszCvtUrl[MAX_PATH]; + XCHAR tszCreateTime[64]; + int nLength; + int nID; +}XENGINE_SHORTLINK; #pragma pack(pop) \ No newline at end of file