From 4afb4c275fb4c76fa8e3f6e45d0bd03aca723434 Mon Sep 17 00:00:00 2001 From: qyt <486179@qq.com> Date: Wed, 26 Feb 2025 14:54:31 +0800 Subject: [PATCH 01/25] update:depend library --- XEngine_Source/XEngine_Depend | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/XEngine_Source/XEngine_Depend b/XEngine_Source/XEngine_Depend index bcf8d94..d022f0c 160000 --- a/XEngine_Source/XEngine_Depend +++ b/XEngine_Source/XEngine_Depend @@ -1 +1 @@ -Subproject commit bcf8d946890a2f2fb39eec16e64a634a8ece52c7 +Subproject commit d022f0c7d2298275d663543afd33e18243c5f25d From 127b76a3484bf7f146af2773cc6991f3e55eeb8d Mon Sep 17 00:00:00 2001 From: qyt <486179@qq.com> Date: Wed, 26 Feb 2025 15:35:59 +0800 Subject: [PATCH 02/25] fixed:set log level not work --- XEngine_Source/XEngine_MQServiceApp/XEngine_MQServiceApp.cpp | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/XEngine_Source/XEngine_MQServiceApp/XEngine_MQServiceApp.cpp b/XEngine_Source/XEngine_MQServiceApp/XEngine_MQServiceApp.cpp index 5842154..670052d 100644 --- a/XEngine_Source/XEngine_MQServiceApp/XEngine_MQServiceApp.cpp +++ b/XEngine_Source/XEngine_MQServiceApp/XEngine_MQServiceApp.cpp @@ -153,7 +153,7 @@ int main(int argc, char** argv) printf("启动服务器失败,启动日志失败,错误:%lX", XLog_GetLastError()); goto NETSERVICEEXIT; } - HelpComponents_XLog_SetLogPriority(xhLog, XENGINE_HELPCOMPONENTS_XLOG_IN_LOGLEVEL_INFO); + HelpComponents_XLog_SetLogPriority(xhLog, st_ServiceCfg.st_XLog.nLogLeave); XLOG_PRINT(xhLog, XENGINE_HELPCOMPONENTS_XLOG_IN_LOGLEVEL_INFO, _X("启动服务中,初始化日志系统成功")); if (!Config_Json_DBFile(lpszDBConfig, &st_DBConfig)) From e874b41e92a312684e78f06ec7deb08f6622dfaf Mon Sep 17 00:00:00 2001 From: qyt <486179@qq.com> Date: Wed, 26 Feb 2025 15:49:11 +0800 Subject: [PATCH 03/25] added:set log type support --- XEngine_Release/XEngine_Config/XEngine_Config.json | 5 +++-- XEngine_Source/MQCore_ConfigModule/Config_Define.h | 1 + .../MQCore_ConfigModule/Config_Json/Config_Json.cpp | 3 ++- XEngine_Source/XEngine_MQServiceApp/XEngine_MQServiceApp.cpp | 2 +- 4 files changed, 7 insertions(+), 4 deletions(-) diff --git a/XEngine_Release/XEngine_Config/XEngine_Config.json b/XEngine_Release/XEngine_Config/XEngine_Config.json index 67b2e98..5a5fcc7 100644 --- a/XEngine_Release/XEngine_Config/XEngine_Config.json +++ b/XEngine_Release/XEngine_Config/XEngine_Config.json @@ -19,7 +19,8 @@ "tszLOGFile":"./XEngine_Log/XEngine_MQServiceApp.Log", "MaxSize":1024000, "MaxCount":10, - "LogLeave":17 + "LogLeave":32, + "LogType":17 }, "XSql":{ "SQLAddr":"10.0.2.6", @@ -38,7 +39,7 @@ "bDataQueryEnable":true, "bDataInsertEnable":true, "bUserQueryEnable":true, - "nTimeLast":3600, + "nTimeLast":60, "nTimeCount":0 }, "XReport":{ diff --git a/XEngine_Source/MQCore_ConfigModule/Config_Define.h b/XEngine_Source/MQCore_ConfigModule/Config_Define.h index 29ee591..d2c4fc6 100644 --- a/XEngine_Source/MQCore_ConfigModule/Config_Define.h +++ b/XEngine_Source/MQCore_ConfigModule/Config_Define.h @@ -38,6 +38,7 @@ typedef struct int nMaxSize; int nMaxCount; int nLogLeave; + int nLogType; }st_XLog; struct { diff --git a/XEngine_Source/MQCore_ConfigModule/Config_Json/Config_Json.cpp b/XEngine_Source/MQCore_ConfigModule/Config_Json/Config_Json.cpp index e6f4744..e69293d 100644 --- a/XEngine_Source/MQCore_ConfigModule/Config_Json/Config_Json.cpp +++ b/XEngine_Source/MQCore_ConfigModule/Config_Json/Config_Json.cpp @@ -86,7 +86,7 @@ bool CConfig_Json::Config_Json_File(LPCXSTR lpszConfigFile,XENGINE_SERVERCONFIG pSt_ServerConfig->st_XMax.nWSThread = st_JsonXMax["nWSThread"].asInt(); pSt_ServerConfig->st_XMax.nMQTTThread = st_JsonXMax["nMQTTThread"].asInt(); - if (st_JsonRoot["XLog"].empty() || (4 != st_JsonRoot["XLog"].size())) + if (st_JsonRoot["XLog"].empty() || (5 != st_JsonRoot["XLog"].size())) { Config_IsErrorOccur = true; Config_dwErrorCode = ERROR_MQ_MODULE_CONFIG_JSON_XLOG; @@ -96,6 +96,7 @@ bool CConfig_Json::Config_Json_File(LPCXSTR lpszConfigFile,XENGINE_SERVERCONFIG pSt_ServerConfig->st_XLog.nMaxSize = st_JsonXLog["MaxSize"].asInt(); pSt_ServerConfig->st_XLog.nMaxCount = st_JsonXLog["MaxCount"].asInt(); pSt_ServerConfig->st_XLog.nLogLeave = st_JsonXLog["LogLeave"].asInt(); + pSt_ServerConfig->st_XLog.nLogType = st_JsonXLog["LogType"].asInt(); _tcsxcpy(pSt_ServerConfig->st_XLog.tszLOGFile, st_JsonXLog["tszLOGFile"].asCString()); if (st_JsonRoot["XSql"].empty() || (4 != st_JsonRoot["XSql"].size())) diff --git a/XEngine_Source/XEngine_MQServiceApp/XEngine_MQServiceApp.cpp b/XEngine_Source/XEngine_MQServiceApp/XEngine_MQServiceApp.cpp index 670052d..e5dcd2a 100644 --- a/XEngine_Source/XEngine_MQServiceApp/XEngine_MQServiceApp.cpp +++ b/XEngine_Source/XEngine_MQServiceApp/XEngine_MQServiceApp.cpp @@ -147,7 +147,7 @@ int main(int argc, char** argv) st_XLogConfig.XLog_MaxSize = st_ServiceCfg.st_XLog.nMaxSize; _tcsxcpy(st_XLogConfig.tszFileName, st_ServiceCfg.st_XLog.tszLOGFile); - xhLog = HelpComponents_XLog_Init(HELPCOMPONENTS_XLOG_OUTTYPE_STD | HELPCOMPONENTS_XLOG_OUTTYPE_FILE, &st_XLogConfig); + xhLog = HelpComponents_XLog_Init(st_ServiceCfg.st_XLog.nLogType, &st_XLogConfig); if (NULL == xhLog) { printf("启动服务器失败,启动日志失败,错误:%lX", XLog_GetLastError()); From 6a1f047eff06c2e2117c4268e565e1abae8b1d1a Mon Sep 17 00:00:00 2001 From: qyt <486179@qq.com> Date: Thu, 27 Feb 2025 13:44:09 +0800 Subject: [PATCH 04/25] improved:parameter parse and more parameter supported --- .../XEngine_MQServiceApp/MQService_Config.cpp | 16 ++++++++++++++++ 1 file changed, 16 insertions(+) diff --git a/XEngine_Source/XEngine_MQServiceApp/MQService_Config.cpp b/XEngine_Source/XEngine_MQServiceApp/MQService_Config.cpp index 22a9ab7..34cf122 100644 --- a/XEngine_Source/XEngine_MQServiceApp/MQService_Config.cpp +++ b/XEngine_Source/XEngine_MQServiceApp/MQService_Config.cpp @@ -36,6 +36,22 @@ bool MQ_Service_Parament(int argc, char** argv, XENGINE_SERVERCONFIG* pSt_Startl { pSt_StartlParam->nHttpPort = _ttxoi(argv[++i]); } + else if (0 == _tcsxcmp("-WP", argv[i])) + { + pSt_StartlParam->nWSPort = _ttxoi(argv[++i]); + } + else if (0 == _tcsxcmp("-MP", argv[i])) + { + pSt_StartlParam->nMQTTPort = _ttxoi(argv[++i]); + } + else if (0 == _tcsxcmp("-LL", argv[i])) + { + pSt_StartlParam->st_XLog.nLogLeave = _ttxoi(argv[++i]); + } + else if (0 == _tcsxcmp("-LT", argv[i])) + { + pSt_StartlParam->st_XLog.nLogType = _ttxoi(argv[++i]); + } else if (0 == _tcsxcmp("-d",argv[i])) { pSt_StartlParam->bDeamon = _ttxoi(argv[++i]); From 11016f2abab63b8885eed4bf1c1b8cbaa72c1883 Mon Sep 17 00:00:00 2001 From: qyt <486179@qq.com> Date: Thu, 27 Feb 2025 15:08:33 +0800 Subject: [PATCH 05/25] ci:set left time to 1 day --- .github/workflows/macbuild.yml | 4 +++- .github/workflows/msbuild.yml | 4 +++- .github/workflows/ubuntubuild.yml | 4 +++- 3 files changed, 9 insertions(+), 3 deletions(-) diff --git a/.github/workflows/macbuild.yml b/.github/workflows/macbuild.yml index dbe2ffc..7df659e 100644 --- a/.github/workflows/macbuild.yml +++ b/.github/workflows/macbuild.yml @@ -85,9 +85,11 @@ jobs: with: name: XEngine_MQServiceApp-x86_64-Mac path: XEngine_Release/ + retention-days: 1 - name: Upload folder as artifact with mac arm if: matrix.os == 'macos-14' uses: actions/upload-artifact@v4 with: name: XEngine_MQServiceApp-Arm64-Mac - path: XEngine_Release/ \ No newline at end of file + path: XEngine_Release/ + retention-days: 1 \ No newline at end of file diff --git a/.github/workflows/msbuild.yml b/.github/workflows/msbuild.yml index d2bd79b..212c76a 100644 --- a/.github/workflows/msbuild.yml +++ b/.github/workflows/msbuild.yml @@ -90,10 +90,12 @@ jobs: with: name: XEngine_MQServiceApp-x86_32-Windows path: XEngine_Release/ + retention-days: 1 - name: Upload folder as artifact with x64 if: matrix.configuration == 'Release' && matrix.platform == 'x64' uses: actions/upload-artifact@v4 with: name: XEngine_MQServiceApp-x86_64-Windows - path: XEngine_Release/ \ No newline at end of file + path: XEngine_Release/ + retention-days: 1 \ No newline at end of file diff --git a/.github/workflows/ubuntubuild.yml b/.github/workflows/ubuntubuild.yml index 26c558c..171e746 100644 --- a/.github/workflows/ubuntubuild.yml +++ b/.github/workflows/ubuntubuild.yml @@ -80,9 +80,11 @@ jobs: with: name: XEngine_MQServiceApp-x86_64-Ubuntu-22.04 path: XEngine_Release/ + retention-days: 1 - name: Upload folder as artifact with ubuntu24.04 if: matrix.os == 'ubuntu-24.04' uses: actions/upload-artifact@v4 with: name: XEngine_MQServiceApp-x86_64-Ubuntu-24.04 - path: XEngine_Release/ \ No newline at end of file + path: XEngine_Release/ + retention-days: 1 \ No newline at end of file From 1357b03b5c5afa229ca994462dbba4c83e7e2ce3 Mon Sep 17 00:00:00 2001 From: qyt <486179@qq.com> Date: Thu, 6 Mar 2025 10:38:48 +0800 Subject: [PATCH 06/25] update:depend library --- XEngine_Source/XEngine_Depend | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/XEngine_Source/XEngine_Depend b/XEngine_Source/XEngine_Depend index d022f0c..fda9f7d 160000 --- a/XEngine_Source/XEngine_Depend +++ b/XEngine_Source/XEngine_Depend @@ -1 +1 @@ -Subproject commit d022f0c7d2298275d663543afd33e18243c5f25d +Subproject commit fda9f7d9140cc6a32eecb499e2acb67e8e1c7e6f From aefeb1d72929a7e93df024ec054ec48d2d3e618d Mon Sep 17 00:00:00 2001 From: qyt <486179@qq.com> Date: Thu, 6 Mar 2025 11:08:52 +0800 Subject: [PATCH 07/25] added:arm64 build support and ci release --- .github/workflows/msbuild.yml | 37 ++++++++- .../MQCore_ConfigModule.vcxproj | 80 ++++++++++++++++++ XEngine_Source/MQCore_ConfigModule/pch.h | 12 ++- .../MQCore_DBModule/MQCore_DBModule.vcxproj | 80 ++++++++++++++++++ XEngine_Source/MQCore_DBModule/pch.h | 12 ++- .../MQCore_MemoryCache.vcxproj | 78 ++++++++++++++++++ .../MQCore_ProtocolModule.vcxproj | 82 +++++++++++++++++++ XEngine_Source/MQCore_ProtocolModule/pch.h | 13 +-- .../MQCore_SessionModule.vcxproj | 82 +++++++++++++++++++ XEngine_Source/VSCopy_Arm64.bat | 19 +++++ XEngine_Source/XEngine_MQServiceApp.sln | 34 ++++++++ .../XEngine_MQServiceApp/MQService_Hdr.h | 22 ++++- .../XEngine_MQServiceApp.vcxproj | 72 ++++++++++++++++ 13 files changed, 602 insertions(+), 21 deletions(-) create mode 100644 XEngine_Source/VSCopy_Arm64.bat diff --git a/.github/workflows/msbuild.yml b/.github/workflows/msbuild.yml index 212c76a..bdf78ef 100644 --- a/.github/workflows/msbuild.yml +++ b/.github/workflows/msbuild.yml @@ -15,7 +15,7 @@ jobs: fail-fast: false matrix: configuration: [Debug ,Release] - platform: [x86 ,x64] + platform: [x86 ,x64 ,ARM64] runs-on: windows-latest @@ -57,6 +57,20 @@ jobs: echo "XENGINE_INCLUDE=${{ github.workspace }}/XEngine_Windows" | Out-File -FilePath $env:GITHUB_ENV -Append echo "XENGINE_LIB32=${{ github.workspace }}/XEngine_Windows/XEngine_Windows" | Out-File -FilePath $env:GITHUB_ENV -Append shell: pwsh + - name: Set up Dependency ARM64 Environment + if: matrix.platform == 'ARM64' + run: | + $response = Invoke-RestMethod -Uri "https://api.github.com/repos/libxengine/libxengine/releases/latest" -Headers @{"Accept"="application/vnd.github.v3+json"} + $latest_tag = $response.tag_name + Write-Host "Latest Tag: $latest_tag" + + $url = "https://github.com/libxengine/libxengine/releases/download/$latest_tag/XEngine_Windows_Arm64.zip" + Invoke-WebRequest -Uri $url -OutFile "XEngine_Windows_Arm64.zip" + Expand-Archive -Path ./XEngine_Windows_Arm64.zip -DestinationPath ./XEngine_Windows -Force + + echo "XENGINE_INCLUDE=${{ github.workspace }}/XEngine_Windows" | Out-File -FilePath $env:GITHUB_ENV -Append + echo "XENGINE_LibArm64=${{ github.workspace }}/XEngine_Windows/XEngine_Windows" | Out-File -FilePath $env:GITHUB_ENV -Append + shell: pwsh - name: Setup MSBuild uses: microsoft/setup-msbuild@v2 @@ -83,19 +97,34 @@ jobs: cd XEngine_Release ./VSCopy_x64.bat shell: pwsh + - name: Conditional Step for Arm64 Release + if: matrix.configuration == 'Release' && matrix.platform == 'Arm64' + run: | + cp -r XEngine_Source/ARM64/Release/*.dll XEngine_Release/ + cp -r XEngine_Source/ARM64/Release/*.exe XEngine_Release/ + cp -r XEngine_Source/VSCopy_Arm64.bat XEngine_Release/ + cd XEngine_Release + ./VSCopy_Arm64.bat + shell: pwsh - name: Upload folder as artifact with x86 if: matrix.configuration == 'Release' && matrix.platform == 'x86' uses: actions/upload-artifact@v4 with: - name: XEngine_MQServiceApp-x86_32-Windows + name: XEngine_MQServiceApp-Windows_x86_32 path: XEngine_Release/ retention-days: 1 - - name: Upload folder as artifact with x64 if: matrix.configuration == 'Release' && matrix.platform == 'x64' uses: actions/upload-artifact@v4 with: - name: XEngine_MQServiceApp-x86_64-Windows + name: XEngine_MQServiceApp-Windows_x86_64 + path: XEngine_Release/ + retention-days: 1 + - name: Upload folder as artifact with Arm64 + if: matrix.configuration == 'Release' && matrix.platform == 'Arm64' + uses: actions/upload-artifact@v4 + with: + name: XEngine_MQServiceApp-Windows_Arm64 path: XEngine_Release/ retention-days: 1 \ No newline at end of file diff --git a/XEngine_Source/MQCore_ConfigModule/MQCore_ConfigModule.vcxproj b/XEngine_Source/MQCore_ConfigModule/MQCore_ConfigModule.vcxproj index c64a8b5..40c57e1 100644 --- a/XEngine_Source/MQCore_ConfigModule/MQCore_ConfigModule.vcxproj +++ b/XEngine_Source/MQCore_ConfigModule/MQCore_ConfigModule.vcxproj @@ -1,10 +1,18 @@ + + Debug + ARM64 + Debug Win32 + + Release + ARM64 + Release Win32 @@ -45,6 +53,12 @@ v143 Unicode + + DynamicLibrary + true + v143 + Unicode + DynamicLibrary false @@ -52,6 +66,13 @@ true Unicode + + DynamicLibrary + false + v143 + true + Unicode + @@ -66,9 +87,15 @@ + + + + + + true @@ -84,10 +111,18 @@ true $(XEngine_Include);../XEngine_Depend/XEngine_Module/jsoncpp;$(IncludePath) + + true + $(XEngine_Include);../XEngine_Depend/XEngine_Module/jsoncpp;$(IncludePath) + false $(XEngine_Include);../XEngine_Depend/XEngine_Module/jsoncpp;$(IncludePath) + + false + $(XEngine_Include);../XEngine_Depend/XEngine_Module/jsoncpp;$(IncludePath) + Level3 @@ -150,6 +185,24 @@ MQCore_ConfigModule.def + + + Level3 + true + _DEBUG;MQCORECONFIGMODULE_EXPORTS;_WINDOWS;_USRDLL;_CRT_SECURE_NO_WARNINGS;%(PreprocessorDefinitions) + true + Use + pch.h + stdcpp20 + stdc17 + + + Windows + true + false + MQCore_ConfigModule.def + + Level3 @@ -175,6 +228,31 @@ MQCore_ConfigModule.def + + + Level3 + true + true + true + NDEBUG;MQCORECONFIGMODULE_EXPORTS;_WINDOWS;_USRDLL;_CRT_SECURE_NO_WARNINGS;%(PreprocessorDefinitions) + true + Use + pch.h + MultiThreaded + 4819 + stdcpp20 + stdc17 + /utf-8 %(AdditionalOptions) + + + Windows + true + true + true + false + MQCore_ConfigModule.def + + @@ -188,8 +266,10 @@ Create Create + Create Create Create + Create diff --git a/XEngine_Source/MQCore_ConfigModule/pch.h b/XEngine_Source/MQCore_ConfigModule/pch.h index bcb0ee5..1d9d9de 100644 --- a/XEngine_Source/MQCore_ConfigModule/pch.h +++ b/XEngine_Source/MQCore_ConfigModule/pch.h @@ -42,15 +42,19 @@ extern XLONG Config_dwErrorCode; #ifdef _MSC_BUILD #ifdef _DEBUG -#ifdef _WIN64 +#ifdef _M_X64 #pragma comment(lib,"../x64/Debug/jsoncpp") -#else +#elif _M_ARM64 +#pragma comment(lib,"../ARM64/Debug/jsoncpp") +#elif _M_IX86 #pragma comment(lib,"../Debug/jsoncpp") #endif #else -#ifdef _WIN64 +#ifdef _M_X64 #pragma comment(lib,"../x64/Release/jsoncpp") -#else +#elif _M_ARM64 +#pragma comment(lib,"../ARM64/Release/jsoncpp") +#elif _M_IX86 #pragma comment(lib,"../Release/jsoncpp") #endif #endif diff --git a/XEngine_Source/MQCore_DBModule/MQCore_DBModule.vcxproj b/XEngine_Source/MQCore_DBModule/MQCore_DBModule.vcxproj index 10cd8ac..48bf97f 100644 --- a/XEngine_Source/MQCore_DBModule/MQCore_DBModule.vcxproj +++ b/XEngine_Source/MQCore_DBModule/MQCore_DBModule.vcxproj @@ -1,10 +1,18 @@ + + Debug + ARM64 + Debug Win32 + + Release + ARM64 + Release Win32 @@ -45,6 +53,12 @@ v143 Unicode + + DynamicLibrary + true + v143 + Unicode + DynamicLibrary false @@ -52,6 +66,13 @@ true Unicode + + DynamicLibrary + false + v143 + true + Unicode + @@ -66,9 +87,15 @@ + + + + + + true @@ -85,11 +112,21 @@ $(XEngine_Include);$(IncludePath) $(XEngine_Lib64);$(LibraryPath) + + true + $(XEngine_Include);$(IncludePath) + $(XEngine_LibArm64);$(LibraryPath) + false $(XEngine_Include);$(IncludePath) $(XEngine_Lib64);$(LibraryPath) + + false + $(XEngine_Include);$(IncludePath) + $(XEngine_LibArm64);$(LibraryPath) + Level3 @@ -149,6 +186,24 @@ MQCore_DBModule.def + + + Level3 + true + _DEBUG;MQCOREDBMODULE_EXPORTS;_WINDOWS;_USRDLL;_CRT_SECURE_NO_WARNINGS;%(PreprocessorDefinitions) + true + Use + pch.h + stdcpp20 + stdc17 + + + Windows + true + false + MQCore_DBModule.def + + Level3 @@ -172,6 +227,29 @@ MQCore_DBModule.def + + + Level3 + true + true + true + NDEBUG;MQCOREDBMODULE_EXPORTS;_WINDOWS;_USRDLL;_CRT_SECURE_NO_WARNINGS;%(PreprocessorDefinitions) + true + Use + pch.h + stdcpp20 + stdc17 + /utf-8 %(AdditionalOptions) + + + Windows + true + true + true + false + MQCore_DBModule.def + + @@ -187,8 +265,10 @@ Create Create + Create Create Create + Create diff --git a/XEngine_Source/MQCore_DBModule/pch.h b/XEngine_Source/MQCore_DBModule/pch.h index 3fbb3a7..8572435 100644 --- a/XEngine_Source/MQCore_DBModule/pch.h +++ b/XEngine_Source/MQCore_DBModule/pch.h @@ -50,15 +50,19 @@ extern XLONG DBModule_dwErrorCode; #pragma comment(lib,"XEngine_BaseLib/XEngine_BaseLib.lib") #pragma comment(lib,"XEngine_HelpComponents/HelpComponents_DataBase.lib") #ifdef _DEBUG -#ifdef _WIN64 +#ifdef _M_X64 #pragma comment(lib,"../x64/Debug/MQCore_MemoryCache.lib") -#else +#elif _M_ARM64 +#pragma comment(lib,"../ARM64/Debug/MQCore_MemoryCache.lib") +#elif _M_IX86 #pragma comment(lib,"../Debug/MQCore_MemoryCache.lib") #endif #else -#ifdef _WIN64 +#ifdef _M_X64 #pragma comment(lib,"../x64/Release/MQCore_MemoryCache.lib") -#else +#elif _M_ARM64 +#pragma comment(lib,"../ARM64/Release/MQCore_MemoryCache.lib") +#elif _M_IX86 #pragma comment(lib,"../Release/MQCore_MemoryCache.lib") #endif #endif diff --git a/XEngine_Source/MQCore_MemoryCache/MQCore_MemoryCache.vcxproj b/XEngine_Source/MQCore_MemoryCache/MQCore_MemoryCache.vcxproj index 534202a..cb25f8b 100644 --- a/XEngine_Source/MQCore_MemoryCache/MQCore_MemoryCache.vcxproj +++ b/XEngine_Source/MQCore_MemoryCache/MQCore_MemoryCache.vcxproj @@ -1,10 +1,18 @@ + + Debug + ARM64 + Debug Win32 + + Release + ARM64 + Release Win32 @@ -45,6 +53,12 @@ v143 Unicode + + DynamicLibrary + true + v143 + Unicode + DynamicLibrary false @@ -52,6 +66,13 @@ true Unicode + + DynamicLibrary + false + v143 + true + Unicode + @@ -66,9 +87,15 @@ + + + + + + $(XEngine_Include);..\MQCore_MemoryCache;$(IncludePath) @@ -83,10 +110,18 @@ $(XEngine_Include);$(IncludePath) $(XEngine_Lib64);$(LibraryPath) + + $(XEngine_Include);$(IncludePath) + $(XEngine_LibArm64);$(LibraryPath) + $(XEngine_Include);$(IncludePath) $(XEngine_Lib64);$(LibraryPath) + + $(XEngine_Include);$(IncludePath) + $(XEngine_LibArm64);$(LibraryPath) + Level3 @@ -146,6 +181,24 @@ MQCore_MemoryCache.def + + + Level3 + true + _DEBUG;MQCOREMEMORYCACHE_EXPORTS;_WINDOWS;_USRDLL;%(PreprocessorDefinitions) + true + Use + pch.h + stdcpp20 + stdc17 + + + Windows + true + false + MQCore_MemoryCache.def + + Level3 @@ -169,6 +222,29 @@ MQCore_MemoryCache.def + + + Level3 + true + true + true + NDEBUG;MQCOREMEMORYCACHE_EXPORTS;_WINDOWS;_USRDLL;%(PreprocessorDefinitions) + true + Use + pch.h + stdcpp20 + stdc17 + /utf-8 %(AdditionalOptions) + + + Windows + true + true + true + false + MQCore_MemoryCache.def + + @@ -184,8 +260,10 @@ Create Create + Create Create Create + Create diff --git a/XEngine_Source/MQCore_ProtocolModule/MQCore_ProtocolModule.vcxproj b/XEngine_Source/MQCore_ProtocolModule/MQCore_ProtocolModule.vcxproj index 1729975..da45755 100644 --- a/XEngine_Source/MQCore_ProtocolModule/MQCore_ProtocolModule.vcxproj +++ b/XEngine_Source/MQCore_ProtocolModule/MQCore_ProtocolModule.vcxproj @@ -1,10 +1,18 @@ + + Debug + ARM64 + Debug Win32 + + Release + ARM64 + Release Win32 @@ -45,6 +53,12 @@ v143 Unicode + + DynamicLibrary + true + v143 + Unicode + DynamicLibrary false @@ -52,6 +66,13 @@ true Unicode + + DynamicLibrary + false + v143 + true + Unicode + @@ -66,9 +87,15 @@ + + + + + + true @@ -85,11 +112,21 @@ $(XEngine_Include);../XEngine_Depend/XEngine_Module/jsoncpp;$(IncludePath) $(XEngine_Lib64);$(LibraryPath) + + true + $(XEngine_Include);../XEngine_Depend/XEngine_Module/jsoncpp;$(IncludePath) + $(XEngine_LibArm64);$(LibraryPath) + false $(XEngine_Include);../XEngine_Depend/XEngine_Module/jsoncpp;$(IncludePath) $(XEngine_Lib64);$(LibraryPath) + + false + $(XEngine_Include);../XEngine_Depend/XEngine_Module/jsoncpp;$(IncludePath) + $(XEngine_LibArm64);$(LibraryPath) + Level3 @@ -152,6 +189,24 @@ MQCore_ProtocolModule.def + + + Level3 + true + _DEBUG;MQCOREPROTOCOLMODULE_EXPORTS;_WINDOWS;_USRDLL;_CRT_SECURE_NO_WARNINGS;%(PreprocessorDefinitions) + true + Use + pch.h + stdcpp20 + stdc17 + + + Windows + true + false + MQCore_ProtocolModule.def + + Level3 @@ -177,6 +232,31 @@ MQCore_ProtocolModule.def + + + Level3 + true + true + true + NDEBUG;MQCOREPROTOCOLMODULE_EXPORTS;_WINDOWS;_USRDLL;_CRT_SECURE_NO_WARNINGS;%(PreprocessorDefinitions) + true + Use + pch.h + MultiThreaded + 4819 + stdcpp20 + stdc17 + /utf-8 %(AdditionalOptions) + + + Windows + true + true + true + false + MQCore_ProtocolModule.def + + @@ -190,8 +270,10 @@ Create Create + Create Create Create + Create diff --git a/XEngine_Source/MQCore_ProtocolModule/pch.h b/XEngine_Source/MQCore_ProtocolModule/pch.h index 65e187b..c53bdd8 100644 --- a/XEngine_Source/MQCore_ProtocolModule/pch.h +++ b/XEngine_Source/MQCore_ProtocolModule/pch.h @@ -45,21 +45,24 @@ extern bool Protocol_IsErrorOccur; extern XLONG Protocol_dwErrorCode; - #ifdef _MSC_BUILD #pragma comment(lib,"XEngine_BaseLib/XEngine_BaseLib") #pragma comment(lib,"XEngine_Core/XEngine_Cryption") #pragma comment(lib,"XEngine_RfcComponents/RfcComponents_MQTTProtocol.lib") #ifdef _DEBUG -#ifdef _WIN64 +#ifdef _M_X64 #pragma comment(lib,"../x64/Debug/jsoncpp") -#else +#elif _M_ARM64 +#pragma comment(lib,"../ARM64/Debug/jsoncpp") +#elif _M_IX86 #pragma comment(lib,"../Debug/jsoncpp") #endif #else -#ifdef _WIN64 +#ifdef _M_X64 #pragma comment(lib,"../x64/Release/jsoncpp") -#else +#elif _M_ARM64 +#pragma comment(lib,"../ARM64/Release/jsoncpp") +#elif _M_IX86 #pragma comment(lib,"../Release/jsoncpp") #endif #endif diff --git a/XEngine_Source/MQCore_SessionModule/MQCore_SessionModule.vcxproj b/XEngine_Source/MQCore_SessionModule/MQCore_SessionModule.vcxproj index 6cd75df..7bd7aa5 100644 --- a/XEngine_Source/MQCore_SessionModule/MQCore_SessionModule.vcxproj +++ b/XEngine_Source/MQCore_SessionModule/MQCore_SessionModule.vcxproj @@ -1,10 +1,18 @@ + + Debug + ARM64 + Debug Win32 + + Release + ARM64 + Release Win32 @@ -45,6 +53,12 @@ v143 Unicode + + DynamicLibrary + true + v143 + Unicode + DynamicLibrary false @@ -52,6 +66,13 @@ true Unicode + + DynamicLibrary + false + v143 + true + Unicode + @@ -66,9 +87,15 @@ + + + + + + true @@ -85,11 +112,21 @@ $(XEngine_Include);$(IncludePath) $(XEngine_Lib64);$(LibraryPath) + + true + $(XEngine_Include);$(IncludePath) + $(XEngine_LibArm64);$(LibraryPath) + false $(XEngine_Include);$(IncludePath) $(XEngine_Lib64);$(LibraryPath) + + false + $(XEngine_Include);$(IncludePath) + $(XEngine_LibArm64);$(LibraryPath) + Level3 @@ -152,6 +189,24 @@ MQCore_SessionModule.def + + + Level3 + true + _DEBUG;MQCORESESSIONMODULE_EXPORTS;_WINDOWS;_USRDLL;_CRT_SECURE_NO_WARNINGS;%(PreprocessorDefinitions) + true + Use + pch.h + stdcpp20 + stdc17 + + + Windows + true + false + MQCore_SessionModule.def + + Level3 @@ -177,6 +232,31 @@ MQCore_SessionModule.def + + + Level3 + true + true + true + NDEBUG;MQCORESESSIONMODULE_EXPORTS;_WINDOWS;_USRDLL;_CRT_SECURE_NO_WARNINGS;%(PreprocessorDefinitions) + true + Use + pch.h + MultiThreaded + 4819 + stdcpp20 + stdc17 + /utf-8 %(AdditionalOptions) + + + Windows + true + true + true + false + MQCore_SessionModule.def + + @@ -189,8 +269,10 @@ Create Create + Create Create Create + Create diff --git a/XEngine_Source/VSCopy_Arm64.bat b/XEngine_Source/VSCopy_Arm64.bat new file mode 100644 index 0000000..1637918 --- /dev/null +++ b/XEngine_Source/VSCopy_Arm64.bat @@ -0,0 +1,19 @@ +copy /y "%XEngine_LibArm64%\XEngine_BaseLib\XEngine_BaseLib.dll" "./" +copy /y "%XEngine_LibArm64%\XEngine_BaseLib\XEngine_BaseSafe.dll" "./" +copy /y "%XEngine_LibArm64%\XEngine_BaseLib\XEngine_Algorithm.dll" "./" +copy /y "%XEngine_LibArm64%\XEngine_Core\XEngine_Core.dll" "./" +copy /y "%XEngine_LibArm64%\XEngine_Core\XEngine_ManagePool.dll" "./" +copy /y "%XEngine_LibArm64%\XEngine_Core\XEngine_Cryption.dll" "./" + +copy /y "%XEngine_LibArm64%\XEngine_SystemSdk\XEngine_SystemApi.dll" "./" +copy /y "%XEngine_LibArm64%\XEngine_Client\XClient_APIHelp.dll" "./" + +copy /y "%XEngine_LibArm64%\XEngine_NetHelp\NetHelp_APIHelp.dll" "./" + +copy /y "%XEngine_LibArm64%\XEngine_HelpComponents\HelpComponents_Packets.dll" "./" +copy /y "%XEngine_LibArm64%\XEngine_HelpComponents\HelpComponents_XLog.dll" "./" +copy /y "%XEngine_LibArm64%\XEngine_HelpComponents\HelpComponents_DataBase.dll" "./" + +copy /y "%XEngine_LibArm64%\XEngine_RfcComponents\RfcComponents_HttpProtocol.dll" "./" +copy /y "%XEngine_LibArm64%\XEngine_RfcComponents\RfcComponents_WSProtocol.dll" "./" +copy /y "%XEngine_LibArm64%\XEngine_RfcComponents\RfcComponents_MQTTProtocol.dll" "./" \ No newline at end of file diff --git a/XEngine_Source/XEngine_MQServiceApp.sln b/XEngine_Source/XEngine_MQServiceApp.sln index 3315a56..fe3b262 100644 --- a/XEngine_Source/XEngine_MQServiceApp.sln +++ b/XEngine_Source/XEngine_MQServiceApp.sln @@ -49,72 +49,106 @@ Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "MQCore_MemoryCache", "MQCor EndProject Global GlobalSection(SolutionConfigurationPlatforms) = preSolution + Debug|ARM64 = Debug|ARM64 Debug|x64 = Debug|x64 Debug|x86 = Debug|x86 + Release|ARM64 = Release|ARM64 Release|x64 = Release|x64 Release|x86 = Release|x86 EndGlobalSection GlobalSection(ProjectConfigurationPlatforms) = postSolution + {34C9695F-7097-412F-ACC2-A3979A91D776}.Debug|ARM64.ActiveCfg = Debug|ARM64 + {34C9695F-7097-412F-ACC2-A3979A91D776}.Debug|ARM64.Build.0 = Debug|ARM64 {34C9695F-7097-412F-ACC2-A3979A91D776}.Debug|x64.ActiveCfg = Debug|x64 {34C9695F-7097-412F-ACC2-A3979A91D776}.Debug|x64.Build.0 = Debug|x64 {34C9695F-7097-412F-ACC2-A3979A91D776}.Debug|x86.ActiveCfg = Debug|Win32 {34C9695F-7097-412F-ACC2-A3979A91D776}.Debug|x86.Build.0 = Debug|Win32 + {34C9695F-7097-412F-ACC2-A3979A91D776}.Release|ARM64.ActiveCfg = Release|ARM64 + {34C9695F-7097-412F-ACC2-A3979A91D776}.Release|ARM64.Build.0 = Release|ARM64 {34C9695F-7097-412F-ACC2-A3979A91D776}.Release|x64.ActiveCfg = Release|x64 {34C9695F-7097-412F-ACC2-A3979A91D776}.Release|x64.Build.0 = Release|x64 {34C9695F-7097-412F-ACC2-A3979A91D776}.Release|x86.ActiveCfg = Release|Win32 {34C9695F-7097-412F-ACC2-A3979A91D776}.Release|x86.Build.0 = Release|Win32 + {32D3FC68-6252-4D20-BB07-6C98BD753D11}.Debug|ARM64.ActiveCfg = Debug|ARM64 + {32D3FC68-6252-4D20-BB07-6C98BD753D11}.Debug|ARM64.Build.0 = Debug|ARM64 {32D3FC68-6252-4D20-BB07-6C98BD753D11}.Debug|x64.ActiveCfg = Debug|x64 {32D3FC68-6252-4D20-BB07-6C98BD753D11}.Debug|x64.Build.0 = Debug|x64 {32D3FC68-6252-4D20-BB07-6C98BD753D11}.Debug|x86.ActiveCfg = Debug|Win32 {32D3FC68-6252-4D20-BB07-6C98BD753D11}.Debug|x86.Build.0 = Debug|Win32 + {32D3FC68-6252-4D20-BB07-6C98BD753D11}.Release|ARM64.ActiveCfg = Release|ARM64 + {32D3FC68-6252-4D20-BB07-6C98BD753D11}.Release|ARM64.Build.0 = Release|ARM64 {32D3FC68-6252-4D20-BB07-6C98BD753D11}.Release|x64.ActiveCfg = Release|x64 {32D3FC68-6252-4D20-BB07-6C98BD753D11}.Release|x64.Build.0 = Release|x64 {32D3FC68-6252-4D20-BB07-6C98BD753D11}.Release|x86.ActiveCfg = Release|Win32 {32D3FC68-6252-4D20-BB07-6C98BD753D11}.Release|x86.Build.0 = Release|Win32 + {B0EB2A7A-53C1-4E9F-A851-19539099671C}.Debug|ARM64.ActiveCfg = Debug|ARM64 + {B0EB2A7A-53C1-4E9F-A851-19539099671C}.Debug|ARM64.Build.0 = Debug|ARM64 {B0EB2A7A-53C1-4E9F-A851-19539099671C}.Debug|x64.ActiveCfg = Debug|x64 {B0EB2A7A-53C1-4E9F-A851-19539099671C}.Debug|x64.Build.0 = Debug|x64 {B0EB2A7A-53C1-4E9F-A851-19539099671C}.Debug|x86.ActiveCfg = Debug|Win32 {B0EB2A7A-53C1-4E9F-A851-19539099671C}.Debug|x86.Build.0 = Debug|Win32 + {B0EB2A7A-53C1-4E9F-A851-19539099671C}.Release|ARM64.ActiveCfg = Release|ARM64 + {B0EB2A7A-53C1-4E9F-A851-19539099671C}.Release|ARM64.Build.0 = Release|ARM64 {B0EB2A7A-53C1-4E9F-A851-19539099671C}.Release|x64.ActiveCfg = Release|x64 {B0EB2A7A-53C1-4E9F-A851-19539099671C}.Release|x64.Build.0 = Release|x64 {B0EB2A7A-53C1-4E9F-A851-19539099671C}.Release|x86.ActiveCfg = Release|Win32 {B0EB2A7A-53C1-4E9F-A851-19539099671C}.Release|x86.Build.0 = Release|Win32 + {77321E0D-15DB-4C6E-8872-115CBBE41F27}.Debug|ARM64.ActiveCfg = Debug|ARM64 + {77321E0D-15DB-4C6E-8872-115CBBE41F27}.Debug|ARM64.Build.0 = Debug|ARM64 {77321E0D-15DB-4C6E-8872-115CBBE41F27}.Debug|x64.ActiveCfg = Debug|x64 {77321E0D-15DB-4C6E-8872-115CBBE41F27}.Debug|x64.Build.0 = Debug|x64 {77321E0D-15DB-4C6E-8872-115CBBE41F27}.Debug|x86.ActiveCfg = Debug|Win32 {77321E0D-15DB-4C6E-8872-115CBBE41F27}.Debug|x86.Build.0 = Debug|Win32 + {77321E0D-15DB-4C6E-8872-115CBBE41F27}.Release|ARM64.ActiveCfg = Release|ARM64 + {77321E0D-15DB-4C6E-8872-115CBBE41F27}.Release|ARM64.Build.0 = Release|ARM64 {77321E0D-15DB-4C6E-8872-115CBBE41F27}.Release|x64.ActiveCfg = Release|x64 {77321E0D-15DB-4C6E-8872-115CBBE41F27}.Release|x64.Build.0 = Release|x64 {77321E0D-15DB-4C6E-8872-115CBBE41F27}.Release|x86.ActiveCfg = Release|Win32 {77321E0D-15DB-4C6E-8872-115CBBE41F27}.Release|x86.Build.0 = Release|Win32 + {5475F316-F9E9-4FF5-95ED-F7C9474709A3}.Debug|ARM64.ActiveCfg = Debug|ARM64 + {5475F316-F9E9-4FF5-95ED-F7C9474709A3}.Debug|ARM64.Build.0 = Debug|ARM64 {5475F316-F9E9-4FF5-95ED-F7C9474709A3}.Debug|x64.ActiveCfg = Debug|x64 {5475F316-F9E9-4FF5-95ED-F7C9474709A3}.Debug|x64.Build.0 = Debug|x64 {5475F316-F9E9-4FF5-95ED-F7C9474709A3}.Debug|x86.ActiveCfg = Debug|Win32 {5475F316-F9E9-4FF5-95ED-F7C9474709A3}.Debug|x86.Build.0 = Debug|Win32 + {5475F316-F9E9-4FF5-95ED-F7C9474709A3}.Release|ARM64.ActiveCfg = Release|ARM64 + {5475F316-F9E9-4FF5-95ED-F7C9474709A3}.Release|ARM64.Build.0 = Release|ARM64 {5475F316-F9E9-4FF5-95ED-F7C9474709A3}.Release|x64.ActiveCfg = Release|x64 {5475F316-F9E9-4FF5-95ED-F7C9474709A3}.Release|x64.Build.0 = Release|x64 {5475F316-F9E9-4FF5-95ED-F7C9474709A3}.Release|x86.ActiveCfg = Release|Win32 {5475F316-F9E9-4FF5-95ED-F7C9474709A3}.Release|x86.Build.0 = Release|Win32 + {F1736B3F-03A2-4FC7-B045-A12BA8D724FB}.Debug|ARM64.ActiveCfg = Debug|ARM64 + {F1736B3F-03A2-4FC7-B045-A12BA8D724FB}.Debug|ARM64.Build.0 = Debug|ARM64 {F1736B3F-03A2-4FC7-B045-A12BA8D724FB}.Debug|x64.ActiveCfg = Debug|x64 {F1736B3F-03A2-4FC7-B045-A12BA8D724FB}.Debug|x64.Build.0 = Debug|x64 {F1736B3F-03A2-4FC7-B045-A12BA8D724FB}.Debug|x86.ActiveCfg = Debug|Win32 {F1736B3F-03A2-4FC7-B045-A12BA8D724FB}.Debug|x86.Build.0 = Debug|Win32 + {F1736B3F-03A2-4FC7-B045-A12BA8D724FB}.Release|ARM64.ActiveCfg = Release|ARM64 + {F1736B3F-03A2-4FC7-B045-A12BA8D724FB}.Release|ARM64.Build.0 = Release|ARM64 {F1736B3F-03A2-4FC7-B045-A12BA8D724FB}.Release|x64.ActiveCfg = Release|x64 {F1736B3F-03A2-4FC7-B045-A12BA8D724FB}.Release|x64.Build.0 = Release|x64 {F1736B3F-03A2-4FC7-B045-A12BA8D724FB}.Release|x86.ActiveCfg = Release|Win32 {F1736B3F-03A2-4FC7-B045-A12BA8D724FB}.Release|x86.Build.0 = Release|Win32 + {F6520D2C-BB8E-45BB-964B-F5D6A4318A89}.Debug|ARM64.ActiveCfg = Debug|ARM64 + {F6520D2C-BB8E-45BB-964B-F5D6A4318A89}.Debug|ARM64.Build.0 = Debug|ARM64 {F6520D2C-BB8E-45BB-964B-F5D6A4318A89}.Debug|x64.ActiveCfg = Debug|x64 {F6520D2C-BB8E-45BB-964B-F5D6A4318A89}.Debug|x64.Build.0 = Debug|x64 {F6520D2C-BB8E-45BB-964B-F5D6A4318A89}.Debug|x86.ActiveCfg = Debug|Win32 {F6520D2C-BB8E-45BB-964B-F5D6A4318A89}.Debug|x86.Build.0 = Debug|Win32 + {F6520D2C-BB8E-45BB-964B-F5D6A4318A89}.Release|ARM64.ActiveCfg = Release|ARM64 + {F6520D2C-BB8E-45BB-964B-F5D6A4318A89}.Release|ARM64.Build.0 = Release|ARM64 {F6520D2C-BB8E-45BB-964B-F5D6A4318A89}.Release|x64.ActiveCfg = Release|x64 {F6520D2C-BB8E-45BB-964B-F5D6A4318A89}.Release|x64.Build.0 = Release|x64 {F6520D2C-BB8E-45BB-964B-F5D6A4318A89}.Release|x86.ActiveCfg = Release|Win32 {F6520D2C-BB8E-45BB-964B-F5D6A4318A89}.Release|x86.Build.0 = Release|Win32 + {8C55D3E0-FEC2-4A6C-A374-651516ED8F99}.Debug|ARM64.ActiveCfg = Debug|ARM64 + {8C55D3E0-FEC2-4A6C-A374-651516ED8F99}.Debug|ARM64.Build.0 = Debug|ARM64 {8C55D3E0-FEC2-4A6C-A374-651516ED8F99}.Debug|x64.ActiveCfg = Debug|x64 {8C55D3E0-FEC2-4A6C-A374-651516ED8F99}.Debug|x64.Build.0 = Debug|x64 {8C55D3E0-FEC2-4A6C-A374-651516ED8F99}.Debug|x86.ActiveCfg = Debug|Win32 {8C55D3E0-FEC2-4A6C-A374-651516ED8F99}.Debug|x86.Build.0 = Debug|Win32 + {8C55D3E0-FEC2-4A6C-A374-651516ED8F99}.Release|ARM64.ActiveCfg = Release|ARM64 + {8C55D3E0-FEC2-4A6C-A374-651516ED8F99}.Release|ARM64.Build.0 = Release|ARM64 {8C55D3E0-FEC2-4A6C-A374-651516ED8F99}.Release|x64.ActiveCfg = Release|x64 {8C55D3E0-FEC2-4A6C-A374-651516ED8F99}.Release|x64.Build.0 = Release|x64 {8C55D3E0-FEC2-4A6C-A374-651516ED8F99}.Release|x86.ActiveCfg = Release|Win32 diff --git a/XEngine_Source/XEngine_MQServiceApp/MQService_Hdr.h b/XEngine_Source/XEngine_MQServiceApp/MQService_Hdr.h index fd4c49c..ca32472 100644 --- a/XEngine_Source/XEngine_MQServiceApp/MQService_Hdr.h +++ b/XEngine_Source/XEngine_MQServiceApp/MQService_Hdr.h @@ -99,14 +99,21 @@ extern MESSAGEQUEUE_DBCONFIG st_DBConfig; #pragma comment(lib,"Ws2_32.lib") #pragma comment(lib,"Dbghelp.lib") #ifdef _DEBUG -#ifdef _WIN64 +#ifdef _M_X64 #pragma comment(lib,"../x64/Debug/MQCore_ConfigModule.lib") #pragma comment(lib,"../x64/Debug/MQCore_ProtocolModule.lib") #pragma comment(lib,"../x64/Debug/MQCore_SessionModule.lib") #pragma comment(lib,"../x64/Debug/MQCore_DBModule.lib") #pragma comment(lib,"../x64/Debug/XEngine_InfoReport.lib") #pragma comment(lib,"../x64/Debug/MQCore_MemoryCache.lib") -#else +#elif _M_ARM64 +#pragma comment(lib,"../ARM64/Debug/MQCore_ConfigModule.lib") +#pragma comment(lib,"../ARM64/Debug/MQCore_ProtocolModule.lib") +#pragma comment(lib,"../ARM64/Debug/MQCore_SessionModule.lib") +#pragma comment(lib,"../ARM64/Debug/MQCore_DBModule.lib") +#pragma comment(lib,"../ARM64/Debug/XEngine_InfoReport.lib") +#pragma comment(lib,"../ARM64/Debug/MQCore_MemoryCache.lib") +#elif _M_IX86 #pragma comment(lib,"../Debug/MQCore_ConfigModule.lib") #pragma comment(lib,"../Debug/MQCore_ProtocolModule.lib") #pragma comment(lib,"../Debug/MQCore_SessionModule.lib") @@ -115,14 +122,21 @@ extern MESSAGEQUEUE_DBCONFIG st_DBConfig; #pragma comment(lib,"../Debug/MQCore_MemoryCache.lib") #endif #else -#ifdef _WIN64 +#ifdef _M_X64 #pragma comment(lib,"../x64/Release/MQCore_ConfigModule.lib") #pragma comment(lib,"../x64/Release/MQCore_ProtocolModule.lib") #pragma comment(lib,"../x64/Release/MQCore_SessionModule.lib") #pragma comment(lib,"../x64/Release/MQCore_DBModule.lib") #pragma comment(lib,"../x64/Release/XEngine_InfoReport.lib") #pragma comment(lib,"../x64/Release/MQCore_MemoryCache.lib") -#else +#elif _M_ARM64 +#pragma comment(lib,"../ARM64/Release/MQCore_ConfigModule.lib") +#pragma comment(lib,"../ARM64/Release/MQCore_ProtocolModule.lib") +#pragma comment(lib,"../ARM64/Release/MQCore_SessionModule.lib") +#pragma comment(lib,"../ARM64/Release/MQCore_DBModule.lib") +#pragma comment(lib,"../ARM64/Release/XEngine_InfoReport.lib") +#pragma comment(lib,"../ARM64/Release/MQCore_MemoryCache.lib") +#elif _M_IX86 #pragma comment(lib,"../Release/MQCore_ConfigModule.lib") #pragma comment(lib,"../Release/MQCore_ProtocolModule.lib") #pragma comment(lib,"../Release/MQCore_SessionModule.lib") diff --git a/XEngine_Source/XEngine_MQServiceApp/XEngine_MQServiceApp.vcxproj b/XEngine_Source/XEngine_MQServiceApp/XEngine_MQServiceApp.vcxproj index 1923395..8c20b2d 100644 --- a/XEngine_Source/XEngine_MQServiceApp/XEngine_MQServiceApp.vcxproj +++ b/XEngine_Source/XEngine_MQServiceApp/XEngine_MQServiceApp.vcxproj @@ -1,10 +1,18 @@ + + Debug + ARM64 + Debug Win32 + + Release + ARM64 + Release Win32 @@ -45,6 +53,12 @@ v143 Unicode + + Application + true + v143 + Unicode + Application false @@ -52,6 +66,13 @@ true Unicode + + Application + false + v143 + true + Unicode + @@ -66,9 +87,15 @@ + + + + + + true @@ -85,11 +112,21 @@ $(XEngine_Include);$(IncludePath) $(XEngine_Lib64);$(LibraryPath) + + true + $(XEngine_Include);$(IncludePath) + $(XEngine_LibArm64);$(LibraryPath) + false $(XEngine_Include);$(IncludePath) $(XEngine_Lib64);$(LibraryPath) + + false + $(XEngine_Include);$(IncludePath) + $(XEngine_LibArm64);$(LibraryPath) + Level3 @@ -140,6 +177,20 @@ true + + + Level3 + true + _DEBUG;_CONSOLE;_CRT_SECURE_NO_WARNINGS;%(PreprocessorDefinitions) + true + stdcpp20 + stdc17 + + + Console + true + + Level3 @@ -161,6 +212,27 @@ true + + + Level3 + true + true + true + WIN64;NDEBUG;_CONSOLE;_WINDOWS;_CRT_SECURE_NO_WARNINGS;%(PreprocessorDefinitions) + true + MultiThreaded + 4819 + stdcpp20 + stdc17 + /utf-8 %(AdditionalOptions) + + + Console + true + true + true + + From 13aaf64806b6367d216e62343a56f8b05c81d7aa Mon Sep 17 00:00:00 2001 From: qyt <486179@qq.com> Date: Thu, 6 Mar 2025 13:55:50 +0800 Subject: [PATCH 08/25] added:rocky linux and ubuntu arm64 ci release --- .github/workflows/RockyArm64_build.yml | 78 +++++++++++++++++ .github/workflows/RockyX86_64_build.yml | 83 +++++++++++++++++++ .github/workflows/UbuntuArm64_build.yml | 74 +++++++++++++++++ ...ubuntubuild.yml => UbuntuX86_64_build.yml} | 6 +- .github/workflows/macbuild.yml | 4 +- 5 files changed, 240 insertions(+), 5 deletions(-) create mode 100644 .github/workflows/RockyArm64_build.yml create mode 100644 .github/workflows/RockyX86_64_build.yml create mode 100644 .github/workflows/UbuntuArm64_build.yml rename .github/workflows/{ubuntubuild.yml => UbuntuX86_64_build.yml} (94%) diff --git a/.github/workflows/RockyArm64_build.yml b/.github/workflows/RockyArm64_build.yml new file mode 100644 index 0000000..afeca0e --- /dev/null +++ b/.github/workflows/RockyArm64_build.yml @@ -0,0 +1,78 @@ +name: rocky Arm64 build workflows + +on: + push: + branches: + - 'develop' + paths: + - 'XEngine_Source/**' + - 'XEngine_Release/**' + - '.github/**' + +permissions: + contents: read + +jobs: + build: + runs-on: ubuntu-24.04 + env: + IMAGE_NAME: rockylinux/rockylinux:9.5 + + strategy: + fail-fast: false + matrix: + arch: [linux/arm64] + + steps: + # 检出您的主仓库代码 + - name: Checkout main repository code + uses: actions/checkout@v4 + with: + ref: 'develop' + + - name: Set up QEMU + uses: docker/setup-qemu-action@v3 + + - name: Build ${{ matrix.arch }} + run: | + docker run --platform ${{ matrix.arch }} --rm \ + -v ${{ github.workspace }}:/workspace \ + -w /workspace ${{ env.IMAGE_NAME }} /bin/sh -c ' + set -e + dnf update -y + dnf install --allowerasing git make g++ wget curl jq unzip -y + + git config --global --add safe.directory /workspace + git submodule init + git submodule update + + latest_tag=$(curl -s https://api.github.com/repos/libxengine/libxengine/releases/latest | jq -r .tag_name) + wget https://github.com/libxengine/libxengine/releases/download/$latest_tag/XEngine_RockyLinux_9_Arm64.zip + unzip ./XEngine_RockyLinux_9_Arm64.zip -d ./XEngine_RockyLinux_9_Arm64 + cd XEngine_RockyLinux_9_Arm64 + + chmod 777 ./XEngine_LINEnv.sh + ./XEngine_LINEnv.sh -i 0 + + cp -rf ./XEngine_Include /usr/local/include + find ./XEngine_Linux -name "*.so" -exec cp {} /usr/lib64 \; + ldconfig + cd .. + + cd XEngine_Source + make ARCH=Arm64 RELEASE=1 + make FLAGS=InstallAll + make FLAGS=CleanAll + cd .. + + cd XEngine_Release + ./XEngine_MQServiceApp -t + chown -R $(id -u):$(id -g) . + chmod -R a+r . ' + + - name: Upload folder as artifact with RockyLinux + uses: actions/upload-artifact@v4 + with: + name: XEngine_MQServiceApp-RockyLinux_9_Arm64 + path: XEngine_Release/ + retention-days: 1 diff --git a/.github/workflows/RockyX86_64_build.yml b/.github/workflows/RockyX86_64_build.yml new file mode 100644 index 0000000..c8ef9ee --- /dev/null +++ b/.github/workflows/RockyX86_64_build.yml @@ -0,0 +1,83 @@ +name: rocky x86_64 build workflows + +on: + push: + branches: + - 'develop' + paths: + - 'XEngine_Source/**' + - 'XEngine_Release/**' + - '.github/**' + +permissions: + contents: read + +jobs: + build: + runs-on: ubuntu-latest + container: + image: rockylinux/rockylinux:9.5 + + steps: + # 检出您的主仓库代码 + - name: Checkout main repository code + uses: actions/checkout@v4 + with: + ref: 'develop' + + # 检出依赖的xengine仓库到指定的xengine目录 + - name: Checkout dependency repository (xengine) + uses: actions/checkout@v4 + with: + repository: libxengine/libxengine + path: libxengine + + - name: sub module checkout (opensource) + uses: actions/checkout@v4 + with: + repository: libxengine/XEngine_OPenSource + path: XEngine_Source/XEngine_Depend + + - name: install system package + run: | + dnf update -y + dnf install gcc g++ make git jq unzip -y + # 设置依赖库的环境变量 + - name: Set up Dependency rocky linux Environment + run: | + cd libxengine + chmod 777 * + ./XEngine_LINEnv.sh -i 0 + - name: install xengine library + run: | + latest_tag=$(curl -s https://api.github.com/repos/libxengine/libxengine/releases/latest | jq -r .tag_name) + wget https://github.com/libxengine/libxengine/releases/download/$latest_tag/XEngine_RockyLinux_9_x86-64.zip + unzip ./XEngine_RockyLinux_9_x86-64.zip -d ./XEngine_RockyLinux_9_x86-64 + cd XEngine_RockyLinux_9_x86-64 + + cp -rf ./XEngine_Include /usr/local/include + find ./XEngine_Linux -name "*.so" -exec cp {} /usr/lib64 \; + ldconfig + + - name: make + run: | + cd XEngine_Source + make + make FLAGS=InstallAll + make FLAGS=CleanAll + + make RELEASE=1 + make FLAGS=InstallAll + make FLAGS=CleanAll + + - name: test + run: | + cd XEngine_Release + ./XEngine_MQServiceApp -t + + - name: Upload folder as artifact with RockyLinux + uses: actions/upload-artifact@v4 + with: + name: XEngine_MQServiceApp-RockyLinux_9_x86_64 + path: XEngine_Release/ + retention-days: 1 diff --git a/.github/workflows/UbuntuArm64_build.yml b/.github/workflows/UbuntuArm64_build.yml new file mode 100644 index 0000000..bc4cb38 --- /dev/null +++ b/.github/workflows/UbuntuArm64_build.yml @@ -0,0 +1,74 @@ +name: ubuntu Arm64 build workflows + +on: + push: + branches: + - 'develop' + paths: + - 'XEngine_Source/**' + - 'XEngine_Release/**' + - '.github/**' + +jobs: + build: + runs-on: ubuntu-24.04 + env: + IMAGE_NAME: ubuntu:24.04 + + strategy: + fail-fast: false + matrix: + arch: [linux/arm64] + + steps: + - name: Checkout main repository code + uses: actions/checkout@v4 + with: + ref: 'develop' + + - name: Set up QEMU + uses: docker/setup-qemu-action@v3 + + - name: Build ${{ matrix.arch }} + run: | + docker run --platform ${{ matrix.arch }} --rm \ + -v ${{ github.workspace }}:/workspace \ + -w /workspace ${{ env.IMAGE_NAME }} /bin/sh -c ' + set -e + apt update -y + apt install git make g++ wget curl jq unzip -y + + git config --global --add safe.directory /workspace + git submodule init + git submodule update + + latest_tag=$(curl -s https://api.github.com/repos/libxengine/libxengine/releases/latest | jq -r .tag_name) + wget https://github.com/libxengine/libxengine/releases/download/$latest_tag/XEngine_UBuntu_24.04_Arm64.zip + unzip ./XEngine_UBuntu_24.04_Arm64.zip -d ./XEngine_UBuntu_24.04_Arm64 + cd XEngine_UBuntu_24.04_Arm64 + + chmod 777 ./XEngine_LINEnv.sh + ./XEngine_LINEnv.sh -i 0 + + cp -rf ./XEngine_Include /usr/local/include + find ./XEngine_Linux -name "*.so" -exec cp {} /usr/local/lib \; + ldconfig + cd .. + + cd XEngine_Source + make ARCH=Arm64 RELEASE=1 + make FLAGS=InstallAll + make FLAGS=CleanAll + cd .. + + cd XEngine_Release + ./XEngine_MQServiceApp -t + chown -R $(id -u):$(id -g) . + chmod -R a+r . ' + + - name: Upload folder as artifact with ubuntu Arm64 + uses: actions/upload-artifact@v4 + with: + name: XEngine_MQServiceApp-Ubuntu_24.04_Arm64 + path: XEngine_Release/ + retention-days: 1 \ No newline at end of file diff --git a/.github/workflows/ubuntubuild.yml b/.github/workflows/UbuntuX86_64_build.yml similarity index 94% rename from .github/workflows/ubuntubuild.yml rename to .github/workflows/UbuntuX86_64_build.yml index 171e746..9bbe8e1 100644 --- a/.github/workflows/ubuntubuild.yml +++ b/.github/workflows/UbuntuX86_64_build.yml @@ -1,4 +1,4 @@ -name: ubuntu build workflows +name: ubuntu x86_64 build workflows on: push: @@ -78,13 +78,13 @@ jobs: if: matrix.os == 'ubuntu-22.04' uses: actions/upload-artifact@v4 with: - name: XEngine_MQServiceApp-x86_64-Ubuntu-22.04 + name: XEngine_MQServiceApp-Ubuntu_22.04_x86_64 path: XEngine_Release/ retention-days: 1 - name: Upload folder as artifact with ubuntu24.04 if: matrix.os == 'ubuntu-24.04' uses: actions/upload-artifact@v4 with: - name: XEngine_MQServiceApp-x86_64-Ubuntu-24.04 + name: XEngine_MQServiceApp-Ubuntu_24.04_x86_64 path: XEngine_Release/ retention-days: 1 \ No newline at end of file diff --git a/.github/workflows/macbuild.yml b/.github/workflows/macbuild.yml index 7df659e..e3edb2d 100644 --- a/.github/workflows/macbuild.yml +++ b/.github/workflows/macbuild.yml @@ -83,13 +83,13 @@ jobs: if: matrix.os == 'macos-13' uses: actions/upload-artifact@v4 with: - name: XEngine_MQServiceApp-x86_64-Mac + name: XEngine_MQServiceApp-Mac_x86_64 path: XEngine_Release/ retention-days: 1 - name: Upload folder as artifact with mac arm if: matrix.os == 'macos-14' uses: actions/upload-artifact@v4 with: - name: XEngine_MQServiceApp-Arm64-Mac + name: XEngine_MQServiceApp-Mac_Arm64 path: XEngine_Release/ retention-days: 1 \ No newline at end of file From 79a0699abd4210a1b18801be72330a7d01e7dbfe Mon Sep 17 00:00:00 2001 From: qyt <486179@qq.com> Date: Thu, 6 Mar 2025 13:56:11 +0800 Subject: [PATCH 09/25] fixed:arm64 windows build --- .../MQCore_DBModule/DBModule_MQUser/DBModule_MQUser.cpp | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/XEngine_Source/MQCore_DBModule/DBModule_MQUser/DBModule_MQUser.cpp b/XEngine_Source/MQCore_DBModule/DBModule_MQUser/DBModule_MQUser.cpp index 1ee3bce..769378e 100644 --- a/XEngine_Source/MQCore_DBModule/DBModule_MQUser/DBModule_MQUser.cpp +++ b/XEngine_Source/MQCore_DBModule/DBModule_MQUser/DBModule_MQUser.cpp @@ -1163,7 +1163,7 @@ XHTHREAD CALLBACK CDBModule_MQUser::DBModule_MQUser_TimeThread(XPVOID lParam) while (pClass_This->bIsRun) { int nListCount = 0; - XENGINE_DBTIMERELEASE** ppSt_DBInfo; + XENGINE_DBTIMERELEASE** ppSt_DBInfo = NULL; pClass_This->DBModule_MQUser_TimeQuery(&ppSt_DBInfo, &nListCount); for (int i = 0; i < nListCount; i++) { From d91bc2450c99a6c6018d78456e42a86d4d9a020e Mon Sep 17 00:00:00 2001 From: qyt <486179@qq.com> Date: Tue, 11 Mar 2025 11:48:50 +0800 Subject: [PATCH 10/25] update:vs copy file --- XEngine_Source/VSCopy_Arm64.bat | 1 + XEngine_Source/VSCopy_Debug.bat | 1 + XEngine_Source/VSCopy_x64.bat | 1 + XEngine_Source/VSCopy_x86.bat | 1 + 4 files changed, 4 insertions(+) diff --git a/XEngine_Source/VSCopy_Arm64.bat b/XEngine_Source/VSCopy_Arm64.bat index 1637918..2d90d25 100644 --- a/XEngine_Source/VSCopy_Arm64.bat +++ b/XEngine_Source/VSCopy_Arm64.bat @@ -6,6 +6,7 @@ copy /y "%XEngine_LibArm64%\XEngine_Core\XEngine_ManagePool.dll" "./" copy /y "%XEngine_LibArm64%\XEngine_Core\XEngine_Cryption.dll" "./" copy /y "%XEngine_LibArm64%\XEngine_SystemSdk\XEngine_SystemApi.dll" "./" +copy /y "%XEngine_LibArm64%\XEngine_SystemSdk\XEngine_SystemConfig.dll" "./" copy /y "%XEngine_LibArm64%\XEngine_Client\XClient_APIHelp.dll" "./" copy /y "%XEngine_LibArm64%\XEngine_NetHelp\NetHelp_APIHelp.dll" "./" diff --git a/XEngine_Source/VSCopy_Debug.bat b/XEngine_Source/VSCopy_Debug.bat index 396027d..04cfcec 100644 --- a/XEngine_Source/VSCopy_Debug.bat +++ b/XEngine_Source/VSCopy_Debug.bat @@ -6,6 +6,7 @@ copy /y "D:\XEngine\XEngine_SourceCode\Debug\XEngine_ManagePool.dll" "./" copy /y "D:\XEngine\XEngine_SourceCode\Debug\XEngine_Cryption.dll" "./" copy /y "D:\XEngine\XEngine_SourceCode\Debug\XEngine_SystemApi.dll" "./" +copy /y "D:\XEngine\XEngine_SourceCode\Debug\XEngine_SystemConfig.dll" "./" copy /y "D:\XEngine\XEngine_SourceCode\Debug\XClient_APIHelp.dll" "./" copy /y "D:\XEngine\XEngine_SourceCode\Debug\NetHelp_APIHelp.dll" "./" diff --git a/XEngine_Source/VSCopy_x64.bat b/XEngine_Source/VSCopy_x64.bat index 52af2f8..6091a6f 100644 --- a/XEngine_Source/VSCopy_x64.bat +++ b/XEngine_Source/VSCopy_x64.bat @@ -6,6 +6,7 @@ copy /y "%XEngine_Lib64%\XEngine_Core\XEngine_ManagePool.dll" "./" copy /y "%XEngine_Lib64%\XEngine_Core\XEngine_Cryption.dll" "./" copy /y "%XEngine_Lib64%\XEngine_SystemSdk\XEngine_SystemApi.dll" "./" +copy /y "%XEngine_Lib64%\XEngine_SystemSdk\XEngine_SystemConfig.dll" "./" copy /y "%XEngine_Lib64%\XEngine_Client\XClient_APIHelp.dll" "./" copy /y "%XEngine_Lib64%\XEngine_NetHelp\NetHelp_APIHelp.dll" "./" diff --git a/XEngine_Source/VSCopy_x86.bat b/XEngine_Source/VSCopy_x86.bat index da0981d..ddd01a1 100644 --- a/XEngine_Source/VSCopy_x86.bat +++ b/XEngine_Source/VSCopy_x86.bat @@ -6,6 +6,7 @@ copy /y "%XEngine_Lib32%\XEngine_Core\XEngine_ManagePool.dll" "./" copy /y "%XEngine_Lib32%\XEngine_Core\XEngine_Cryption.dll" "./" copy /y "%XEngine_Lib32%\XEngine_SystemSdk\XEngine_SystemApi.dll" "./" +copy /y "%XEngine_Lib32%\XEngine_SystemSdk\XEngine_SystemConfig.dll" "./" copy /y "%XEngine_Lib32%\XEngine_Client\XClient_APIHelp.dll" "./" copy /y "%XEngine_Lib32%\XEngine_NetHelp\NetHelp_APIHelp.dll" "./" From 7a4eade167a27251e829a83bc9e32dfd1640e434 Mon Sep 17 00:00:00 2001 From: qyt <486179@qq.com> Date: Tue, 11 Mar 2025 13:53:12 +0800 Subject: [PATCH 11/25] modify:does not allow to create topic when the topic is existed --- .../MQService_TCPTask.cpp | 19 +++++++++++++++++++ 1 file changed, 19 insertions(+) diff --git a/XEngine_Source/XEngine_MQServiceApp/MQService_TCPTask.cpp b/XEngine_Source/XEngine_MQServiceApp/MQService_TCPTask.cpp index 31a35b6..a902b2d 100644 --- a/XEngine_Source/XEngine_MQServiceApp/MQService_TCPTask.cpp +++ b/XEngine_Source/XEngine_MQServiceApp/MQService_TCPTask.cpp @@ -681,6 +681,25 @@ bool MessageQueue_TCP_Handle(XENGINE_PROTOCOLHDR* pSt_ProtocolHdr, LPCXSTR lpszC else if (XENGINE_COMMUNICATION_PROTOCOL_OPERATOR_CODE_MQ_REQTOPICCREATE == pSt_ProtocolHdr->unOperatorCode) { pSt_ProtocolHdr->unOperatorCode = XENGINE_COMMUNICATION_PROTOCOL_OPERATOR_CODE_MQ_REPTOPICCREATE; + + int nListCount = 0; + XCHAR** ppszTableName; + //检查表是否存在 + DBModule_MQData_ShowTable(&ppszTableName, &nListCount); + for (int i = 0; i < nListCount; i++) + { + if (0 == _tcsxnicmp(ppszTableName[i], st_MQProtocol.tszMQKey, _tcsxlen(ppszTableName[i]))) + { + if (pSt_ProtocolHdr->byIsReply) + { + pSt_ProtocolHdr->wReserve = ERROR_XENGINE_MESSAGE_XMQ_CREATEKEY; + ProtocolModule_Packet_Common(nNetType, pSt_ProtocolHdr, &st_MQProtocol, tszSDBuffer, &nSDLen); + XEngine_MQXService_Send(lpszClientAddr, tszSDBuffer, nSDLen, nNetType); + } + XLOG_PRINT(xhLog, XENGINE_HELPCOMPONENTS_XLOG_IN_LOGLEVEL_ERROR, _X("%s消息端:%s,创建主题失败,主题名称:%s,主题存在,无法继续"), lpszClientType, lpszClientAddr, st_MQProtocol.tszMQKey); + return false; + } + } //创建表 if (!DBModule_MQData_CreateTable(st_MQProtocol.tszMQKey)) { From b1914adaff5ce1a573c46c5ea91d8e6ee6256438 Mon Sep 17 00:00:00 2001 From: qyt <486179@qq.com> Date: Tue, 11 Mar 2025 14:03:40 +0800 Subject: [PATCH 12/25] modify:http error code use protocol common hdr file --- XEngine_Source/XEngine_MQServiceApp/MQService_HttpTask.cpp | 4 ++-- XEngine_Source/XEngine_MQServiceApp/MQService_TCPTask.cpp | 2 +- XEngine_Source/XQueue_ProtocolHdr.h | 2 ++ 3 files changed, 5 insertions(+), 3 deletions(-) diff --git a/XEngine_Source/XEngine_MQServiceApp/MQService_HttpTask.cpp b/XEngine_Source/XEngine_MQServiceApp/MQService_HttpTask.cpp index 4ce4914..a186c20 100644 --- a/XEngine_Source/XEngine_MQServiceApp/MQService_HttpTask.cpp +++ b/XEngine_Source/XEngine_MQServiceApp/MQService_HttpTask.cpp @@ -66,7 +66,7 @@ bool MessageQueue_Http_Handle(RFCCOMPONENTS_HTTP_REQPARAM* pSt_HTTPParam, LPCXST HttpProtocol_ServerHelp_GetParament(pSt_HTTPParam->tszHttpUri, &ppSt_ListUrl, &nUrlCount); if (nUrlCount < 1) { - ProtocolModule_Packet_Http(tszPKTBuffer, &nPKTLen, 400, "url parament is incorrent"); + ProtocolModule_Packet_Http(tszPKTBuffer, &nPKTLen, ERROR_XENGINE_MESSAGE_HTTP_PARAMENT, "url parament is incorrent"); XEngine_MQXService_Send(lpszClientAddr, tszPKTBuffer, nPKTLen, XENGINE_MQAPP_NETTYPE_HTTP); return false; } @@ -93,7 +93,7 @@ bool MessageQueue_Http_Handle(RFCCOMPONENTS_HTTP_REQPARAM* pSt_HTTPParam, LPCXST //获取在线用户 http://127.0.0.1:5202/api?function=get&method=online&type=0 if (3 != nUrlCount) { - ProtocolModule_Packet_Http(tszPKTBuffer, &nPKTLen, 400, "url parament is incorrent"); + ProtocolModule_Packet_Http(tszPKTBuffer, &nPKTLen, ERROR_XENGINE_MESSAGE_HTTP_PARAMENT, "url parament is incorrent"); XEngine_MQXService_Send(lpszClientAddr, tszPKTBuffer, nPKTLen, XENGINE_MQAPP_NETTYPE_HTTP); return false; } diff --git a/XEngine_Source/XEngine_MQServiceApp/MQService_TCPTask.cpp b/XEngine_Source/XEngine_MQServiceApp/MQService_TCPTask.cpp index a902b2d..73e19ee 100644 --- a/XEngine_Source/XEngine_MQServiceApp/MQService_TCPTask.cpp +++ b/XEngine_Source/XEngine_MQServiceApp/MQService_TCPTask.cpp @@ -692,7 +692,7 @@ bool MessageQueue_TCP_Handle(XENGINE_PROTOCOLHDR* pSt_ProtocolHdr, LPCXSTR lpszC { if (pSt_ProtocolHdr->byIsReply) { - pSt_ProtocolHdr->wReserve = ERROR_XENGINE_MESSAGE_XMQ_CREATEKEY; + pSt_ProtocolHdr->wReserve = ERROR_XENGINE_MESSAGE_XMQ_EXISTED; ProtocolModule_Packet_Common(nNetType, pSt_ProtocolHdr, &st_MQProtocol, tszSDBuffer, &nSDLen); XEngine_MQXService_Send(lpszClientAddr, tszSDBuffer, nSDLen, nNetType); } diff --git a/XEngine_Source/XQueue_ProtocolHdr.h b/XEngine_Source/XQueue_ProtocolHdr.h index d03b55f..390135b 100644 --- a/XEngine_Source/XQueue_ProtocolHdr.h +++ b/XEngine_Source/XQueue_ProtocolHdr.h @@ -81,6 +81,8 @@ #define ERROR_XENGINE_MESSAGE_XMQ_QUERYOWNER 0x2015 //查询所有者失败 #define ERROR_XENGINE_MESSAGE_XMQ_MODIFYTOPIC 0x2016 //修改主题失败 #define ERROR_XENGINE_MESSAGE_XMQ_MODIFYMSG 0x2017 //修改消息失败 + +#define ERROR_XENGINE_MESSAGE_HTTP_PARAMENT 0x3001 //HTTP请求参数错误 /////////////////////////////////////////////////////////////////////////// // 导出的数据结构 /////////////////////////////////////////////////////////////////////////// From dc7aefcda4d37acbad6ad7187c5f30de8b0ccc30 Mon Sep 17 00:00:00 2001 From: qyt <486179@qq.com> Date: Tue, 11 Mar 2025 15:13:53 +0800 Subject: [PATCH 13/25] added:help module modify:Use of separate statistical notation for queue --- .../APIHelp_Counter/APIHelp_Counter.cpp | 124 +++++++++++++ .../APIHelp_Counter/APIHelp_Counter.h | 29 +++ .../MQCore_HelpModule/APIHelp_Define.h | 71 ++++++++ .../MQCore_HelpModule/APIHelp_Error.h | 17 ++ .../MQCore_HelpModule/MQCore_HelpModule.def | 8 + .../MQCore_HelpModule.vcxproj | 172 ++++++++++++++++++ .../MQCore_HelpModule.vcxproj.filters | 56 ++++++ .../MQCore_HelpModule.vcxproj.user | 4 + XEngine_Source/MQCore_HelpModule/Makefile | 69 +++++++ XEngine_Source/MQCore_HelpModule/dllmain.cpp | 19 ++ XEngine_Source/MQCore_HelpModule/framework.h | 5 + XEngine_Source/MQCore_HelpModule/pch.cpp | 43 +++++ XEngine_Source/MQCore_HelpModule/pch.h | 38 ++++ .../MemoryCache_DBData/MemoryCache_DBData.h | 1 + XEngine_Source/Makefile | 5 +- XEngine_Source/XEngine_MQServiceApp.sln | 15 ++ .../XEngine_MQServiceApp/MQService_Hdr.h | 8 + .../MQService_TCPTask.cpp | 21 ++- 18 files changed, 696 insertions(+), 9 deletions(-) create mode 100644 XEngine_Source/MQCore_HelpModule/APIHelp_Counter/APIHelp_Counter.cpp create mode 100644 XEngine_Source/MQCore_HelpModule/APIHelp_Counter/APIHelp_Counter.h create mode 100644 XEngine_Source/MQCore_HelpModule/APIHelp_Define.h create mode 100644 XEngine_Source/MQCore_HelpModule/APIHelp_Error.h create mode 100644 XEngine_Source/MQCore_HelpModule/MQCore_HelpModule.def create mode 100644 XEngine_Source/MQCore_HelpModule/MQCore_HelpModule.vcxproj create mode 100644 XEngine_Source/MQCore_HelpModule/MQCore_HelpModule.vcxproj.filters create mode 100644 XEngine_Source/MQCore_HelpModule/MQCore_HelpModule.vcxproj.user create mode 100644 XEngine_Source/MQCore_HelpModule/Makefile create mode 100644 XEngine_Source/MQCore_HelpModule/dllmain.cpp create mode 100644 XEngine_Source/MQCore_HelpModule/framework.h create mode 100644 XEngine_Source/MQCore_HelpModule/pch.cpp create mode 100644 XEngine_Source/MQCore_HelpModule/pch.h diff --git a/XEngine_Source/MQCore_HelpModule/APIHelp_Counter/APIHelp_Counter.cpp b/XEngine_Source/MQCore_HelpModule/APIHelp_Counter/APIHelp_Counter.cpp new file mode 100644 index 0000000..efaa5f8 --- /dev/null +++ b/XEngine_Source/MQCore_HelpModule/APIHelp_Counter/APIHelp_Counter.cpp @@ -0,0 +1,124 @@ +#include "pch.h" +#include "APIHelp_Counter.h" +/******************************************************************** +// Created: 2025/03/11 14:49:15 +// File Name: D:\XEngine_MQService\XEngine_Source\MQCore_HelpModule\APIHelp_Counter\APIHelp_Counter.cpp +// File Path: D:\XEngine_MQService\XEngine_Source\MQCore_HelpModule\APIHelp_Counter +// File Base: APIHelp_Counter +// File Ext: cpp +// Project: XEngine +// Author: qyt +// Purpose: 帮助模块计数器 +// History: +*********************************************************************/ +CAPIHelp_Counter::CAPIHelp_Counter() +{ +} +CAPIHelp_Counter::~CAPIHelp_Counter() +{ + +} +////////////////////////////////////////////////////////////////////////// +// 公有函数 +////////////////////////////////////////////////////////////////////////// +/******************************************************************** +函数名称:MemoryCache_DBData_DataSerialSet +函数功能:设置当前序列号 + 参数.一:lpszQueueName + In/Out:In + 类型:常量字符指针 + 可空:N + 意思:输入要插入的队列名称 + 参数.二:nSerial + In/Out:In + 类型:整数型 + 可空:N + 意思:输入设置的队列序列号 +返回值 + 类型:逻辑型 + 意思:是否成功 +备注: +*********************************************************************/ +bool CAPIHelp_Counter::APIHelp_Counter_SerialSet(LPCXSTR lpszQueueName, __int64x nSerial) +{ + APIHelp_IsErrorOccur = false; + + if (NULL == lpszQueueName) + { + APIHelp_IsErrorOccur = true; + APIHelp_dwErrorCode = ERROR_XENGINE_MQCORE_APIHELP_COUNTER_PARAMENT; + return false; + } + st_Locker.lock(); + stl_MapSerial[lpszQueueName] = nSerial; + st_Locker.unlock(); + return true; +} +/******************************************************************** +函数名称:APIHelp_Counter_SerialGet +函数功能:获取当前序列号 + 参数.一:lpszQueueName + In/Out:In + 类型:常量字符指针 + 可空:N + 意思:输入要操作的队列名称 + 参数.二:pInt_Serial + In/Out:Out + 类型:整数型指针 + 可空:N + 意思:输出当前队列序列号 +返回值 + 类型:逻辑型 + 意思:是否成功 +备注: +*********************************************************************/ +bool CAPIHelp_Counter::APIHelp_Counter_SerialGet(LPCXSTR lpszQueueName, __int64x *pInt_Serial) +{ + APIHelp_IsErrorOccur = false; + + if (NULL == pInt_Serial) + { + APIHelp_IsErrorOccur = true; + APIHelp_dwErrorCode = ERROR_XENGINE_MQCORE_APIHELP_COUNTER_PARAMENT; + return false; + } + st_Locker.lock_shared(); + auto stl_MapIterator = stl_MapSerial.find(lpszQueueName); + if (stl_MapIterator == stl_MapSerial.end()) + { + APIHelp_IsErrorOccur = true; + APIHelp_dwErrorCode = ERROR_XENGINE_MQCORE_APIHELP_COUNTER_NOTFOUND; + st_Locker.unlock_shared(); + return false; + } + stl_MapIterator->second++; + *pInt_Serial = stl_MapIterator->second; + st_Locker.unlock_shared(); + return true; +} +/******************************************************************** +函数名称:APIHelp_Counter_SerialDel +函数功能:删除当前队列 + 参数.一:lpszQueueName + In/Out:In + 类型:常量字符指针 + 可空:N + 意思:输入要操作的队列名称 +返回值 + 类型:逻辑型 + 意思:是否成功 +备注: +*********************************************************************/ +bool CAPIHelp_Counter::APIHelp_Counter_SerialDel(LPCXSTR lpszQueueName) +{ + APIHelp_IsErrorOccur = false; + + st_Locker.lock(); + auto stl_MapIterator = stl_MapSerial.find(lpszQueueName); + if (stl_MapIterator != stl_MapSerial.end()) + { + stl_MapSerial.erase(stl_MapIterator); + } + st_Locker.unlock(); + return true; +} \ No newline at end of file diff --git a/XEngine_Source/MQCore_HelpModule/APIHelp_Counter/APIHelp_Counter.h b/XEngine_Source/MQCore_HelpModule/APIHelp_Counter/APIHelp_Counter.h new file mode 100644 index 0000000..55134b9 --- /dev/null +++ b/XEngine_Source/MQCore_HelpModule/APIHelp_Counter/APIHelp_Counter.h @@ -0,0 +1,29 @@ +#pragma once +/******************************************************************** +// Created: 2025/03/11 14:45:06 +// File Name: D:\XEngine_MQService\XEngine_Source\MQCore_HelpModule\APIHelp_Counter\APIHelp_Counter.h +// File Path: D:\XEngine_MQService\XEngine_Source\MQCore_HelpModule\APIHelp_Counter +// File Base: APIHelp_Counter +// File Ext: h +// Project: XEngine +// Author: qyt +// Purpose: 帮助模块计数器 +// History: +*********************************************************************/ + + +class CAPIHelp_Counter +{ +public: + CAPIHelp_Counter(); + ~CAPIHelp_Counter(); +public: + bool APIHelp_Counter_SerialSet(LPCXSTR lpszQueueName, __int64x nSerial); + bool APIHelp_Counter_SerialGet(LPCXSTR lpszQueueName, __int64x* pInt_Serial); + bool APIHelp_Counter_SerialDel(LPCXSTR lpszQueueName); +protected: +private: + std::shared_mutex st_Locker; +private: + std::unordered_map> stl_MapSerial; +}; \ No newline at end of file diff --git a/XEngine_Source/MQCore_HelpModule/APIHelp_Define.h b/XEngine_Source/MQCore_HelpModule/APIHelp_Define.h new file mode 100644 index 0000000..a152dbe --- /dev/null +++ b/XEngine_Source/MQCore_HelpModule/APIHelp_Define.h @@ -0,0 +1,71 @@ +#pragma once +/******************************************************************** +// Created: 2025/03/11 14:47:16 +// File Name: D:\XEngine_MQService\XEngine_Source\MQCore_HelpModule\APIHelp_Define.h +// File Path: D:\XEngine_MQService\XEngine_Source\MQCore_HelpModule +// File Base: APIHelp_Define +// File Ext: h +// Project: XEngine +// Author: qyt +// Purpose: 导出的函数 +// History: +*********************************************************************/ +////////////////////////////////////////////////////////////////////////// +// 导出的函数 +////////////////////////////////////////////////////////////////////////// +extern "C" XLONG APIHelp_GetLastError(int *pInt_SysError = NULL); +/************************************************************************* + 统计计数器导出 +**************************************************************************/ +/******************************************************************** +函数名称:MemoryCache_DBData_DataSerialSet +函数功能:设置当前序列号 + 参数.一:lpszQueueName + In/Out:In + 类型:常量字符指针 + 可空:N + 意思:输入要插入的队列名称 + 参数.二:nSerial + In/Out:In + 类型:整数型 + 可空:N + 意思:输入设置的队列序列号 +返回值 + 类型:逻辑型 + 意思:是否成功 +备注: +*********************************************************************/ +extern "C" bool APIHelp_Counter_SerialSet(LPCXSTR lpszQueueName, __int64x nSerial); +/******************************************************************** +函数名称:APIHelp_Counter_SerialGet +函数功能:获取当前序列号 + 参数.一:lpszQueueName + In/Out:In + 类型:常量字符指针 + 可空:N + 意思:输入要操作的队列名称 + 参数.二:pInt_Serial + In/Out:Out + 类型:整数型指针 + 可空:N + 意思:输出当前队列序列号 +返回值 + 类型:逻辑型 + 意思:是否成功 +备注: +*********************************************************************/ +extern "C" bool APIHelp_Counter_SerialGet(LPCXSTR lpszQueueName, __int64x* pInt_Serial); +/******************************************************************** +函数名称:APIHelp_Counter_SerialDel +函数功能:删除当前队列 + 参数.一:lpszQueueName + In/Out:In + 类型:常量字符指针 + 可空:N + 意思:输入要操作的队列名称 +返回值 + 类型:逻辑型 + 意思:是否成功 +备注: +*********************************************************************/ +extern "C" bool APIHelp_Counter_SerialDel(LPCXSTR lpszQueueName); \ No newline at end of file diff --git a/XEngine_Source/MQCore_HelpModule/APIHelp_Error.h b/XEngine_Source/MQCore_HelpModule/APIHelp_Error.h new file mode 100644 index 0000000..e4c73ca --- /dev/null +++ b/XEngine_Source/MQCore_HelpModule/APIHelp_Error.h @@ -0,0 +1,17 @@ +#pragma once +/******************************************************************** +// Created: 2025/03/11 14:47:36 +// File Name: D:\XEngine_MQService\XEngine_Source\MQCore_HelpModule\APIHelp_Error.h +// File Path: D:\XEngine_MQService\XEngine_Source\MQCore_HelpModule +// File Base: APIHelp_Error +// File Ext: h +// Project: XEngine +// Author: qyt +// Purpose: 导出的错误 +// History: +*********************************************************************/ +////////////////////////////////////////////////////////////////////////// +// 导出的错误 +////////////////////////////////////////////////////////////////////////// +#define ERROR_XENGINE_MQCORE_APIHELP_COUNTER_PARAMENT 0x1B0001 //创建线程失败 +#define ERROR_XENGINE_MQCORE_APIHELP_COUNTER_NOTFOUND 0x1B0002 //没有找到 \ No newline at end of file diff --git a/XEngine_Source/MQCore_HelpModule/MQCore_HelpModule.def b/XEngine_Source/MQCore_HelpModule/MQCore_HelpModule.def new file mode 100644 index 0000000..bcadb6a --- /dev/null +++ b/XEngine_Source/MQCore_HelpModule/MQCore_HelpModule.def @@ -0,0 +1,8 @@ +LIBRARY + +EXPORTS + APIHelp_GetLastError + + APIHelp_Counter_SerialSet + APIHelp_Counter_SerialGet + APIHelp_Counter_SerialDel \ No newline at end of file diff --git a/XEngine_Source/MQCore_HelpModule/MQCore_HelpModule.vcxproj b/XEngine_Source/MQCore_HelpModule/MQCore_HelpModule.vcxproj new file mode 100644 index 0000000..60ec71a --- /dev/null +++ b/XEngine_Source/MQCore_HelpModule/MQCore_HelpModule.vcxproj @@ -0,0 +1,172 @@ + + + + + Debug + Win32 + + + Release + Win32 + + + Debug + x64 + + + Release + x64 + + + + 17.0 + Win32Proj + {4b061f8b-a783-45ea-a8d1-78f9668c49d2} + MQCoreHelpModule + 10.0 + + + + DynamicLibrary + true + v143 + Unicode + + + DynamicLibrary + false + v143 + true + Unicode + + + DynamicLibrary + true + v143 + Unicode + + + DynamicLibrary + false + v143 + true + Unicode + + + + + + + + + + + + + + + + + + + + + $(XEngine_Include);..\MQCore_HelpModule;$(IncludePath) + $(XEngine_Lib32);$(LibraryPath) + + + + Level3 + true + WIN32;_DEBUG;MQCOREHELPMODULE_EXPORTS;_WINDOWS;_USRDLL;%(PreprocessorDefinitions) + true + Use + pch.h + + + Windows + true + false + MQCore_HelpModule.def + + + + + Level3 + true + true + true + WIN32;NDEBUG;MQCOREHELPMODULE_EXPORTS;_WINDOWS;_USRDLL;%(PreprocessorDefinitions) + true + Use + pch.h + + + Windows + true + true + true + false + MQCore_HelpModule.def + + + + + Level3 + true + _DEBUG;MQCOREHELPMODULE_EXPORTS;_WINDOWS;_USRDLL;%(PreprocessorDefinitions) + true + Use + pch.h + + + Windows + true + false + MQCore_HelpModule.def + + + + + Level3 + true + true + true + NDEBUG;MQCOREHELPMODULE_EXPORTS;_WINDOWS;_USRDLL;%(PreprocessorDefinitions) + true + Use + pch.h + + + Windows + true + true + true + false + MQCore_HelpModule.def + + + + + + + + + + + + + + Create + Create + Create + Create + + + + + + + + + \ No newline at end of file diff --git a/XEngine_Source/MQCore_HelpModule/MQCore_HelpModule.vcxproj.filters b/XEngine_Source/MQCore_HelpModule/MQCore_HelpModule.vcxproj.filters new file mode 100644 index 0000000..cf7c225 --- /dev/null +++ b/XEngine_Source/MQCore_HelpModule/MQCore_HelpModule.vcxproj.filters @@ -0,0 +1,56 @@ + + + + + {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 + + + {bc1c5ac9-a633-493a-900e-49ad8bc6d55c} + + + {75ffe4ca-a70b-4320-98d0-219b06839ac3} + + + + + 头文件 + + + 头文件 + + + 头文件\APIHelp_Counter + + + 头文件 + + + 头文件 + + + + + 源文件 + + + 源文件 + + + 源文件\APIHelp_Counter + + + + + 源文件 + + + \ No newline at end of file diff --git a/XEngine_Source/MQCore_HelpModule/MQCore_HelpModule.vcxproj.user b/XEngine_Source/MQCore_HelpModule/MQCore_HelpModule.vcxproj.user new file mode 100644 index 0000000..88a5509 --- /dev/null +++ b/XEngine_Source/MQCore_HelpModule/MQCore_HelpModule.vcxproj.user @@ -0,0 +1,4 @@ + + + + \ No newline at end of file diff --git a/XEngine_Source/MQCore_HelpModule/Makefile b/XEngine_Source/MQCore_HelpModule/Makefile new file mode 100644 index 0000000..a2935b6 --- /dev/null +++ b/XEngine_Source/MQCore_HelpModule/Makefile @@ -0,0 +1,69 @@ +CC = g++ -Wall -std=c++20 -fPIC +PLATFORM = linux +PLATVER = +PLATDIR = +FILEEXT = +LIBFLAG = +RELEASE = 0 +LOADHDR = -I ./ +LOADSO = +LIB = +LIBEX = +OBJECTS = APIHelp_Counter.o pch.o + +ifeq ($(RELEASE),1) +FLAGS = -c +DEBUG = +else + ifeq ($(PLATFORM),mac) + FLAGS = -c + DEBUG = -g + else + FLAGS = -c -lc_p + DEBUG = -g -pg + endif +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:$(OBJECTS) + $(CC) $(DEBUG) $(OBJECTS) -o libMQCore_HelpModule.$(FILEEXT) $(LIBFLAG) $(LIB) $(LIBEX) $(LOADSO) $(LOADBIN) + +APIHelp_Counter.o:./APIHelp_Counter/APIHelp_Counter.cpp + $(CC) $(DEBUG) $(FLAGS) $(PLATVER) $(LOADHDR) ./APIHelp_Counter/APIHelp_Counter.cpp + +pch.o:./pch.cpp + $(CC) $(DEBUG) $(FLAGS) $(PLATVER) $(LOADHDR) ./pch.cpp + + +InstallAll:InstallSo +InstallSo:./libMQCore_HelpModule.$(FILEEXT) + cp ./libMQCore_HelpModule.$(FILEEXT) ../../XEngine_Release/libMQCore_HelpModule.$(FILEEXT) + + +CleanAll:CleanObj CleanMk +CleanObj: + rm *.o +CleanMk: + rm *.$(FILEEXT) \ No newline at end of file diff --git a/XEngine_Source/MQCore_HelpModule/dllmain.cpp b/XEngine_Source/MQCore_HelpModule/dllmain.cpp new file mode 100644 index 0000000..daed8c8 --- /dev/null +++ b/XEngine_Source/MQCore_HelpModule/dllmain.cpp @@ -0,0 +1,19 @@ +// dllmain.cpp : 定义 DLL 应用程序的入口点。 +#include "pch.h" + +BOOL APIENTRY DllMain( HMODULE hModule, + DWORD ul_reason_for_call, + LPVOID lpReserved + ) +{ + switch (ul_reason_for_call) + { + case DLL_PROCESS_ATTACH: + case DLL_THREAD_ATTACH: + case DLL_THREAD_DETACH: + case DLL_PROCESS_DETACH: + break; + } + return TRUE; +} + diff --git a/XEngine_Source/MQCore_HelpModule/framework.h b/XEngine_Source/MQCore_HelpModule/framework.h new file mode 100644 index 0000000..80cbbc9 --- /dev/null +++ b/XEngine_Source/MQCore_HelpModule/framework.h @@ -0,0 +1,5 @@ +#pragma once + +#define WIN32_LEAN_AND_MEAN // 从 Windows 头文件中排除极少使用的内容 +// Windows 头文件 +#include diff --git a/XEngine_Source/MQCore_HelpModule/pch.cpp b/XEngine_Source/MQCore_HelpModule/pch.cpp new file mode 100644 index 0000000..bb3d233 --- /dev/null +++ b/XEngine_Source/MQCore_HelpModule/pch.cpp @@ -0,0 +1,43 @@ +#include "pch.h" +#include "APIHelp_Counter/APIHelp_Counter.h" +/******************************************************************** +// Created: 2025/03/11 14:51:51 +// File Name: D:\XEngine_MQService\XEngine_Source\MQCore_HelpModule\pch.cpp +// File Path: D:\XEngine_MQService\XEngine_Source\MQCore_HelpModule +// File Base: pch +// File Ext: cpp +// Project: XEngine +// Author: qyt +// Purpose: 导出实现 +// History: +*********************************************************************/ +bool APIHelp_IsErrorOccur = false; +XLONG APIHelp_dwErrorCode = 0; +////////////////////////////////////////////////////////////////////////// +CAPIHelp_Counter m_HelpCounter; +////////////////////////////////////////////////////////////////////////// +// 导出的函数 +////////////////////////////////////////////////////////////////////////// +extern "C" XLONG APIHelp_GetLastError(int* pInt_SysError) +{ + if (NULL != pInt_SysError) + { + *pInt_SysError = errno; + } + return APIHelp_dwErrorCode; +} +/************************************************************************* + 统计计数器导出 +**************************************************************************/ +extern "C" bool APIHelp_Counter_SerialSet(LPCXSTR lpszQueueName, __int64x nSerial) +{ + return m_HelpCounter.APIHelp_Counter_SerialSet(lpszQueueName, nSerial); +} +extern "C" bool APIHelp_Counter_SerialGet(LPCXSTR lpszQueueName, __int64x* pInt_Serial) +{ + return m_HelpCounter.APIHelp_Counter_SerialGet(lpszQueueName, pInt_Serial); +} +extern "C" bool APIHelp_Counter_SerialDel(LPCXSTR lpszQueueName) +{ + return m_HelpCounter.APIHelp_Counter_SerialDel(lpszQueueName); +} \ No newline at end of file diff --git a/XEngine_Source/MQCore_HelpModule/pch.h b/XEngine_Source/MQCore_HelpModule/pch.h new file mode 100644 index 0000000..5efbc19 --- /dev/null +++ b/XEngine_Source/MQCore_HelpModule/pch.h @@ -0,0 +1,38 @@ +// pch.h: 这是预编译标头文件。 +// 下方列出的文件仅编译一次,提高了将来生成的生成性能。 +// 这还将影响 IntelliSense 性能,包括代码完成和许多代码浏览功能。 +// 但是,如果此处列出的文件中的任何一个在生成之间有更新,它们全部都将被重新编译。 +// 请勿在此处添加要频繁更新的文件,这将使得性能优势无效。 + +#ifndef PCH_H +#define PCH_H + +// 添加要在此处预编译的标头 +#ifdef _MSC_BUILD +#include "framework.h" +#endif +#endif //PCH_H +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include "APIHelp_Define.h" +#include "APIHelp_Error.h" +/******************************************************************** +// Created: 2025/03/11 14:46:04 +// File Name: D:\XEngine_MQService\XEngine_Source\MQCore_HelpModule\pch.h +// File Path: D:\XEngine_MQService\XEngine_Source\MQCore_HelpModule +// File Base: pch +// File Ext: h +// Project: XEngine +// Author: qyt +// Purpose: 公用头文件 +// History: +*********************************************************************/ +extern bool APIHelp_IsErrorOccur; +extern XLONG APIHelp_dwErrorCode; \ No newline at end of file diff --git a/XEngine_Source/MQCore_MemoryCache/MemoryCache_DBData/MemoryCache_DBData.h b/XEngine_Source/MQCore_MemoryCache/MemoryCache_DBData/MemoryCache_DBData.h index 6cb9638..6870c48 100644 --- a/XEngine_Source/MQCore_MemoryCache/MemoryCache_DBData/MemoryCache_DBData.h +++ b/XEngine_Source/MQCore_MemoryCache/MemoryCache_DBData/MemoryCache_DBData.h @@ -69,5 +69,6 @@ class CMemoryCache_DBData std::unique_ptr pSTDThread_Insert; private: std::list stl_ListInsert; + std::unordered_map> stl_MapSerial; std::unordered_map, MEMORYCACHE_DBINFO, TupleHash> stl_MapQuery; }; \ No newline at end of file diff --git a/XEngine_Source/Makefile b/XEngine_Source/Makefile index 36bf6fc..41a88ae 100644 --- a/XEngine_Source/Makefile +++ b/XEngine_Source/Makefile @@ -11,6 +11,7 @@ BASE_PROTOCOL_PATH = ./MQCore_ProtocolModule BASE_MEMORYCACHE_PATH = ./MQCore_MemoryCache BASE_DATABASE_PATH = ./MQCore_DBModule BASE_SESSION_PATH = ./MQCore_SessionModule +BASE_HELP_PATH = ./MQCore_HelpModule APP_SERVICE_PATH = ./XEngine_MQServiceApp @@ -21,7 +22,7 @@ else ifeq ($(PLATFORM),mac) endif XENGINE_MODULES = libjsoncpp.so libXEngine_InfoReport.so \ - libMQCore_ConfigModule.so libMQCore_ProtocolModule.so libMQCore_SessionModule.so libMQCore_MemoryCache.so libMQCore_DBModule.so \ + libMQCore_ConfigModule.so libMQCore_ProtocolModule.so libMQCore_SessionModule.so libMQCore_MemoryCache.so libMQCore_DBModule.so libMQCore_HelpModule.so \ XEngine_MQServiceApp.exe .PHONY:MakeAll @@ -51,6 +52,8 @@ libMQCore_MemoryCache.so: make -C $(BASE_MEMORYCACHE_PATH) PLATFORM=$(PLATFORM) $(FLAGS) libMQCore_DBModule.so: make -C $(BASE_DATABASE_PATH) PLATFORM=$(PLATFORM) $(FLAGS) +libMQCore_HelpModule.so: + make -C $(BASE_HELP_PATH) PLATFORM=$(PLATFORM) $(FLAGS) XEngine_MQServiceApp.exe: make -C $(APP_SERVICE_PATH) PLATFORM=$(PLATFORM) $(FLAGS) \ No newline at end of file diff --git a/XEngine_Source/XEngine_MQServiceApp.sln b/XEngine_Source/XEngine_MQServiceApp.sln index fe3b262..920c765 100644 --- a/XEngine_Source/XEngine_MQServiceApp.sln +++ b/XEngine_Source/XEngine_MQServiceApp.sln @@ -6,6 +6,7 @@ MinimumVisualStudioVersion = 10.0.40219.1 Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "XEngine_MQServiceApp", "XEngine_MQServiceApp\XEngine_MQServiceApp.vcxproj", "{34C9695F-7097-412F-ACC2-A3979A91D776}" ProjectSection(ProjectDependencies) = postProject {32D3FC68-6252-4D20-BB07-6C98BD753D11} = {32D3FC68-6252-4D20-BB07-6C98BD753D11} + {4B061F8B-A783-45EA-A8D1-78F9668C49D2} = {4B061F8B-A783-45EA-A8D1-78F9668C49D2} {5475F316-F9E9-4FF5-95ED-F7C9474709A3} = {5475F316-F9E9-4FF5-95ED-F7C9474709A3} {77321E0D-15DB-4C6E-8872-115CBBE41F27} = {77321E0D-15DB-4C6E-8872-115CBBE41F27} {8C55D3E0-FEC2-4A6C-A374-651516ED8F99} = {8C55D3E0-FEC2-4A6C-A374-651516ED8F99} @@ -47,6 +48,8 @@ Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "XEngine_InfoReport", "XEngi EndProject Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "MQCore_MemoryCache", "MQCore_MemoryCache\MQCore_MemoryCache.vcxproj", "{8C55D3E0-FEC2-4A6C-A374-651516ED8F99}" EndProject +Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "MQCore_HelpModule", "MQCore_HelpModule\MQCore_HelpModule.vcxproj", "{4B061F8B-A783-45EA-A8D1-78F9668C49D2}" +EndProject Global GlobalSection(SolutionConfigurationPlatforms) = preSolution Debug|ARM64 = Debug|ARM64 @@ -153,6 +156,18 @@ Global {8C55D3E0-FEC2-4A6C-A374-651516ED8F99}.Release|x64.Build.0 = Release|x64 {8C55D3E0-FEC2-4A6C-A374-651516ED8F99}.Release|x86.ActiveCfg = Release|Win32 {8C55D3E0-FEC2-4A6C-A374-651516ED8F99}.Release|x86.Build.0 = Release|Win32 + {4B061F8B-A783-45EA-A8D1-78F9668C49D2}.Debug|ARM64.ActiveCfg = Debug|x64 + {4B061F8B-A783-45EA-A8D1-78F9668C49D2}.Debug|ARM64.Build.0 = Debug|x64 + {4B061F8B-A783-45EA-A8D1-78F9668C49D2}.Debug|x64.ActiveCfg = Debug|x64 + {4B061F8B-A783-45EA-A8D1-78F9668C49D2}.Debug|x64.Build.0 = Debug|x64 + {4B061F8B-A783-45EA-A8D1-78F9668C49D2}.Debug|x86.ActiveCfg = Debug|Win32 + {4B061F8B-A783-45EA-A8D1-78F9668C49D2}.Debug|x86.Build.0 = Debug|Win32 + {4B061F8B-A783-45EA-A8D1-78F9668C49D2}.Release|ARM64.ActiveCfg = Release|x64 + {4B061F8B-A783-45EA-A8D1-78F9668C49D2}.Release|ARM64.Build.0 = Release|x64 + {4B061F8B-A783-45EA-A8D1-78F9668C49D2}.Release|x64.ActiveCfg = Release|x64 + {4B061F8B-A783-45EA-A8D1-78F9668C49D2}.Release|x64.Build.0 = Release|x64 + {4B061F8B-A783-45EA-A8D1-78F9668C49D2}.Release|x86.ActiveCfg = Release|Win32 + {4B061F8B-A783-45EA-A8D1-78F9668C49D2}.Release|x86.Build.0 = Release|Win32 EndGlobalSection GlobalSection(SolutionProperties) = preSolution HideSolutionNode = FALSE diff --git a/XEngine_Source/XEngine_MQServiceApp/MQService_Hdr.h b/XEngine_Source/XEngine_MQServiceApp/MQService_Hdr.h index ca32472..5028709 100644 --- a/XEngine_Source/XEngine_MQServiceApp/MQService_Hdr.h +++ b/XEngine_Source/XEngine_MQServiceApp/MQService_Hdr.h @@ -55,6 +55,8 @@ using namespace std; #include "../MQCore_DBModule/DBModule_Error.h" #include "../MQCore_ProtocolModule/Protocol_Define.h" #include "../MQCore_ProtocolModule/Protocol_Error.h" +#include "../MQCore_HelpModule/APIHelp_Define.h" +#include "../MQCore_HelpModule/APIHelp_Error.h" #include "../MQCore_MemoryCache/MemoryCache_Define.h" #include "../MQCore_MemoryCache/MemoryCache_Error.h" @@ -104,6 +106,7 @@ extern MESSAGEQUEUE_DBCONFIG st_DBConfig; #pragma comment(lib,"../x64/Debug/MQCore_ProtocolModule.lib") #pragma comment(lib,"../x64/Debug/MQCore_SessionModule.lib") #pragma comment(lib,"../x64/Debug/MQCore_DBModule.lib") +#pragma comment(lib,"../x64/Debug/MQCore_HelpModule.lib") #pragma comment(lib,"../x64/Debug/XEngine_InfoReport.lib") #pragma comment(lib,"../x64/Debug/MQCore_MemoryCache.lib") #elif _M_ARM64 @@ -111,6 +114,7 @@ extern MESSAGEQUEUE_DBCONFIG st_DBConfig; #pragma comment(lib,"../ARM64/Debug/MQCore_ProtocolModule.lib") #pragma comment(lib,"../ARM64/Debug/MQCore_SessionModule.lib") #pragma comment(lib,"../ARM64/Debug/MQCore_DBModule.lib") +#pragma comment(lib,"../ARM64/Debug/MQCore_HelpModule.lib") #pragma comment(lib,"../ARM64/Debug/XEngine_InfoReport.lib") #pragma comment(lib,"../ARM64/Debug/MQCore_MemoryCache.lib") #elif _M_IX86 @@ -118,6 +122,7 @@ extern MESSAGEQUEUE_DBCONFIG st_DBConfig; #pragma comment(lib,"../Debug/MQCore_ProtocolModule.lib") #pragma comment(lib,"../Debug/MQCore_SessionModule.lib") #pragma comment(lib,"../Debug/MQCore_DBModule.lib") +#pragma comment(lib,"../Debug/MQCore_HelpModule.lib") #pragma comment(lib,"../Debug/XEngine_InfoReport.lib") #pragma comment(lib,"../Debug/MQCore_MemoryCache.lib") #endif @@ -127,6 +132,7 @@ extern MESSAGEQUEUE_DBCONFIG st_DBConfig; #pragma comment(lib,"../x64/Release/MQCore_ProtocolModule.lib") #pragma comment(lib,"../x64/Release/MQCore_SessionModule.lib") #pragma comment(lib,"../x64/Release/MQCore_DBModule.lib") +#pragma comment(lib,"../x64/Release/MQCore_HelpModule.lib") #pragma comment(lib,"../x64/Release/XEngine_InfoReport.lib") #pragma comment(lib,"../x64/Release/MQCore_MemoryCache.lib") #elif _M_ARM64 @@ -134,6 +140,7 @@ extern MESSAGEQUEUE_DBCONFIG st_DBConfig; #pragma comment(lib,"../ARM64/Release/MQCore_ProtocolModule.lib") #pragma comment(lib,"../ARM64/Release/MQCore_SessionModule.lib") #pragma comment(lib,"../ARM64/Release/MQCore_DBModule.lib") +#pragma comment(lib,"../ARM64/Release/MQCore_HelpModule.lib") #pragma comment(lib,"../ARM64/Release/XEngine_InfoReport.lib") #pragma comment(lib,"../ARM64/Release/MQCore_MemoryCache.lib") #elif _M_IX86 @@ -141,6 +148,7 @@ extern MESSAGEQUEUE_DBCONFIG st_DBConfig; #pragma comment(lib,"../Release/MQCore_ProtocolModule.lib") #pragma comment(lib,"../Release/MQCore_SessionModule.lib") #pragma comment(lib,"../Release/MQCore_DBModule.lib") +#pragma comment(lib,"../Release/MQCore_HelpModule.lib") #pragma comment(lib,"../Release/XEngine_InfoReport.lib") #pragma comment(lib,"../Release/MQCore_MemoryCache.lib") #endif diff --git a/XEngine_Source/XEngine_MQServiceApp/MQService_TCPTask.cpp b/XEngine_Source/XEngine_MQServiceApp/MQService_TCPTask.cpp index 73e19ee..b82b6fe 100644 --- a/XEngine_Source/XEngine_MQServiceApp/MQService_TCPTask.cpp +++ b/XEngine_Source/XEngine_MQServiceApp/MQService_TCPTask.cpp @@ -377,15 +377,19 @@ bool MessageQueue_TCP_Handle(XENGINE_PROTOCOLHDR* pSt_ProtocolHdr, LPCXSTR lpszC } else { - //序列号为0,自加 - if (DBModule_MQData_GetSerial(st_DBQueue.tszQueueName, NULL, NULL, &st_DBIndex)) + if (!APIHelp_Counter_SerialGet(st_DBQueue.tszQueueName, &st_DBQueue.nQueueSerial)) { - st_DBQueue.nQueueSerial = st_DBIndex.nQueueSerial + 1; - } - else - { - //可能为空表 - st_DBQueue.nQueueSerial = 1; + //序列号为0,自加 + if (DBModule_MQData_GetSerial(st_DBQueue.tszQueueName, NULL, NULL, &st_DBIndex)) + { + st_DBQueue.nQueueSerial = st_DBIndex.nQueueSerial + 1; + } + else + { + //可能为空表 + st_DBQueue.nQueueSerial = 1; + } + APIHelp_Counter_SerialSet(st_DBQueue.tszQueueName, st_DBQueue.nQueueSerial); } } //是否被设置定时发布 @@ -768,6 +772,7 @@ bool MessageQueue_TCP_Handle(XENGINE_PROTOCOLHDR* pSt_ProtocolHdr, LPCXSTR lpszC return false; } //清楚数据库 + APIHelp_Counter_SerialDel(st_MQProtocol.tszMQKey); DBModule_MQData_DeleteTable(st_MQProtocol.tszMQKey); DBModule_MQUser_KeyDelete(&st_UserKey); DBModule_MQUser_TimeDelete(&st_DBInfo); From 1f15acb3037383cc144aad5553d249e79a96d1d3 Mon Sep 17 00:00:00 2001 From: qyt <486179@qq.com> Date: Tue, 11 Mar 2025 15:37:08 +0800 Subject: [PATCH 14/25] fixed:time publish task not work --- XEngine_Source/XEngine_MQServiceApp/MQService_Task.cpp | 2 ++ 1 file changed, 2 insertions(+) diff --git a/XEngine_Source/XEngine_MQServiceApp/MQService_Task.cpp b/XEngine_Source/XEngine_MQServiceApp/MQService_Task.cpp index 7b13e65..e37030e 100644 --- a/XEngine_Source/XEngine_MQServiceApp/MQService_Task.cpp +++ b/XEngine_Source/XEngine_MQServiceApp/MQService_Task.cpp @@ -28,6 +28,8 @@ void CALLBACK MessageQueue_CBTask_TimePublish(XENGINE_DBTIMERELEASE* pSt_DBInfo, st_DBInfo.nQueueSerial = pSt_DBInfo->nIDMsg; _tcsxcpy(st_DBInfo.tszQueueName, pSt_DBInfo->tszQueueName); DBModule_MQData_Query(&st_DBInfo); + + memcpy(&st_MQProtocol.st_MSGAttr, &st_DBInfo.nMsgAttr, sizeof(st_DBInfo.nMsgAttr)); //是否需要通知 int nListCount = 0; XENGINE_DBUSERKEY** ppSt_ListUser; From 211bc513e54c6b0d256f4762de6d79172313f99b Mon Sep 17 00:00:00 2001 From: qyt <486179@qq.com> Date: Tue, 11 Mar 2025 15:58:56 +0800 Subject: [PATCH 15/25] fixed:build error --- XEngine_Source/XEngine_MQServiceApp/Makefile | 4 +- XEngine_Source/XQueue_ProtocolHdr.h | 54 ++++++++++---------- 2 files changed, 29 insertions(+), 29 deletions(-) diff --git a/XEngine_Source/XEngine_MQServiceApp/Makefile b/XEngine_Source/XEngine_MQServiceApp/Makefile index e6710ce..62bd490 100644 --- a/XEngine_Source/XEngine_MQServiceApp/Makefile +++ b/XEngine_Source/XEngine_MQServiceApp/Makefile @@ -4,10 +4,10 @@ PLATVER = PLATDIR = RELEASE = 0 LOADHDR = -I ./ -LOADSO = -L ../MQCore_ConfigModule -L ../MQCore_ProtocolModule -L ../MQCore_SessionModule -L ../MQCore_MemoryCache -L ../MQCore_DBModule \ +LOADSO = -L ../MQCore_ConfigModule -L ../MQCore_ProtocolModule -L ../MQCore_SessionModule -L ../MQCore_MemoryCache -L ../MQCore_DBModule -L ../MQCore_HelpModule \ -L ../XEngine_Depend/XEngine_Module/jsoncpp -L ../XEngine_Depend/XEngine_Module/XEngine_InfoReport LIB = -lXEngine_BaseLib -lXEngine_Algorithm -lXEngine_Core -lXEngine_ManagePool -lXClient_APIHelp -lXEngine_SystemApi -lHelpComponents_XLog -lHelpComponents_Packets -lRfcComponents_WSProtocol -lRfcComponents_HttpProtocol -lRfcComponents_MQTTProtocol \ - -lMQCore_ConfigModule -lMQCore_ProtocolModule -lMQCore_SessionModule -lMQCore_MemoryCache -lMQCore_DBModule \ + -lMQCore_ConfigModule -lMQCore_ProtocolModule -lMQCore_SessionModule -lMQCore_MemoryCache -lMQCore_DBModule -lMQCore_HelpModule\ -ljsoncpp -lXEngine_InfoReport LIBEX = OBJECTS = MQService_Net.o MQService_Config.o MQService_TCPTask.o MQService_HttpTask.o MQService_WSTask.o MQService_Task.o MQService_MQTTTask.o XEngine_MQServiceApp.o diff --git a/XEngine_Source/XQueue_ProtocolHdr.h b/XEngine_Source/XQueue_ProtocolHdr.h index 390135b..d072664 100644 --- a/XEngine_Source/XQueue_ProtocolHdr.h +++ b/XEngine_Source/XQueue_ProtocolHdr.h @@ -54,35 +54,35 @@ /////////////////////////////////////////////////////////////////////////// // 协议错误定义 /////////////////////////////////////////////////////////////////////////// -#define ERROR_XENGINE_MESSAGE_AUTH_LOGGED 0x1001 //已经登陆过了 -#define ERROR_XENGINE_MESSAGE_AUTH_HTTP 0x1002 //HTTP PASS验证失败 -#define ERROR_XENGINE_MESSAGE_AUTH_USERPASS 0x1003 //用户或者密码错误 -#define ERROR_XENGINE_MESSAGE_AUTH_NOTLOGIN 0x1004 //没有登陆,禁止操作 -#define ERROR_XENGINE_MESSAGE_AUTH_APIREG 0x1005 //HTTP 远程注册失败 -#define ERROR_XENGINE_MESSAGE_AUTH_EXISTED 0x1006 //用户已经存在 -#define ERROR_XENGINE_MESSAGE_AUTH_REGISTER 0x1007 //用户注册失败,数据错误 -#define ERROR_XENGINE_MESSAGE_AUTH_APIDEL 0x1008 //HTTP API删除失败 -#define ERROR_XENGINE_MESSAGE_AUTH_DELETE 0x1009 //本地删除失败 +#define ERROR_XENGINE_MESSAGE_AUTH_LOGGED 0x001 //已经登陆过了 +#define ERROR_XENGINE_MESSAGE_AUTH_HTTP 0x002 //HTTP PASS验证失败 +#define ERROR_XENGINE_MESSAGE_AUTH_USERPASS 0x003 //用户或者密码错误 +#define ERROR_XENGINE_MESSAGE_AUTH_NOTLOGIN 0x004 //没有登陆,禁止操作 +#define ERROR_XENGINE_MESSAGE_AUTH_APIREG 0x005 //HTTP 远程注册失败 +#define ERROR_XENGINE_MESSAGE_AUTH_EXISTED 0x006 //用户已经存在 +#define ERROR_XENGINE_MESSAGE_AUTH_REGISTER 0x007 //用户注册失败,数据错误 +#define ERROR_XENGINE_MESSAGE_AUTH_APIDEL 0x008 //HTTP API删除失败 +#define ERROR_XENGINE_MESSAGE_AUTH_DELETE 0x009 //本地删除失败 -#define ERROR_XENGINE_MESSAGE_XMQ_EXISTED 0x2001 //消息存在 -#define ERROR_XENGINE_MESSAGE_XMQ_INSERT 0x2002 //插入数据库失败 -#define ERROR_XENGINE_MESSAGE_XMQ_MSGQUERY 0x2003 //查询消息失败 -#define ERROR_XENGINE_MESSAGE_XMQ_BELONG 0x2004 //指定用户消息,无权使用 -#define ERROR_XENGINE_MESSAGE_XMQ_TIMEOUT 0x2005 //消息超时,无权使用 -#define ERROR_XENGINE_MESSAGE_XMQ_PUBTIME 0x2006 //定时消息,无权使用 -#define ERROR_XENGINE_MESSAGE_XMQ_KEYQUERY 0x2007 //查询绑定消息失败 -#define ERROR_XENGINE_MESSAGE_XMQ_SERIAL 0x2008 //消息序号错误 -#define ERROR_XENGINE_MESSAGE_XMQ_CREATEKEY 0x2009 //创建消息KEY失败 -#define ERROR_XENGINE_MESSAGE_XMQ_BINDOWNER 0x2010 //绑定所有者失败 -#define ERROR_XENGINE_MESSAGE_XMQ_DELOWNER 0x2011 //删除所有者失败 -#define ERROR_XENGINE_MESSAGE_XMQ_KEYUP 0x2012 //更新KEY失败 -#define ERROR_XENGINE_MESSAGE_XMQ_BINDKEY 0x2013 //绑定KEY失败 -#define ERROR_XENGINE_MESSAGE_XMQ_DELKEY 0x2014 //删除KEY失败 -#define ERROR_XENGINE_MESSAGE_XMQ_QUERYOWNER 0x2015 //查询所有者失败 -#define ERROR_XENGINE_MESSAGE_XMQ_MODIFYTOPIC 0x2016 //修改主题失败 -#define ERROR_XENGINE_MESSAGE_XMQ_MODIFYMSG 0x2017 //修改消息失败 +#define ERROR_XENGINE_MESSAGE_XMQ_EXISTED 0x101 //消息存在 +#define ERROR_XENGINE_MESSAGE_XMQ_INSERT 0x102 //插入数据库失败 +#define ERROR_XENGINE_MESSAGE_XMQ_MSGQUERY 0x103 //查询消息失败 +#define ERROR_XENGINE_MESSAGE_XMQ_BELONG 0x104 //指定用户消息,无权使用 +#define ERROR_XENGINE_MESSAGE_XMQ_TIMEOUT 0x105 //消息超时,无权使用 +#define ERROR_XENGINE_MESSAGE_XMQ_PUBTIME 0x106 //定时消息,无权使用 +#define ERROR_XENGINE_MESSAGE_XMQ_KEYQUERY 0x107 //查询绑定消息失败 +#define ERROR_XENGINE_MESSAGE_XMQ_SERIAL 0x108 //消息序号错误 +#define ERROR_XENGINE_MESSAGE_XMQ_CREATEKEY 0x109 //创建消息KEY失败 +#define ERROR_XENGINE_MESSAGE_XMQ_BINDOWNER 0x110 //绑定所有者失败 +#define ERROR_XENGINE_MESSAGE_XMQ_DELOWNER 0x111 //删除所有者失败 +#define ERROR_XENGINE_MESSAGE_XMQ_KEYUP 0x112 //更新KEY失败 +#define ERROR_XENGINE_MESSAGE_XMQ_BINDKEY 0x113 //绑定KEY失败 +#define ERROR_XENGINE_MESSAGE_XMQ_DELKEY 0x114 //删除KEY失败 +#define ERROR_XENGINE_MESSAGE_XMQ_QUERYOWNER 0x115 //查询所有者失败 +#define ERROR_XENGINE_MESSAGE_XMQ_MODIFYTOPIC 0x116 //修改主题失败 +#define ERROR_XENGINE_MESSAGE_XMQ_MODIFYMSG 0x117 //修改消息失败 -#define ERROR_XENGINE_MESSAGE_HTTP_PARAMENT 0x3001 //HTTP请求参数错误 +#define ERROR_XENGINE_MESSAGE_HTTP_PARAMENT 0x201 //HTTP请求参数错误 /////////////////////////////////////////////////////////////////////////// // 导出的数据结构 /////////////////////////////////////////////////////////////////////////// From bcbb7f4379b6a5daf77ee66e6a161b64756122ec Mon Sep 17 00:00:00 2001 From: qyt <486179@qq.com> Date: Tue, 11 Mar 2025 16:18:40 +0800 Subject: [PATCH 16/25] fixed:vs build error --- .../MQCore_HelpModule.vcxproj | 85 +++++++++++++++++++ XEngine_Source/XEngine_MQServiceApp.sln | 8 +- 2 files changed, 89 insertions(+), 4 deletions(-) diff --git a/XEngine_Source/MQCore_HelpModule/MQCore_HelpModule.vcxproj b/XEngine_Source/MQCore_HelpModule/MQCore_HelpModule.vcxproj index 60ec71a..bc15647 100644 --- a/XEngine_Source/MQCore_HelpModule/MQCore_HelpModule.vcxproj +++ b/XEngine_Source/MQCore_HelpModule/MQCore_HelpModule.vcxproj @@ -1,10 +1,18 @@ + + Debug + ARM64 + Debug Win32 + + Release + ARM64 + Release Win32 @@ -45,6 +53,12 @@ v143 Unicode + + DynamicLibrary + true + v143 + Unicode + DynamicLibrary false @@ -52,6 +66,13 @@ true Unicode + + DynamicLibrary + false + v143 + true + Unicode + @@ -66,14 +87,40 @@ + + + + + + $(XEngine_Include);..\MQCore_HelpModule;$(IncludePath) $(XEngine_Lib32);$(LibraryPath) + + $(XEngine_Include);$(IncludePath) + $(XEngine_Lib32);$(LibraryPath) + + + $(XEngine_Include);$(IncludePath) + $(XEngine_Lib64);$(LibraryPath) + + + $(XEngine_Include);$(IncludePath) + $(XEngine_LibArm64);$(LibraryPath) + + + $(XEngine_Include);$(IncludePath) + $(XEngine_Lib64);$(LibraryPath) + + + $(XEngine_Include);$(IncludePath) + $(XEngine_LibArm64);$(LibraryPath) + Level3 @@ -126,6 +173,22 @@ MQCore_HelpModule.def + + + Level3 + true + _DEBUG;MQCOREHELPMODULE_EXPORTS;_WINDOWS;_USRDLL;%(PreprocessorDefinitions) + true + Use + pch.h + + + Windows + true + false + MQCore_HelpModule.def + + Level3 @@ -146,6 +209,26 @@ MQCore_HelpModule.def + + + Level3 + true + true + true + NDEBUG;MQCOREHELPMODULE_EXPORTS;_WINDOWS;_USRDLL;%(PreprocessorDefinitions) + true + Use + pch.h + + + Windows + true + true + true + false + MQCore_HelpModule.def + + @@ -159,8 +242,10 @@ Create Create + Create Create Create + Create diff --git a/XEngine_Source/XEngine_MQServiceApp.sln b/XEngine_Source/XEngine_MQServiceApp.sln index 920c765..0e0bd2a 100644 --- a/XEngine_Source/XEngine_MQServiceApp.sln +++ b/XEngine_Source/XEngine_MQServiceApp.sln @@ -156,14 +156,14 @@ Global {8C55D3E0-FEC2-4A6C-A374-651516ED8F99}.Release|x64.Build.0 = Release|x64 {8C55D3E0-FEC2-4A6C-A374-651516ED8F99}.Release|x86.ActiveCfg = Release|Win32 {8C55D3E0-FEC2-4A6C-A374-651516ED8F99}.Release|x86.Build.0 = Release|Win32 - {4B061F8B-A783-45EA-A8D1-78F9668C49D2}.Debug|ARM64.ActiveCfg = Debug|x64 - {4B061F8B-A783-45EA-A8D1-78F9668C49D2}.Debug|ARM64.Build.0 = Debug|x64 + {4B061F8B-A783-45EA-A8D1-78F9668C49D2}.Debug|ARM64.ActiveCfg = Debug|ARM64 + {4B061F8B-A783-45EA-A8D1-78F9668C49D2}.Debug|ARM64.Build.0 = Debug|ARM64 {4B061F8B-A783-45EA-A8D1-78F9668C49D2}.Debug|x64.ActiveCfg = Debug|x64 {4B061F8B-A783-45EA-A8D1-78F9668C49D2}.Debug|x64.Build.0 = Debug|x64 {4B061F8B-A783-45EA-A8D1-78F9668C49D2}.Debug|x86.ActiveCfg = Debug|Win32 {4B061F8B-A783-45EA-A8D1-78F9668C49D2}.Debug|x86.Build.0 = Debug|Win32 - {4B061F8B-A783-45EA-A8D1-78F9668C49D2}.Release|ARM64.ActiveCfg = Release|x64 - {4B061F8B-A783-45EA-A8D1-78F9668C49D2}.Release|ARM64.Build.0 = Release|x64 + {4B061F8B-A783-45EA-A8D1-78F9668C49D2}.Release|ARM64.ActiveCfg = Release|ARM64 + {4B061F8B-A783-45EA-A8D1-78F9668C49D2}.Release|ARM64.Build.0 = Release|ARM64 {4B061F8B-A783-45EA-A8D1-78F9668C49D2}.Release|x64.ActiveCfg = Release|x64 {4B061F8B-A783-45EA-A8D1-78F9668C49D2}.Release|x64.Build.0 = Release|x64 {4B061F8B-A783-45EA-A8D1-78F9668C49D2}.Release|x86.ActiveCfg = Release|Win32 From 3d380196919eb535603968bdfcf7a4810cd71f88 Mon Sep 17 00:00:00 2001 From: qyt <486179@qq.com> Date: Tue, 11 Mar 2025 17:34:16 +0800 Subject: [PATCH 17/25] fixed:time count does not work for memory cache --- .../MemoryCache_DBData/MemoryCache_DBData.cpp | 2 +- .../MemoryCache_DBUser/MemoryCache_DBUser.cpp | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/XEngine_Source/MQCore_MemoryCache/MemoryCache_DBData/MemoryCache_DBData.cpp b/XEngine_Source/MQCore_MemoryCache/MemoryCache_DBData/MemoryCache_DBData.cpp index 3a59ddd..6921db8 100644 --- a/XEngine_Source/MQCore_MemoryCache/MemoryCache_DBData/MemoryCache_DBData.cpp +++ b/XEngine_Source/MQCore_MemoryCache/MemoryCache_DBData/MemoryCache_DBData.cpp @@ -301,7 +301,7 @@ XHTHREAD CALLBACK CMemoryCache_DBData::DBModule_MQUser_TimeThread(XPVOID lParam) { stl_ListDelete.push_back(stl_MapIterator->second.st_DBMessageInfo); } - else if (pClass_This->m_nTimeCount > 0 && ((nTimeEnd - stl_MapIterator->second.nTimeLast) > pClass_This->m_nTimeCount)) + else if (pClass_This->m_nTimeCount > 0 && ((nTimeEnd - stl_MapIterator->second.nTimeStart) > pClass_This->m_nTimeCount)) { stl_ListDelete.push_back(stl_MapIterator->second.st_DBMessageInfo); } diff --git a/XEngine_Source/MQCore_MemoryCache/MemoryCache_DBUser/MemoryCache_DBUser.cpp b/XEngine_Source/MQCore_MemoryCache/MemoryCache_DBUser/MemoryCache_DBUser.cpp index 52aae56..fc0e9a8 100644 --- a/XEngine_Source/MQCore_MemoryCache/MemoryCache_DBUser/MemoryCache_DBUser.cpp +++ b/XEngine_Source/MQCore_MemoryCache/MemoryCache_DBUser/MemoryCache_DBUser.cpp @@ -229,7 +229,7 @@ XHTHREAD CALLBACK CMemoryCache_DBUser::DBModule_MQUser_TimeThread(XPVOID lParam) { stl_ListDelete.push_back(stl_MapIterator->second.st_DBUserInfo); } - else if (pClass_This->m_nTimeCount > 0 && ((nTimeEnd - stl_MapIterator->second.nTimeLast) > pClass_This->m_nTimeCount)) + else if (pClass_This->m_nTimeCount > 0 && ((nTimeEnd - stl_MapIterator->second.nTimeStart) > pClass_This->m_nTimeCount)) { stl_ListDelete.push_back(stl_MapIterator->second.st_DBUserInfo); } From 4e70051813e4782419b8444ca427a72da74be7fa Mon Sep 17 00:00:00 2001 From: qyt <486179@qq.com> Date: Wed, 12 Mar 2025 10:24:12 +0800 Subject: [PATCH 18/25] added:authorize verification support with http authorize --- .../XEngine_Config/XEngine_Config.json | 9 +- .../MQCore_ConfigModule/Config_Define.h | 6 + .../MQCore_ConfigModule/Config_Error.h | 3 +- .../Config_Json/Config_Json.cpp | 11 ++ .../MQService_HttpTask.cpp | 123 ++++++++++-------- XEngine_Source/XQueue_ProtocolHdr.h | 1 + 6 files changed, 93 insertions(+), 60 deletions(-) diff --git a/XEngine_Release/XEngine_Config/XEngine_Config.json b/XEngine_Release/XEngine_Config/XEngine_Config.json index 5a5fcc7..bb31d7e 100644 --- a/XEngine_Release/XEngine_Config/XEngine_Config.json +++ b/XEngine_Release/XEngine_Config/XEngine_Config.json @@ -23,7 +23,7 @@ "LogType":17 }, "XSql":{ - "SQLAddr":"10.0.2.6", + "SQLAddr":"10.0.4.150", "SQLPort":3306, "SQLUser":"root", "SQLPass":"123123aa" @@ -39,9 +39,14 @@ "bDataQueryEnable":true, "bDataInsertEnable":true, "bUserQueryEnable":true, - "nTimeLast":60, + "nTimeLast":3600, "nTimeCount":0 }, + "XAuthorize":{ + "bHTTPAuth":false, + "tszHTTPPass":"", + "tszToken":"XENGINE_MQPasskey" + }, "XReport":{ "bEnable":true, "tszServiceName":"XEngine_MQService", diff --git a/XEngine_Source/MQCore_ConfigModule/Config_Define.h b/XEngine_Source/MQCore_ConfigModule/Config_Define.h index d2c4fc6..b90cca0 100644 --- a/XEngine_Source/MQCore_ConfigModule/Config_Define.h +++ b/XEngine_Source/MQCore_ConfigModule/Config_Define.h @@ -64,6 +64,12 @@ typedef struct int nTimeLast; int nTimeCount; }st_XMemory; + struct + { + bool bHTTPAuth; + XCHAR tszHTTPPass[MAX_PATH]; + XCHAR tszToken[MAX_PATH]; + }st_XAuthorize; struct { bool bEnable; diff --git a/XEngine_Source/MQCore_ConfigModule/Config_Error.h b/XEngine_Source/MQCore_ConfigModule/Config_Error.h index c0aa55d..e3dda9a 100644 --- a/XEngine_Source/MQCore_ConfigModule/Config_Error.h +++ b/XEngine_Source/MQCore_ConfigModule/Config_Error.h @@ -22,4 +22,5 @@ #define ERROR_MQ_MODULE_CONFIG_JSON_XPASS 0x0020007 #define ERROR_MQ_MODULE_CONFIG_JSON_XVER 0x0020008 #define ERROR_MQ_MODULE_CONFIG_JSON_XREPORT 0x0020009 -#define ERROR_MQ_MODULE_CONFIG_JSON_XMEMORY 0x0020010 \ No newline at end of file +#define ERROR_MQ_MODULE_CONFIG_JSON_XMEMORY 0x0020010 +#define ERROR_MQ_MODULE_CONFIG_JSON_XAUTHORIZE 0x0020011 \ No newline at end of file diff --git a/XEngine_Source/MQCore_ConfigModule/Config_Json/Config_Json.cpp b/XEngine_Source/MQCore_ConfigModule/Config_Json/Config_Json.cpp index e69293d..27677c1 100644 --- a/XEngine_Source/MQCore_ConfigModule/Config_Json/Config_Json.cpp +++ b/XEngine_Source/MQCore_ConfigModule/Config_Json/Config_Json.cpp @@ -137,6 +137,17 @@ bool CConfig_Json::Config_Json_File(LPCXSTR lpszConfigFile,XENGINE_SERVERCONFIG pSt_ServerConfig->st_XMemory.nTimeLast = st_JsonXMemory["nTimeLast"].asInt(); pSt_ServerConfig->st_XMemory.nTimeCount = st_JsonXMemory["nTimeCount"].asInt(); + if (st_JsonRoot["XAuthorize"].empty() || (3 != st_JsonRoot["XAuthorize"].size())) + { + Config_IsErrorOccur = true; + Config_dwErrorCode = ERROR_MQ_MODULE_CONFIG_JSON_XAUTHORIZE; + return false; + } + Json::Value st_JsonXAuthorize = st_JsonRoot["XAuthorize"]; + pSt_ServerConfig->st_XAuthorize.bHTTPAuth = st_JsonXAuthorize["bHTTPAuth"].asBool(); + _tcsxcpy(pSt_ServerConfig->st_XAuthorize.tszHTTPPass, st_JsonXAuthorize["tszHTTPPass"].asCString()); + _tcsxcpy(pSt_ServerConfig->st_XAuthorize.tszToken, st_JsonXAuthorize["tszToken"].asCString()); + if (st_JsonRoot["XReport"].empty() || (3 != st_JsonRoot["XReport"].size())) { Config_IsErrorOccur = true; diff --git a/XEngine_Source/XEngine_MQServiceApp/MQService_HttpTask.cpp b/XEngine_Source/XEngine_MQServiceApp/MQService_HttpTask.cpp index a186c20..3bf6014 100644 --- a/XEngine_Source/XEngine_MQServiceApp/MQService_HttpTask.cpp +++ b/XEngine_Source/XEngine_MQServiceApp/MQService_HttpTask.cpp @@ -56,79 +56,88 @@ bool MessageQueue_Http_Handle(RFCCOMPONENTS_HTTP_REQPARAM* pSt_HTTPParam, LPCXST LPCXSTR lpszAPITopic = _X("topic"); LPCXSTR lpszAPIOnline = _X("online"); - if (0 == _tcsxnicmp(lpszPostMethod, pSt_HTTPParam->tszHttpMethod, _tcsxlen(lpszPostMethod))) + int nUrlCount = 0; + XCHAR** ppSt_ListUrl; + HttpProtocol_ServerHelp_GetParament(pSt_HTTPParam->tszHttpUri, &ppSt_ListUrl, &nUrlCount); + if (nUrlCount < 1) { + ProtocolModule_Packet_Http(tszPKTBuffer, &nPKTLen, ERROR_XENGINE_MESSAGE_HTTP_PARAMENT, "url parament is incorrent"); + XEngine_MQXService_Send(lpszClientAddr, tszPKTBuffer, nPKTLen, XENGINE_MQAPP_NETTYPE_HTTP); + XLOG_PRINT(xhLog, XENGINE_HELPCOMPONENTS_XLOG_IN_LOGLEVEL_ERROR, _X("HTTP客户端:%s,请求HTTP管理接口失败,参数错误:%s"), lpszClientAddr, pSt_HTTPParam->tszHttpUri); + return false; } - else if (0 == _tcsxnicmp(lpszGetMethod, pSt_HTTPParam->tszHttpMethod, _tcsxlen(lpszGetMethod))) + int nMethodPos = 0; + //判断是否需要验证 + if (st_ServiceCfg.st_XAuthorize.bHTTPAuth) { - int nUrlCount = 0; - XCHAR** ppSt_ListUrl; - HttpProtocol_ServerHelp_GetParament(pSt_HTTPParam->tszHttpUri, &ppSt_ListUrl, &nUrlCount); - if (nUrlCount < 1) + //http://127.0.0.1:5202/api?function=user&auth=XENGINE_MQPasskey + BaseLib_String_GetKeyValue(ppSt_ListUrl[1], _X("="), tszKey, tszValue); + if (0 != _tcsxncmp(st_ServiceCfg.st_XAuthorize.tszToken, tszValue, _tcsxlen(st_ServiceCfg.st_XAuthorize.tszToken))) { - ProtocolModule_Packet_Http(tszPKTBuffer, &nPKTLen, ERROR_XENGINE_MESSAGE_HTTP_PARAMENT, "url parament is incorrent"); + ProtocolModule_Packet_Http(tszPKTBuffer, &nPKTLen, ERROR_XENGINE_MESSAGE_HTTP_AUTHORIZE, "auth key is incorrent"); XEngine_MQXService_Send(lpszClientAddr, tszPKTBuffer, nPKTLen, XENGINE_MQAPP_NETTYPE_HTTP); + XLOG_PRINT(xhLog, XENGINE_HELPCOMPONENTS_XLOG_IN_LOGLEVEL_ERROR, _X("HTTP客户端:%s,请求HTTP管理接口失败,验证失败:%s"), lpszClientAddr, pSt_HTTPParam->tszHttpUri); return false; } + nMethodPos++; + XLOG_PRINT(xhLog, XENGINE_HELPCOMPONENTS_XLOG_IN_LOGLEVEL_INFO, _X("HTTP客户端:%s,请求HTTP管理接口验证成功,验证TOKEN:%s"), lpszClientAddr, ppSt_ListUrl[1]); + } + //判断请求 + if (0 == _tcsxnicmp(lpszPostMethod, pSt_HTTPParam->tszHttpMethod, _tcsxlen(lpszPostMethod))) + { + + } + else if (0 == _tcsxnicmp(lpszGetMethod, pSt_HTTPParam->tszHttpMethod, _tcsxlen(lpszGetMethod))) + { //获取函数 + memset(tszValue, '\0', MAX_PATH); BaseLib_String_GetKeyValue(ppSt_ListUrl[0], _X("="), tszKey, tszValue); - if (0 == _tcsxnicmp(lpszAPIGet, tszValue, _tcsxlen(lpszAPIGet))) + if (0 == _tcsxnicmp(lpszAPIUser, tszValue, _tcsxlen(lpszAPIUser))) { - memset(tszValue, '\0', MAX_PATH); - BaseLib_String_GetKeyValue(ppSt_ListUrl[1], _X("="), tszKey, tszValue); - if (0 == _tcsxnicmp(lpszAPIUser, tszValue, _tcsxlen(lpszAPIUser))) - { - //用户 http://127.0.0.1:5202/api?function=get&method=user - int nListCount = 0; - XENGINE_PROTOCOL_USERINFO** ppSt_UserInfo; - DBModule_MQUser_UserList(&ppSt_UserInfo, &nListCount); - ProtocolModule_Packet_UserList(tszPKTBuffer, &nPKTLen, &ppSt_UserInfo, nListCount); - BaseLib_Memory_Free((XPPPMEM)&ppSt_UserInfo, nListCount); + //用户 http://127.0.0.1:5202/api?function=user + int nListCount = 0; + XENGINE_PROTOCOL_USERINFO** ppSt_UserInfo; + DBModule_MQUser_UserList(&ppSt_UserInfo, &nListCount); + ProtocolModule_Packet_UserList(tszPKTBuffer, &nPKTLen, &ppSt_UserInfo, nListCount); + BaseLib_Memory_Free((XPPPMEM)&ppSt_UserInfo, nListCount); - XEngine_MQXService_Send(lpszClientAddr, tszPKTBuffer, nPKTLen, XENGINE_MQAPP_NETTYPE_HTTP); - XLOG_PRINT(xhLog, XENGINE_HELPCOMPONENTS_XLOG_IN_LOGLEVEL_INFO, _X("HTTP客户端:%s,发送的获取用户列表请求成功,获取到的用户列表个数:%d"), lpszClientAddr, nListCount); - } - else if (0 == _tcsxnicmp(lpszAPIOnline, tszValue, _tcsxlen(lpszAPIOnline))) + XEngine_MQXService_Send(lpszClientAddr, tszPKTBuffer, nPKTLen, XENGINE_MQAPP_NETTYPE_HTTP); + XLOG_PRINT(xhLog, XENGINE_HELPCOMPONENTS_XLOG_IN_LOGLEVEL_INFO, _X("HTTP客户端:%s,发送的获取用户列表请求成功,获取到的用户列表个数:%d"), lpszClientAddr, nListCount); + } + else if (0 == _tcsxnicmp(lpszAPIOnline, tszValue, _tcsxlen(lpszAPIOnline))) + { + //获取在线用户 http://127.0.0.1:5202/api?function=online&type=0 + int nListCount = 0; + XCHAR** pptszListAddr; + + BaseLib_String_GetKeyValue(ppSt_ListUrl[nMethodPos + 1], _X("="), tszKey, tszValue); + SessionModule_Client_GetListAddr(&pptszListAddr, &nListCount, _ttxoi(tszValue)); + ProtocolModule_Packet_OnlineList(tszPKTBuffer, &nPKTLen, &pptszListAddr, nListCount); + BaseLib_Memory_Free((XPPPMEM)&pptszListAddr, nListCount); + XEngine_MQXService_Send(lpszClientAddr, tszPKTBuffer, nPKTLen, XENGINE_MQAPP_NETTYPE_HTTP); + XLOG_PRINT(xhLog, XENGINE_HELPCOMPONENTS_XLOG_IN_LOGLEVEL_INFO, _X("HTTP客户端:%s,发送的获取在线用户列表请求成功,获取到的列表个数:%d"), lpszClientAddr, nListCount); + } + else if (0 == _tcsxnicmp(lpszAPITopic, tszValue, _tcsxlen(lpszAPITopic))) + { + //主题 http://127.0.0.1:5202/api?function=topic&name=comm + if (2 == nUrlCount) { - //获取在线用户 http://127.0.0.1:5202/api?function=get&method=online&type=0 - if (3 != nUrlCount) - { - ProtocolModule_Packet_Http(tszPKTBuffer, &nPKTLen, ERROR_XENGINE_MESSAGE_HTTP_PARAMENT, "url parament is incorrent"); - XEngine_MQXService_Send(lpszClientAddr, tszPKTBuffer, nPKTLen, XENGINE_MQAPP_NETTYPE_HTTP); - return false; - } int nListCount = 0; - XCHAR** pptszListAddr; - - BaseLib_String_GetKeyValue(ppSt_ListUrl[2], _X("="), tszKey, tszValue); - SessionModule_Client_GetListAddr(&pptszListAddr, &nListCount, _ttxoi(tszValue)); - ProtocolModule_Packet_OnlineList(tszPKTBuffer, &nPKTLen, &pptszListAddr, nListCount); - BaseLib_Memory_Free((XPPPMEM)&pptszListAddr, nListCount); + XCHAR** ppszTableName; + DBModule_MQData_ShowTable(&ppszTableName, &nListCount); + ProtocolModule_Packet_TopicList(tszPKTBuffer, &nPKTLen, &ppszTableName, nListCount); + BaseLib_Memory_Free((XPPPMEM)&ppszTableName, nListCount); XEngine_MQXService_Send(lpszClientAddr, tszPKTBuffer, nPKTLen, XENGINE_MQAPP_NETTYPE_HTTP); - XLOG_PRINT(xhLog, XENGINE_HELPCOMPONENTS_XLOG_IN_LOGLEVEL_INFO, _X("HTTP客户端:%s,发送的获取在线用户列表请求成功,获取到的列表个数:%d"), lpszClientAddr, nListCount); + XLOG_PRINT(xhLog, XENGINE_HELPCOMPONENTS_XLOG_IN_LOGLEVEL_INFO, _X("HTTP客户端:%s,发送的获取主题列表请求成功,获取到的主题列表个数:%d"), lpszClientAddr, nListCount); } - else if (0 == _tcsxnicmp(lpszAPITopic, tszValue, _tcsxlen(lpszAPITopic))) + else { - //主题 http://127.0.0.1:5202/api?function=get&method=topic&name=comm - if (2 == nUrlCount) - { - int nListCount = 0; - XCHAR** ppszTableName; - DBModule_MQData_ShowTable(&ppszTableName, &nListCount); - ProtocolModule_Packet_TopicList(tszPKTBuffer, &nPKTLen, &ppszTableName, nListCount); - BaseLib_Memory_Free((XPPPMEM)&ppszTableName, nListCount); - XEngine_MQXService_Send(lpszClientAddr, tszPKTBuffer, nPKTLen, XENGINE_MQAPP_NETTYPE_HTTP); - XLOG_PRINT(xhLog, XENGINE_HELPCOMPONENTS_XLOG_IN_LOGLEVEL_INFO, _X("HTTP客户端:%s,发送的获取主题列表请求成功,获取到的主题列表个数:%d"), lpszClientAddr, nListCount); - } - else - { - int nDBCount = 0; - BaseLib_String_GetKeyValue(ppSt_ListUrl[2], _X("="), tszKey, tszValue); - DBModule_MQData_GetLeftCount(tszValue, 0, &nDBCount); - ProtocolModule_Packet_TopicName(tszPKTBuffer, &nPKTLen, tszValue, nDBCount); - XEngine_MQXService_Send(lpszClientAddr, tszPKTBuffer, nPKTLen, XENGINE_MQAPP_NETTYPE_HTTP); - XLOG_PRINT(xhLog, XENGINE_HELPCOMPONENTS_XLOG_IN_LOGLEVEL_INFO, _X("HTTP客户端:%s,发送的获取主题列表请求成功,获取到的主题消息个数:%d"), lpszClientAddr, nDBCount); - } + int nDBCount = 0; + BaseLib_String_GetKeyValue(ppSt_ListUrl[nMethodPos + 1], _X("="), tszKey, tszValue); + DBModule_MQData_GetLeftCount(tszValue, 0, &nDBCount); + ProtocolModule_Packet_TopicName(tszPKTBuffer, &nPKTLen, tszValue, nDBCount); + XEngine_MQXService_Send(lpszClientAddr, tszPKTBuffer, nPKTLen, XENGINE_MQAPP_NETTYPE_HTTP); + XLOG_PRINT(xhLog, XENGINE_HELPCOMPONENTS_XLOG_IN_LOGLEVEL_INFO, _X("HTTP客户端:%s,发送的获取主题列表请求成功,获取到的主题消息个数:%d"), lpszClientAddr, nDBCount); } } } diff --git a/XEngine_Source/XQueue_ProtocolHdr.h b/XEngine_Source/XQueue_ProtocolHdr.h index d072664..0990a4a 100644 --- a/XEngine_Source/XQueue_ProtocolHdr.h +++ b/XEngine_Source/XQueue_ProtocolHdr.h @@ -83,6 +83,7 @@ #define ERROR_XENGINE_MESSAGE_XMQ_MODIFYMSG 0x117 //修改消息失败 #define ERROR_XENGINE_MESSAGE_HTTP_PARAMENT 0x201 //HTTP请求参数错误 +#define ERROR_XENGINE_MESSAGE_HTTP_AUTHORIZE 0x202 //验证失败没有权限 /////////////////////////////////////////////////////////////////////////// // 导出的数据结构 /////////////////////////////////////////////////////////////////////////// From bcd7cdb44c81d21b044f11e1ad6ced3bef4caf95 Mon Sep 17 00:00:00 2001 From: qyt <486179@qq.com> Date: Wed, 12 Mar 2025 11:07:18 +0800 Subject: [PATCH 19/25] added:http restful api that http api verification support --- .../MQCore_ProtocolModule.def | 1 + .../ProtocolModule_Packet.cpp | 62 +++++++++++++++++++ .../ProtocolModule_Packet.h | 1 + .../MQCore_ProtocolModule/Protocol_Define.h | 34 ++++++++++ XEngine_Source/MQCore_ProtocolModule/pch.cpp | 4 ++ .../MQService_HttpTask.cpp | 26 ++++++-- 6 files changed, 123 insertions(+), 5 deletions(-) diff --git a/XEngine_Source/MQCore_ProtocolModule/MQCore_ProtocolModule.def b/XEngine_Source/MQCore_ProtocolModule/MQCore_ProtocolModule.def index 348a754..075760d 100644 --- a/XEngine_Source/MQCore_ProtocolModule/MQCore_ProtocolModule.def +++ b/XEngine_Source/MQCore_ProtocolModule/MQCore_ProtocolModule.def @@ -7,6 +7,7 @@ EXPORTS ProtocolModule_Packet_MQNumber ProtocolModule_Packet_PassAuth ProtocolModule_Packet_PassUser + ProtocolModule_Packet_PassHttp ProtocolModule_Packet_Http ProtocolModule_Packet_UserList ProtocolModule_Packet_TopicList diff --git a/XEngine_Source/MQCore_ProtocolModule/ProtocolModule_Packet/ProtocolModule_Packet.cpp b/XEngine_Source/MQCore_ProtocolModule/ProtocolModule_Packet/ProtocolModule_Packet.cpp index fed50f4..ee9f476 100644 --- a/XEngine_Source/MQCore_ProtocolModule/ProtocolModule_Packet/ProtocolModule_Packet.cpp +++ b/XEngine_Source/MQCore_ProtocolModule/ProtocolModule_Packet/ProtocolModule_Packet.cpp @@ -280,6 +280,68 @@ bool CProtocolModule_Packet::ProtocolModule_Packet_PassUser(XENGINE_PROTOCOL_USE return true; } /******************************************************************** +函数名称:ProtocolModule_Packet_PassHttp +函数功能:HTTP请求验证打包函数 + 参数.一:ptszMsgBuffer + In/Out:Out + 类型:字符指针 + 可空:N + 意思:输出打好包的缓冲区 + 参数.二:pInt_MsgLen + In/Out:Out + 类型:整数型指针 + 可空:N + 意思:输出缓冲区大小 + 参数.三:lpszToken + In/Out:In + 类型:常量字符指针 + 可空:N + 意思:输入用户请求的TOKEN + 参数.四:lpszAPIUser + In/Out:In + 类型:常量字符指针 + 可空:N + 意思:输入用户请求的API接口 + 参数.五:lpszURIApi + In/Out:In + 类型:常量字符指针 + 可空:N + 意思:输入用户请求的完整URL地址 +返回值 + 类型:逻辑型 + 意思:是否成功 +备注: +*********************************************************************/ +bool CProtocolModule_Packet::ProtocolModule_Packet_PassHttp(XCHAR* ptszMsgBuffer, int* pInt_MsgLen, LPCXSTR lpszToken, LPCXSTR lpszAPIUser, LPCXSTR lpszURIApi) +{ + Protocol_IsErrorOccur = false; + + if ((NULL == ptszMsgBuffer) || (NULL == pInt_MsgLen)) + { + Protocol_IsErrorOccur = true; + Protocol_dwErrorCode = ERROR_MQ_MODULE_PROTOCOL_PARAMENT; + return false; + } + Json::Value st_JsonRoot; + Json::Value st_JsonAuth; + Json::StreamWriterBuilder st_JsonBuilder; + + st_JsonAuth["lpszToken"] = lpszToken; + st_JsonAuth["lpszAPIUser"] = lpszAPIUser; + st_JsonAuth["lpszURIApi"] = lpszURIApi; + + st_JsonRoot["unOperatorType"] = ENUM_XENGINE_COMMUNICATION_PROTOCOL_TYPE_XMQ; + st_JsonRoot["wReserve"] = 0; + st_JsonRoot["byVersion"] = 2; + st_JsonRoot["st_Auth"] = st_JsonAuth; + + 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; +} +/******************************************************************** 函数名称:ProtocolModule_Packet_Http 函数功能:HTTP封包类 参数.一:pSt_ProtocolHdr diff --git a/XEngine_Source/MQCore_ProtocolModule/ProtocolModule_Packet/ProtocolModule_Packet.h b/XEngine_Source/MQCore_ProtocolModule/ProtocolModule_Packet/ProtocolModule_Packet.h index 0df6813..3721aae 100644 --- a/XEngine_Source/MQCore_ProtocolModule/ProtocolModule_Packet/ProtocolModule_Packet.h +++ b/XEngine_Source/MQCore_ProtocolModule/ProtocolModule_Packet/ProtocolModule_Packet.h @@ -29,6 +29,7 @@ class CProtocolModule_Packet bool ProtocolModule_Packet_MQNumber(XENGINE_PROTOCOLHDR* pSt_ProtocolHdr, XENGINE_MQNUMBER* pSt_MQNumber, XCHAR* ptszMsgBuffer, int* pInt_MsgLen, int nNetType); bool ProtocolModule_Packet_PassAuth(XENGINE_PROTOCOL_USERAUTH* pSt_ProtocolAuth, XCHAR* ptszMsgBuffer, int* pInt_MsgLen, int nCode); bool ProtocolModule_Packet_PassUser(XENGINE_PROTOCOL_USERINFO* pSt_ProtocolUser, XCHAR* ptszMsgBuffer, int* pInt_MsgLen, int nCode); + bool ProtocolModule_Packet_PassHttp(XCHAR* ptszMsgBuffer, int* pInt_MsgLen, LPCXSTR lpszToken, LPCXSTR lpszAPIUser, LPCXSTR lpszURIApi); bool ProtocolModule_Packet_Http(XCHAR* ptszMsgBuffer, int* pInt_MsgLen, int nCode = 0, LPCXSTR lpszMsgBuffer = NULL); bool ProtocolModule_Packet_UserList(XCHAR* ptszMsgBuffer, int* pInt_MsgLen, XENGINE_PROTOCOL_USERINFO*** pppSt_UserInfo, int nListCount); bool ProtocolModule_Packet_TopicList(XCHAR* ptszMsgBuffer, int* pInt_MsgLen, XCHAR*** pppszTableName, int nListCount); diff --git a/XEngine_Source/MQCore_ProtocolModule/Protocol_Define.h b/XEngine_Source/MQCore_ProtocolModule/Protocol_Define.h index 23c84d1..db79519 100644 --- a/XEngine_Source/MQCore_ProtocolModule/Protocol_Define.h +++ b/XEngine_Source/MQCore_ProtocolModule/Protocol_Define.h @@ -154,6 +154,40 @@ extern "C" bool ProtocolModule_Packet_PassAuth(XENGINE_PROTOCOL_USERAUTH* pSt_Pr *********************************************************************/ extern "C" bool ProtocolModule_Packet_PassUser(XENGINE_PROTOCOL_USERINFO* pSt_ProtocolUser, XCHAR* ptszMsgBuffer, int* pInt_MsgLen, int nCode); /******************************************************************** +函数名称:ProtocolModule_Packet_PassHttp +函数功能:HTTP请求验证打包函数 + 参数.一:ptszMsgBuffer + In/Out:Out + 类型:字符指针 + 可空:N + 意思:输出打好包的缓冲区 + 参数.二:pInt_MsgLen + In/Out:Out + 类型:整数型指针 + 可空:N + 意思:输出缓冲区大小 + 参数.三:lpszToken + In/Out:In + 类型:常量字符指针 + 可空:N + 意思:输入用户请求的TOKEN + 参数.四:lpszAPIUser + In/Out:In + 类型:常量字符指针 + 可空:N + 意思:输入用户请求的API接口 + 参数.五:lpszURIApi + In/Out:In + 类型:常量字符指针 + 可空:N + 意思:输入用户请求的完整URL地址 +返回值 + 类型:逻辑型 + 意思:是否成功 +备注: +*********************************************************************/ +extern "C" bool ProtocolModule_Packet_PassHttp(XCHAR* ptszMsgBuffer, int* pInt_MsgLen, LPCXSTR lpszToken, LPCXSTR lpszAPIUser, LPCXSTR lpszURIApi); +/******************************************************************** 函数名称:ProtocolModule_Packet_Http 函数功能:HTTP封包类 参数.一:pSt_ProtocolHdr diff --git a/XEngine_Source/MQCore_ProtocolModule/pch.cpp b/XEngine_Source/MQCore_ProtocolModule/pch.cpp index a52c751..07f7080 100644 --- a/XEngine_Source/MQCore_ProtocolModule/pch.cpp +++ b/XEngine_Source/MQCore_ProtocolModule/pch.cpp @@ -47,6 +47,10 @@ extern "C" bool ProtocolModule_Packet_PassUser(XENGINE_PROTOCOL_USERINFO * pSt_P { return m_ProtocolPacket.ProtocolModule_Packet_PassUser(pSt_ProtocolUser, ptszMsgBuffer, pInt_MsgLen, nCode); } +extern "C" bool ProtocolModule_Packet_PassHttp(XCHAR* ptszMsgBuffer, int* pInt_MsgLen, LPCXSTR lpszToken, LPCXSTR lpszAPIUser, LPCXSTR lpszURIApi) +{ + return m_ProtocolPacket.ProtocolModule_Packet_PassHttp(ptszMsgBuffer, pInt_MsgLen, lpszToken, lpszAPIUser, lpszURIApi); +} extern "C" bool ProtocolModule_Packet_Http(XCHAR * ptszMsgBuffer, int* pInt_MsgLen, int nCode, LPCXSTR lpszMsgBuffer) { return m_ProtocolPacket.ProtocolModule_Packet_Http(ptszMsgBuffer, pInt_MsgLen, nCode, lpszMsgBuffer); diff --git a/XEngine_Source/XEngine_MQServiceApp/MQService_HttpTask.cpp b/XEngine_Source/XEngine_MQServiceApp/MQService_HttpTask.cpp index 3bf6014..351a1a9 100644 --- a/XEngine_Source/XEngine_MQServiceApp/MQService_HttpTask.cpp +++ b/XEngine_Source/XEngine_MQServiceApp/MQService_HttpTask.cpp @@ -72,12 +72,28 @@ bool MessageQueue_Http_Handle(RFCCOMPONENTS_HTTP_REQPARAM* pSt_HTTPParam, LPCXST { //http://127.0.0.1:5202/api?function=user&auth=XENGINE_MQPasskey BaseLib_String_GetKeyValue(ppSt_ListUrl[1], _X("="), tszKey, tszValue); - if (0 != _tcsxncmp(st_ServiceCfg.st_XAuthorize.tszToken, tszValue, _tcsxlen(st_ServiceCfg.st_XAuthorize.tszToken))) + if (_tcsxlen(st_ServiceCfg.st_XAuthorize.tszHTTPPass) > 0) { - ProtocolModule_Packet_Http(tszPKTBuffer, &nPKTLen, ERROR_XENGINE_MESSAGE_HTTP_AUTHORIZE, "auth key is incorrent"); - XEngine_MQXService_Send(lpszClientAddr, tszPKTBuffer, nPKTLen, XENGINE_MQAPP_NETTYPE_HTTP); - XLOG_PRINT(xhLog, XENGINE_HELPCOMPONENTS_XLOG_IN_LOGLEVEL_ERROR, _X("HTTP客户端:%s,请求HTTP管理接口失败,验证失败:%s"), lpszClientAddr, pSt_HTTPParam->tszHttpUri); - return false; + int nHTTPCode = 0; + ProtocolModule_Packet_PassHttp(tszPKTBuffer, &nPKTLen, pptszListHdr[1], pptszListHdr[0], pSt_HTTPParam->tszHttpMethod); + APIClient_Http_Request("POST", st_ServiceCfg.st_XAuthorize.tszHTTPPass, tszPKTBuffer, &nHTTPCode); + if (200 != nHTTPCode) + { + ProtocolModule_Packet_Http(tszPKTBuffer, &nPKTLen, ERROR_XENGINE_MESSAGE_HTTP_AUTHORIZE, "auth key is incorrent"); + XEngine_MQXService_Send(lpszClientAddr, tszPKTBuffer, nPKTLen, XENGINE_MQAPP_NETTYPE_HTTP); + XLOG_PRINT(xhLog, XENGINE_HELPCOMPONENTS_XLOG_IN_LOGLEVEL_ERROR, _X("HTTP客户端:%s,请求HTTP管理接口失败,验证失败:%s"), lpszClientAddr, pSt_HTTPParam->tszHttpUri); + return false; + } + } + else + { + if (0 != _tcsxncmp(st_ServiceCfg.st_XAuthorize.tszToken, tszValue, _tcsxlen(st_ServiceCfg.st_XAuthorize.tszToken))) + { + ProtocolModule_Packet_Http(tszPKTBuffer, &nPKTLen, ERROR_XENGINE_MESSAGE_HTTP_AUTHORIZE, "auth key is incorrent"); + XEngine_MQXService_Send(lpszClientAddr, tszPKTBuffer, nPKTLen, XENGINE_MQAPP_NETTYPE_HTTP); + XLOG_PRINT(xhLog, XENGINE_HELPCOMPONENTS_XLOG_IN_LOGLEVEL_ERROR, _X("HTTP客户端:%s,请求HTTP管理接口失败,验证失败:%s"), lpszClientAddr, pSt_HTTPParam->tszHttpUri); + return false; + } } nMethodPos++; XLOG_PRINT(xhLog, XENGINE_HELPCOMPONENTS_XLOG_IN_LOGLEVEL_INFO, _X("HTTP客户端:%s,请求HTTP管理接口验证成功,验证TOKEN:%s"), lpszClientAddr, ppSt_ListUrl[1]); From 2808e7a120eae63e3c23aac2bc7bb8bc886d1fa3 Mon Sep 17 00:00:00 2001 From: qyt <486179@qq.com> Date: Wed, 12 Mar 2025 14:27:26 +0800 Subject: [PATCH 20/25] added:delete user for http management --- .../DBModule_MQUser/DBModule_MQUser.cpp | 9 +++- .../MQService_HttpTask.cpp | 45 ++++++++++++++++++- 2 files changed, 52 insertions(+), 2 deletions(-) diff --git a/XEngine_Source/MQCore_DBModule/DBModule_MQUser/DBModule_MQUser.cpp b/XEngine_Source/MQCore_DBModule/DBModule_MQUser/DBModule_MQUser.cpp index 769378e..17a37cc 100644 --- a/XEngine_Source/MQCore_DBModule/DBModule_MQUser/DBModule_MQUser.cpp +++ b/XEngine_Source/MQCore_DBModule/DBModule_MQUser/DBModule_MQUser.cpp @@ -176,7 +176,14 @@ bool CDBModule_MQUser::DBModule_MQUser_UserQuery(XENGINE_PROTOCOL_USERINFO* pSt_ XCHAR tszSQLStatement[1024]; memset(tszSQLStatement, '\0', sizeof(tszSQLStatement)); - _xstprintf(tszSQLStatement, _X("SELECT * FROM `UserInfo` WHERE tszUserName = '%s' AND tszUserPass = '%s'"), pSt_UserInfo->tszUserName, pSt_UserInfo->tszUserPass); + if (_tcsxlen(pSt_UserInfo->tszUserPass) > 0) + { + _xstprintf(tszSQLStatement, _X("SELECT * FROM `UserInfo` WHERE tszUserName = '%s' AND tszUserPass = '%s'"), pSt_UserInfo->tszUserName, pSt_UserInfo->tszUserPass); + } + else + { + _xstprintf(tszSQLStatement, _X("SELECT * FROM `UserInfo` WHERE tszUserName = '%s'"), pSt_UserInfo->tszUserName); + } if (!DataBase_MySQL_ExecuteQuery(xhDBSQL, &xhTable, tszSQLStatement, &nllLine, &nllRow)) { DBModule_IsErrorOccur = true; diff --git a/XEngine_Source/XEngine_MQServiceApp/MQService_HttpTask.cpp b/XEngine_Source/XEngine_MQServiceApp/MQService_HttpTask.cpp index 351a1a9..ffb47cb 100644 --- a/XEngine_Source/XEngine_MQServiceApp/MQService_HttpTask.cpp +++ b/XEngine_Source/XEngine_MQServiceApp/MQService_HttpTask.cpp @@ -55,6 +55,7 @@ bool MessageQueue_Http_Handle(RFCCOMPONENTS_HTTP_REQPARAM* pSt_HTTPParam, LPCXST LPCXSTR lpszAPIUser = _X("user"); LPCXSTR lpszAPITopic = _X("topic"); LPCXSTR lpszAPIOnline = _X("online"); + LPCXSTR lpszAPIDelete = _X("delete"); int nUrlCount = 0; XCHAR** ppSt_ListUrl; @@ -156,10 +157,52 @@ bool MessageQueue_Http_Handle(RFCCOMPONENTS_HTTP_REQPARAM* pSt_HTTPParam, LPCXST XLOG_PRINT(xhLog, XENGINE_HELPCOMPONENTS_XLOG_IN_LOGLEVEL_INFO, _X("HTTP客户端:%s,发送的获取主题列表请求成功,获取到的主题消息个数:%d"), lpszClientAddr, nDBCount); } } + else if (0 == _tcsxnicmp(lpszAPIDelete, tszValue, _tcsxlen(lpszAPIDelete))) + { + //http://127.0.0.1:5202/api?function=delete&type=0&name=comm + + memset(tszValue, '\0', MAX_PATH); + BaseLib_String_GetKeyValue(ppSt_ListUrl[nMethodPos + 2], _X("="), tszKey, tszValue); + if (0 == _ttxoi(tszValue)) + { + //type = 0 删除主题 + memset(tszValue, '\0', MAX_PATH); + BaseLib_String_GetKeyValue(ppSt_ListUrl[nMethodPos + 3], _X("="), tszKey, tszValue); + } + else + { + // 删除用户 + memset(tszValue, '\0', MAX_PATH); + BaseLib_String_GetKeyValue(ppSt_ListUrl[nMethodPos + 3], _X("="), tszKey, tszValue); + + XENGINE_PROTOCOL_USERINFO st_UserInfo = {}; + XENGINE_DBUSERKEY st_UserKey = {}; + XENGINE_DBTOPICOWNER st_DBOwner = {}; + + _tcsxcpy(st_UserInfo.tszUserName, tszValue); + _tcsxcpy(st_UserKey.tszUserName, tszValue); + _tcsxcpy(st_DBOwner.tszUserName, tszValue); + + if (!DBModule_MQUser_UserQuery(&st_UserInfo)) + { + ProtocolModule_Packet_Http(tszPKTBuffer, &nPKTLen, ERROR_XENGINE_MESSAGE_AUTH_USERPASS, "user name not found"); + XEngine_MQXService_Send(lpszClientAddr, tszPKTBuffer, nPKTLen, XENGINE_MQAPP_NETTYPE_HTTP); + XLOG_PRINT(xhLog, XENGINE_HELPCOMPONENTS_XLOG_IN_LOGLEVEL_ERROR, _X("HTTP客户端:%s,请求HTTP删除用户失败,用户不存在:%s"), lpszClientAddr, st_UserInfo.tszUserName); + return false; + } + DBModule_MQUser_UserDelete(&st_UserInfo); + DBModule_MQUser_KeyDelete(&st_UserKey); + DBModule_MQUser_OwnerDelete(&st_DBOwner); + + ProtocolModule_Packet_Http(tszPKTBuffer, &nPKTLen); + XEngine_MQXService_Send(lpszClientAddr, tszPKTBuffer, nPKTLen, XENGINE_MQAPP_NETTYPE_HTTP); + XLOG_PRINT(xhLog, XENGINE_HELPCOMPONENTS_XLOG_IN_LOGLEVEL_INFO, _X("HTTP客户端:%s,请求用户删除成功,用户名:%s"), lpszClientAddr, st_UserInfo.tszUserName); + } + } } else { - XLOG_PRINT(xhLog, XENGINE_HELPCOMPONENTS_XLOG_IN_LOGLEVEL_WARN, _X("HTTP消息端:%s,协议错误"), lpszClientAddr); + XLOG_PRINT(xhLog, XENGINE_HELPCOMPONENTS_XLOG_IN_LOGLEVEL_WARN, _X("HTTP客户端:%s,协议错误"), lpszClientAddr); } return true; } \ No newline at end of file From 74e3347215fddd2e4797f40f86aa11a568df17ae Mon Sep 17 00:00:00 2001 From: qyt <486179@qq.com> Date: Wed, 12 Mar 2025 14:29:49 +0800 Subject: [PATCH 21/25] modify:does not allow empty for register and login --- .../XEngine_MQServiceApp/MQService_TCPTask.cpp | 16 ++++++++++++++++ 1 file changed, 16 insertions(+) diff --git a/XEngine_Source/XEngine_MQServiceApp/MQService_TCPTask.cpp b/XEngine_Source/XEngine_MQServiceApp/MQService_TCPTask.cpp index b82b6fe..241f7d6 100644 --- a/XEngine_Source/XEngine_MQServiceApp/MQService_TCPTask.cpp +++ b/XEngine_Source/XEngine_MQServiceApp/MQService_TCPTask.cpp @@ -122,6 +122,14 @@ bool MessageQueue_TCP_Handle(XENGINE_PROTOCOLHDR* pSt_ProtocolHdr, LPCXSTR lpszC } else { + if (_tcsxlen(st_UserInfo.tszUserPass) <= 0) + { + pSt_ProtocolHdr->wReserve = ERROR_XENGINE_MESSAGE_AUTH_USERPASS; + ProtocolModule_Packet_Common(nNetType, pSt_ProtocolHdr, NULL, tszSDBuffer, &nSDLen); + XEngine_MQXService_Send(lpszClientAddr, tszSDBuffer, nSDLen, nNetType); + XLOG_PRINT(xhLog, XENGINE_HELPCOMPONENTS_XLOG_IN_LOGLEVEL_ERROR, _X("%s客户端:%s,请求本地验证失败,密码为空"), lpszClientType, lpszClientAddr); + return false; + } if (!DBModule_MQUser_UserQuery(&st_UserInfo)) { pSt_ProtocolHdr->wReserve = ERROR_XENGINE_MESSAGE_AUTH_USERPASS; @@ -210,6 +218,14 @@ bool MessageQueue_TCP_Handle(XENGINE_PROTOCOLHDR* pSt_ProtocolHdr, LPCXSTR lpszC } else { + if (_tcsxlen(st_UserInfo.tszUserPass) <= 0) + { + pSt_ProtocolHdr->wReserve = ERROR_XENGINE_MESSAGE_AUTH_USERPASS; + ProtocolModule_Packet_Common(nNetType, pSt_ProtocolHdr, NULL, tszSDBuffer, &nSDLen); + XEngine_MQXService_Send(lpszClientAddr, tszSDBuffer, nSDLen, nNetType); + XLOG_PRINT(xhLog, XENGINE_HELPCOMPONENTS_XLOG_IN_LOGLEVEL_ERROR, _X("%s客户端:%s,请求本地验证失败,密码为空"), lpszClientType, lpszClientAddr); + return false; + } if (DBModule_MQUser_UserQuery(&st_UserInfo)) { pSt_ProtocolHdr->wReserve = ERROR_XENGINE_MESSAGE_AUTH_EXISTED; From 3b9fdc6c02eb805c5db31bb4c54ee169b46ff5ef Mon Sep 17 00:00:00 2001 From: qyt <486179@qq.com> Date: Wed, 12 Mar 2025 17:01:41 +0800 Subject: [PATCH 22/25] added:delete topic support for http --- .../DBModule_MQUser/DBModule_MQUser.cpp | 12 ++++++++- .../MQService_HttpTask.cpp | 26 ++++++++++++++++++- .../MQService_TCPTask.cpp | 11 ++++++++ XEngine_Source/XQueue_ProtocolHdr.h | 1 + 4 files changed, 48 insertions(+), 2 deletions(-) diff --git a/XEngine_Source/MQCore_DBModule/DBModule_MQUser/DBModule_MQUser.cpp b/XEngine_Source/MQCore_DBModule/DBModule_MQUser/DBModule_MQUser.cpp index 17a37cc..be3ef70 100644 --- a/XEngine_Source/MQCore_DBModule/DBModule_MQUser/DBModule_MQUser.cpp +++ b/XEngine_Source/MQCore_DBModule/DBModule_MQUser/DBModule_MQUser.cpp @@ -1070,7 +1070,7 @@ bool CDBModule_MQUser::DBModule_MQUser_OwnerDelete(XENGINE_DBTOPICOWNER* pSt_DBO return false; } } - else + else if ((_tcsxlen(pSt_DBOwner->tszUserName) > 0) && (_tcsxlen(pSt_DBOwner->tszQueueName) <= 0)) { _xstprintf(tszSQLStatement, _X("DELETE FROM `KeyOwner` WHERE tszUserName = '%s'"), pSt_DBOwner->tszUserName); if (!DataBase_MySQL_Execute(xhDBSQL, tszSQLStatement)) @@ -1080,6 +1080,16 @@ bool CDBModule_MQUser::DBModule_MQUser_OwnerDelete(XENGINE_DBTOPICOWNER* pSt_DBO return false; } } + else + { + _xstprintf(tszSQLStatement, _X("DELETE FROM `KeyOwner` WHERE tszKeyName = '%s'"), pSt_DBOwner->tszQueueName); + if (!DataBase_MySQL_Execute(xhDBSQL, tszSQLStatement)) + { + DBModule_IsErrorOccur = true; + DBModule_dwErrorCode = DataBase_GetLastError(); + return false; + } + } return true; } diff --git a/XEngine_Source/XEngine_MQServiceApp/MQService_HttpTask.cpp b/XEngine_Source/XEngine_MQServiceApp/MQService_HttpTask.cpp index ffb47cb..8e0d9ca 100644 --- a/XEngine_Source/XEngine_MQServiceApp/MQService_HttpTask.cpp +++ b/XEngine_Source/XEngine_MQServiceApp/MQService_HttpTask.cpp @@ -168,6 +168,30 @@ bool MessageQueue_Http_Handle(RFCCOMPONENTS_HTTP_REQPARAM* pSt_HTTPParam, LPCXST //type = 0 删除主题 memset(tszValue, '\0', MAX_PATH); BaseLib_String_GetKeyValue(ppSt_ListUrl[nMethodPos + 3], _X("="), tszKey, tszValue); + + XENGINE_DBTOPICOWNER st_DBOwner = {}; + XENGINE_DBUSERKEY st_UserKey = {}; + XENGINE_DBTIMERELEASE st_DBInfo = {}; + + _tcsxcpy(st_DBOwner.tszQueueName, tszValue); + _tcsxcpy(st_UserKey.tszKeyName, tszValue); + _tcsxcpy(st_DBInfo.tszQueueName, tszValue); + if (!DBModule_MQUser_OwnerDelete(&st_DBOwner)) + { + ProtocolModule_Packet_Http(tszPKTBuffer, &nPKTLen, ERROR_XENGINE_MESSAGE_HTTP_NOTFOUND, "topic name not found"); + XEngine_MQXService_Send(lpszClientAddr, tszPKTBuffer, nPKTLen, XENGINE_MQAPP_NETTYPE_HTTP); + XLOG_PRINT(xhLog, XENGINE_HELPCOMPONENTS_XLOG_IN_LOGLEVEL_ERROR, _X("HTTP客户端:%s,请求HTTP删除主题失败,主题不存在:%s"), lpszClientAddr, tszValue); + return false; + } + //清楚数据库 + APIHelp_Counter_SerialDel(tszValue); + DBModule_MQData_DeleteTable(tszValue); + DBModule_MQUser_KeyDelete(&st_UserKey); + DBModule_MQUser_TimeDelete(&st_DBInfo); + + ProtocolModule_Packet_Http(tszPKTBuffer, &nPKTLen); + XEngine_MQXService_Send(lpszClientAddr, tszPKTBuffer, nPKTLen, XENGINE_MQAPP_NETTYPE_HTTP); + XLOG_PRINT(xhLog, XENGINE_HELPCOMPONENTS_XLOG_IN_LOGLEVEL_INFO, _X("HTTP客户端:%s,请求主题删除成功,主题名:%s"), lpszClientAddr, tszValue); } else { @@ -185,7 +209,7 @@ bool MessageQueue_Http_Handle(RFCCOMPONENTS_HTTP_REQPARAM* pSt_HTTPParam, LPCXST if (!DBModule_MQUser_UserQuery(&st_UserInfo)) { - ProtocolModule_Packet_Http(tszPKTBuffer, &nPKTLen, ERROR_XENGINE_MESSAGE_AUTH_USERPASS, "user name not found"); + ProtocolModule_Packet_Http(tszPKTBuffer, &nPKTLen, ERROR_XENGINE_MESSAGE_HTTP_NOTFOUND, "user name not found"); XEngine_MQXService_Send(lpszClientAddr, tszPKTBuffer, nPKTLen, XENGINE_MQAPP_NETTYPE_HTTP); XLOG_PRINT(xhLog, XENGINE_HELPCOMPONENTS_XLOG_IN_LOGLEVEL_ERROR, _X("HTTP客户端:%s,请求HTTP删除用户失败,用户不存在:%s"), lpszClientAddr, st_UserInfo.tszUserName); return false; diff --git a/XEngine_Source/XEngine_MQServiceApp/MQService_TCPTask.cpp b/XEngine_Source/XEngine_MQServiceApp/MQService_TCPTask.cpp index 241f7d6..465a86f 100644 --- a/XEngine_Source/XEngine_MQServiceApp/MQService_TCPTask.cpp +++ b/XEngine_Source/XEngine_MQServiceApp/MQService_TCPTask.cpp @@ -776,6 +776,17 @@ bool MessageQueue_TCP_Handle(XENGINE_PROTOCOLHDR* pSt_ProtocolHdr, LPCXSTR lpszC _tcsxcpy(st_UserKey.tszKeyName, st_MQProtocol.tszMQKey); _tcsxcpy(st_DBInfo.tszQueueName, st_MQProtocol.tszMQKey); + if (_tcsxlen(st_DBOwner.tszUserName) <= 0) + { + if (pSt_ProtocolHdr->byIsReply) + { + pSt_ProtocolHdr->wReserve = ERROR_XENGINE_MESSAGE_XMQ_DELOWNER; + ProtocolModule_Packet_Common(nNetType, pSt_ProtocolHdr, &st_MQProtocol, tszSDBuffer, &nSDLen); + XEngine_MQXService_Send(lpszClientAddr, tszSDBuffer, nSDLen, nNetType); + } + XLOG_PRINT(xhLog, XENGINE_HELPCOMPONENTS_XLOG_IN_LOGLEVEL_ERROR, _X("%s消息端:%s,删除主题失败,删除所有者失败,主题名称:%s,用户名为空"), lpszClientType, lpszClientAddr, st_MQProtocol.tszMQKey, tszUserName); + return false; + } if (!DBModule_MQUser_OwnerDelete(&st_DBOwner)) { if (pSt_ProtocolHdr->byIsReply) diff --git a/XEngine_Source/XQueue_ProtocolHdr.h b/XEngine_Source/XQueue_ProtocolHdr.h index 0990a4a..9148158 100644 --- a/XEngine_Source/XQueue_ProtocolHdr.h +++ b/XEngine_Source/XQueue_ProtocolHdr.h @@ -84,6 +84,7 @@ #define ERROR_XENGINE_MESSAGE_HTTP_PARAMENT 0x201 //HTTP请求参数错误 #define ERROR_XENGINE_MESSAGE_HTTP_AUTHORIZE 0x202 //验证失败没有权限 +#define ERROR_XENGINE_MESSAGE_HTTP_NOTFOUND 0x203 //没有找到请求的数据 /////////////////////////////////////////////////////////////////////////// // 导出的数据结构 /////////////////////////////////////////////////////////////////////////// From e613753da37d6dca3b1cf3b51ae4c90b3a15cea3 Mon Sep 17 00:00:00 2001 From: qyt <486179@qq.com> Date: Thu, 13 Mar 2025 09:51:14 +0800 Subject: [PATCH 23/25] modify:http packet can be set null message --- .../ProtocolModule_Packet/ProtocolModule_Packet.cpp | 9 ++++++++- 1 file changed, 8 insertions(+), 1 deletion(-) diff --git a/XEngine_Source/MQCore_ProtocolModule/ProtocolModule_Packet/ProtocolModule_Packet.cpp b/XEngine_Source/MQCore_ProtocolModule/ProtocolModule_Packet/ProtocolModule_Packet.cpp index ee9f476..e3a11a6 100644 --- a/XEngine_Source/MQCore_ProtocolModule/ProtocolModule_Packet/ProtocolModule_Packet.cpp +++ b/XEngine_Source/MQCore_ProtocolModule/ProtocolModule_Packet/ProtocolModule_Packet.cpp @@ -374,7 +374,14 @@ bool CProtocolModule_Packet::ProtocolModule_Packet_Http(XCHAR* ptszMsgBuffer, in Json::Value st_JsonRoot; Json::StreamWriterBuilder st_JsonBuilder; - st_JsonRoot["msg"] = lpszMsgBuffer; + if (NULL == lpszMsgBuffer) + { + st_JsonRoot["msg"] = "success"; + } + else + { + st_JsonRoot["msg"] = lpszMsgBuffer; + } st_JsonRoot["code"] = nCode; st_JsonBuilder["emitUTF8"] = true; From 298c6b89d2870c7f88eb0e8d2b492d46697810fb Mon Sep 17 00:00:00 2001 From: qyt <486179@qq.com> Date: Thu, 13 Mar 2025 10:14:28 +0800 Subject: [PATCH 24/25] update:read me document and configure --- CHANGELOG | 32 ++++++++++++++++++ XEngine_Docment/Docment_en.docx | Bin 145089 -> 134191 bytes XEngine_Docment/Docment_zh.docx | Bin 145500 -> 136711 bytes .../XEngine_Config/XEngine_Config.json | 4 +-- .../XEngine_Config/XEngine_VerConfig.json | 1 + 5 files changed, 35 insertions(+), 2 deletions(-) diff --git a/CHANGELOG b/CHANGELOG index 328a57e..fd32663 100644 --- a/CHANGELOG +++ b/CHANGELOG @@ -1,3 +1,35 @@ +XEngine_MQService V3.15.0.1001 + +增加:HTTP验证授权支持 +增加:删除主题和用户的HTTP接口支持 +增加:帮助模块 +增加:arm64的发布流和编译支持 +增加:设置日志类型支持 +更新:依赖库 +优化:参数解析 +修改:http错误码使用了公用头的错误 +修改:主题存在不允许创建主题 +修改:为队列使用单独的序列号统计 +修改:不允许注册空的密码 +修改:http封包可以设置空的消息 +修正:定时发布不工作的问题 +修正:设置日志级别不工作的问题 + +added:authorize verification support with http authorize +added:delete topic and user for http management +added:help module +added:arm64 build support and ci release +added:set log type support +update:depend library +improved:parameter parse and more parameter supported +modify:http error code use protocol common hdr file +modify:does not allow to create topic when the topic is existed +modify:Use of separate statistical notation for queue +modify:does not allow empty for register and login +modify:http packet can be set null message +fixed:time publish task not work +fixed:set log level not work +====================================================================================== XEngine_MQService V3.14.0.1001 增加:删除消息协议支持 diff --git a/XEngine_Docment/Docment_en.docx b/XEngine_Docment/Docment_en.docx index 51793ca58ca85eb862e98ec770f0eae3831adb6b..042cbc8950cf3e4b277be5276fbe5e04a4b337ea 100644 GIT binary patch literal 134191 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:p3Ix_Mtrd2bcn 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 *6UVf1nk{c6Ry_DcVVeDK>MUB(HEn5qNBDW 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
NmYAm1W#) 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 LMnD1@Cy@UKuh;yj literal 145500 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 IS$fAhAJEmNH%&J&|JWE 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 <8YL9%{=%1CVGdNE&-n)*d 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

Ly?R~>gEI9`{#2t`NL6b7+ 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 Date: Thu, 13 Mar 2025 11:01:20 +0800 Subject: [PATCH 25/25] ci:release more support --- .github/workflows/release.yml | 31 +++++++++++++++++++++++++++++-- 1 file changed, 29 insertions(+), 2 deletions(-) diff --git a/.github/workflows/release.yml b/.github/workflows/release.yml index 4edb5e5..1b3fb91 100644 --- a/.github/workflows/release.yml +++ b/.github/workflows/release.yml @@ -16,10 +16,37 @@ jobs: with: fetch-depth: 0 - - name: Download ubuntubuild + - name: Download ubuntubuild x86_64 uses: dawidd6/action-download-artifact@v6 with: - workflow: ubuntubuild.yml + workflow: UbuntuX86_64_build.yml + workflow_conclusion: success + check_artifacts: false + skip_unpack: true + if_no_artifact_found: fail + path: ./XRelease/ + - name: Download ubuntubuild Arm64 + uses: dawidd6/action-download-artifact@v6 + with: + workflow: UbuntuArm64_build.yml + workflow_conclusion: success + check_artifacts: false + skip_unpack: true + if_no_artifact_found: fail + path: ./XRelease/ + - name: Download Rockylinux Arm64 + uses: dawidd6/action-download-artifact@v6 + with: + workflow: RockyArm64_build.yml + workflow_conclusion: success + check_artifacts: false + skip_unpack: true + if_no_artifact_found: fail + path: ./XRelease/ + - name: Download Rockylinux x86_64 + uses: dawidd6/action-download-artifact@v6 + with: + workflow: RockyX86_64_build.yml workflow_conclusion: success check_artifacts: false skip_unpack: true