From 027783ae52f470e607fac7447245d0bfaaa1bac4 Mon Sep 17 00:00:00 2001 From: qyt <486179@qq.com> Date: Fri, 20 Jun 2025 13:49:13 +0800 Subject: [PATCH 01/30] fixed:build error --- .../XEngine_HttpApp/XEngine_TaskPost/TaskPost_BackService.cpp | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/XEngine_Source/XEngine_ServiceApp/XEngine_HttpApp/XEngine_TaskPost/TaskPost_BackService.cpp b/XEngine_Source/XEngine_ServiceApp/XEngine_HttpApp/XEngine_TaskPost/TaskPost_BackService.cpp index 681ac9b..5d11f31 100644 --- a/XEngine_Source/XEngine_ServiceApp/XEngine_HttpApp/XEngine_TaskPost/TaskPost_BackService.cpp +++ b/XEngine_Source/XEngine_ServiceApp/XEngine_HttpApp/XEngine_TaskPost/TaskPost_BackService.cpp @@ -352,7 +352,7 @@ bool HTTPTask_TaskPost_BackService(LPCXSTR lpszClientAddr, LPCXSTR lpszMsgBuffer return false; } - xhStream = XClient_StreamPush_LiveInit(tszDstBuffer, &st_AVInfo); + xhStream = XClient_StreamPush_LiveInit(); if (NULL == xhStream) { st_HDRParam.nHttpCode = 400; @@ -361,6 +361,8 @@ bool HTTPTask_TaskPost_BackService(LPCXSTR lpszClientAddr, LPCXSTR lpszMsgBuffer XLOG_PRINT(xhLog, XENGINE_HELPCOMPONENTS_XLOG_IN_LOGLEVEL_ERROR, _X("HTTP客户端:%s,推流:%s 请求失败,错误码:%lX"), lpszClientAddr, tszDstBuffer, StreamClient_GetLastError()); return false; } + XClient_StreamPush_LiveOutput(xhStream, tszDstBuffer, _X("flv")); + XClient_StreamPush_LiveCreate(xhStream, &st_AVInfo); bRecord = true; AVCollect_Video_Start(xhScreen); HttpProtocol_Server_SendMsgEx(xhHTTPPacket, ptszSDBuffer, &nSDLen, &st_HDRParam); From accaafe1b1597f07e77e25763fd012672705f9b6 Mon Sep 17 00:00:00 2001 From: qyt <486179@qq.com> Date: Fri, 20 Jun 2025 15:16:14 +0800 Subject: [PATCH 02/30] modify:git submodule move to new dir --- .gitmodules | 2 +- XEngine_Source/VSClean.bat | 1 + XEngine_Source/XEngine_Depend | 1 - 3 files changed, 2 insertions(+), 2 deletions(-) delete mode 160000 XEngine_Source/XEngine_Depend diff --git a/.gitmodules b/.gitmodules index 1dde6eb..a8e00d3 100644 --- a/.gitmodules +++ b/.gitmodules @@ -1,5 +1,5 @@ [submodule "XEngine_Source/XEngine_Depend"] - path = XEngine_Source/XEngine_Depend + path = XEngine_Source/XEngine_DependLibrary/XEngine_Depend url = https://github.com/libxengine/XEngine_OPenSource.git [submodule "XEngine_Source/XEngine_DBDepend/phonedata"] path = XEngine_Source/XEngine_DBDepend/XEngine_PhoneData diff --git a/XEngine_Source/VSClean.bat b/XEngine_Source/VSClean.bat index d2cff75..4bd4414 100644 --- a/XEngine_Source/VSClean.bat +++ b/XEngine_Source/VSClean.bat @@ -5,6 +5,7 @@ FOR /R . %%d IN (.) DO rd /s /q "%%d\Release" 2>nul FOR /R . %%d IN (.) DO rd /s /q "%%d\x64" 2>nul FOR /R . %%d IN (.) DO rd /s /q "%%d\Debug" 2>nul FOR /R . %%d IN (.) DO rd /s /q "%%d\ipch" 2>nul +FOR /R . %%d IN (.) DO rd /s /q "%%d\ARM64" 2>nul rem If the Properties directory is empty, remove it FOR /R . %%d in (.) do rd /q "%%d\Properties" 2> nul diff --git a/XEngine_Source/XEngine_Depend b/XEngine_Source/XEngine_Depend deleted file mode 160000 index 66e6bf3..0000000 --- a/XEngine_Source/XEngine_Depend +++ /dev/null @@ -1 +0,0 @@ -Subproject commit 66e6bf39df14cd66d4bcbbb44a3e168ff75fed99 From 373c556863e2013bb16d88f8145e7ddc80dc16ba Mon Sep 17 00:00:00 2001 From: qyt <486179@qq.com> Date: Fri, 20 Jun 2025 15:22:17 +0800 Subject: [PATCH 03/30] update:git sub module --- .gitmodules | 2 +- XEngine_Source/XEngine_DependLibrary/keepfile | 1 + 2 files changed, 2 insertions(+), 1 deletion(-) create mode 100644 XEngine_Source/XEngine_DependLibrary/keepfile diff --git a/.gitmodules b/.gitmodules index a8e00d3..6dd7f24 100644 --- a/.gitmodules +++ b/.gitmodules @@ -1,5 +1,5 @@ [submodule "XEngine_Source/XEngine_Depend"] - path = XEngine_Source/XEngine_DependLibrary/XEngine_Depend + path = XEngine_Source/XEngine_DependLibrary/XEngine_OPenSource url = https://github.com/libxengine/XEngine_OPenSource.git [submodule "XEngine_Source/XEngine_DBDepend/phonedata"] path = XEngine_Source/XEngine_DBDepend/XEngine_PhoneData diff --git a/XEngine_Source/XEngine_DependLibrary/keepfile b/XEngine_Source/XEngine_DependLibrary/keepfile new file mode 100644 index 0000000..34d1f89 --- /dev/null +++ b/XEngine_Source/XEngine_DependLibrary/keepfile @@ -0,0 +1 @@ +keepfile \ No newline at end of file From 4ba6a82cf749071e0f8005b553ab77b1f6a47c75 Mon Sep 17 00:00:00 2001 From: qyt <486179@qq.com> Date: Fri, 20 Jun 2025 15:27:17 +0800 Subject: [PATCH 04/30] modify:delete git sub module --- .gitmodules | 9 --------- XEngine_Source/XEngine_DBDepend/XEngine_IPMacData | 1 - XEngine_Source/XEngine_DBDepend/XEngine_PhoneData | 1 - 3 files changed, 11 deletions(-) delete mode 160000 XEngine_Source/XEngine_DBDepend/XEngine_IPMacData delete mode 160000 XEngine_Source/XEngine_DBDepend/XEngine_PhoneData diff --git a/.gitmodules b/.gitmodules index 6dd7f24..e69de29 100644 --- a/.gitmodules +++ b/.gitmodules @@ -1,9 +0,0 @@ -[submodule "XEngine_Source/XEngine_Depend"] - path = XEngine_Source/XEngine_DependLibrary/XEngine_OPenSource - url = https://github.com/libxengine/XEngine_OPenSource.git -[submodule "XEngine_Source/XEngine_DBDepend/phonedata"] - path = XEngine_Source/XEngine_DBDepend/XEngine_PhoneData - url = https://github.com/libxengine/XEngine_PhoneData.git -[submodule "XEngine_Source/XEngine_DBDepend/XEngine_IPMacData"] - path = XEngine_Source/XEngine_DBDepend/XEngine_IPMacData - url = https://github.com/libxengine/XEngine_IPMacData.git diff --git a/XEngine_Source/XEngine_DBDepend/XEngine_IPMacData b/XEngine_Source/XEngine_DBDepend/XEngine_IPMacData deleted file mode 160000 index a6449e7..0000000 --- a/XEngine_Source/XEngine_DBDepend/XEngine_IPMacData +++ /dev/null @@ -1 +0,0 @@ -Subproject commit a6449e797a2ec10e9e4a3d40c1f9f27487f7dd02 diff --git a/XEngine_Source/XEngine_DBDepend/XEngine_PhoneData b/XEngine_Source/XEngine_DBDepend/XEngine_PhoneData deleted file mode 160000 index 2ffa9e3..0000000 --- a/XEngine_Source/XEngine_DBDepend/XEngine_PhoneData +++ /dev/null @@ -1 +0,0 @@ -Subproject commit 2ffa9e3416784d44e07ef77304f4d8cda1570748 From d3e6847fda58fc91e5eb70aadd1255884ce394ec Mon Sep 17 00:00:00 2001 From: qyt <486179@qq.com> Date: Fri, 20 Jun 2025 15:52:47 +0800 Subject: [PATCH 05/30] modify:re-add sub module --- .gitmodules | 9 ++ XEngine_Source/XEngine.sln | 151 +++++++----------- .../XEngine_DependLibrary/XEngine_IPMacData | 1 + .../XEngine_DependLibrary/XEngine_OPenSource | 1 + .../XEngine_DependLibrary/XEngine_PhoneData | 1 + .../XEngine_ModuleConfigure.vcxproj | 12 +- .../XEngine_ModuleProtocol.vcxproj | 12 +- XEngine_Source/XEngine_ModuleProtocol/pch.h | 4 +- .../ModulePlugin_BMIndex.vcxproj | 12 +- .../ModulePlugin_Meter.vcxproj | 12 +- .../ModulePlugin_Password.vcxproj | 12 +- .../ModulePlugin_Timezone.vcxproj | 12 +- .../ModulePlugin_Zodiac.vcxproj | 12 +- .../XEngine_HttpApp/XEngine_Hdr.h | 16 +- 14 files changed, 124 insertions(+), 143 deletions(-) create mode 160000 XEngine_Source/XEngine_DependLibrary/XEngine_IPMacData create mode 160000 XEngine_Source/XEngine_DependLibrary/XEngine_OPenSource create mode 160000 XEngine_Source/XEngine_DependLibrary/XEngine_PhoneData diff --git a/.gitmodules b/.gitmodules index e69de29..41ea6af 100644 --- a/.gitmodules +++ b/.gitmodules @@ -0,0 +1,9 @@ +[submodule "XEngine_Source/XEngine_DependLibrary/XEngine_OPenSource"] + path = XEngine_Source/XEngine_DependLibrary/XEngine_OPenSource + url = https://github.com/libxengine/XEngine_OPenSource.git +[submodule "XEngine_Source/XEngine_DependLibrary/XEngine_IPMacData"] + path = XEngine_Source/XEngine_DependLibrary/XEngine_IPMacData + url = https://github.com/libxengine/XEngine_IPMacData.git +[submodule "XEngine_Source/XEngine_DependLibrary/XEngine_PhoneData"] + path = XEngine_Source/XEngine_DependLibrary/XEngine_PhoneData + url = https://github.com/libxengine/XEngine_PhoneData.git diff --git a/XEngine_Source/XEngine.sln b/XEngine_Source/XEngine.sln index fbfa80a..e7dc9d0 100644 --- a/XEngine_Source/XEngine.sln +++ b/XEngine_Source/XEngine.sln @@ -4,9 +4,6 @@ Microsoft Visual Studio Solution File, Format Version 12.00 VisualStudioVersion = 17.1.32210.238 MinimumVisualStudioVersion = 10.0.40219.1 Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "XEngine_ModuleConfigure", "XEngine_ModuleConfigure\XEngine_ModuleConfigure.vcxproj", "{F54F152C-594F-4465-A44E-2DB915B39760}" - ProjectSection(ProjectDependencies) = postProject - {F1736B3F-03A2-4FC7-B045-A12BA8D724FB} = {F1736B3F-03A2-4FC7-B045-A12BA8D724FB} - EndProjectSection EndProject Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "XEngine_UserHdr", "XEngine_UserHdr", "{9E4F2158-9AC1-4C19-A3F7-375A9DBCF856}" ProjectSection(SolutionItems) = preProject @@ -26,21 +23,14 @@ Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "XEngine_HttpApp", "XEngine_ {6D0FCB40-D544-4AB2-A239-2FEBC4B98F6D} = {6D0FCB40-D544-4AB2-A239-2FEBC4B98F6D} {6F111577-DAF8-4294-B516-0077C22D7613} = {6F111577-DAF8-4294-B516-0077C22D7613} {92F971AB-CAC9-4D9B-A9CA-AFD9CA17E505} = {92F971AB-CAC9-4D9B-A9CA-AFD9CA17E505} - {A13B72E7-FC40-4A27-81C3-26DF3C8F4C0A} = {A13B72E7-FC40-4A27-81C3-26DF3C8F4C0A} {BBC4B2B4-1143-45DF-8890-47CE26A61D0E} = {BBC4B2B4-1143-45DF-8890-47CE26A61D0E} {CB443280-E283-44CD-B956-52C404A51DB6} = {CB443280-E283-44CD-B956-52C404A51DB6} - {F1736B3F-03A2-4FC7-B045-A12BA8D724FB} = {F1736B3F-03A2-4FC7-B045-A12BA8D724FB} {F54F152C-594F-4465-A44E-2DB915B39760} = {F54F152C-594F-4465-A44E-2DB915B39760} - {F6520D2C-BB8E-45BB-964B-F5D6A4318A89} = {F6520D2C-BB8E-45BB-964B-F5D6A4318A89} - {FFAC032D-4F8C-4C70-AF36-D79685A6961F} = {FFAC032D-4F8C-4C70-AF36-D79685A6961F} EndProjectSection EndProject Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "XEngine_ModuleDatabase", "XEngine_ModuleDatabase\XEngine_ModuleDatabase.vcxproj", "{140AD4A9-4918-4345-B352-507C345AEBE0}" EndProject Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "XEngine_ModuleProtocol", "XEngine_ModuleProtocol\XEngine_ModuleProtocol.vcxproj", "{6C935BE1-77E3-4719-A7A6-C76ABAFEE010}" - ProjectSection(ProjectDependencies) = postProject - {F1736B3F-03A2-4FC7-B045-A12BA8D724FB} = {F1736B3F-03A2-4FC7-B045-A12BA8D724FB} - EndProjectSection EndProject Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "XEngine_ModuleHelp", "XEngine_ModuleHelp\XEngine_ModuleHelp.vcxproj", "{6D0FCB40-D544-4AB2-A239-2FEBC4B98F6D}" EndProject @@ -49,52 +39,31 @@ EndProject Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "XEngine_PluginModule", "XEngine_PluginModule", "{D0473C03-9464-4C44-818A-AE212680CD05}" EndProject Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "libModulePlugin_Zodiac", "XEngine_PluginModule\ModulePlugin_Zodiac\ModulePlugin_Zodiac.vcxproj", "{32BB166A-3D3D-45EF-8BED-2E0471274159}" - ProjectSection(ProjectDependencies) = postProject - {F1736B3F-03A2-4FC7-B045-A12BA8D724FB} = {F1736B3F-03A2-4FC7-B045-A12BA8D724FB} - EndProjectSection EndProject Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "libModulePlugin_Password", "XEngine_PluginModule\ModulePlugin_Password\ModulePlugin_Password.vcxproj", "{201B6D13-82A7-49E9-9736-D6B3BFE05B30}" - ProjectSection(ProjectDependencies) = postProject - {F1736B3F-03A2-4FC7-B045-A12BA8D724FB} = {F1736B3F-03A2-4FC7-B045-A12BA8D724FB} - EndProjectSection EndProject Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "libModulePlugin_Timezone", "XEngine_PluginModule\ModulePlugin_Timezone\ModulePlugin_Timezone.vcxproj", "{37B8E91F-EC52-41F0-B21D-441D4270C05F}" - ProjectSection(ProjectDependencies) = postProject - {F1736B3F-03A2-4FC7-B045-A12BA8D724FB} = {F1736B3F-03A2-4FC7-B045-A12BA8D724FB} - EndProjectSection EndProject Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "libModulePlugin_BMIndex", "XEngine_PluginModule\ModulePlugin_BMIndex\ModulePlugin_BMIndex.vcxproj", "{BBC4B2B4-1143-45DF-8890-47CE26A61D0E}" - ProjectSection(ProjectDependencies) = postProject - {F1736B3F-03A2-4FC7-B045-A12BA8D724FB} = {F1736B3F-03A2-4FC7-B045-A12BA8D724FB} - EndProjectSection EndProject Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "libModulePlugin_Meter", "XEngine_PluginModule\ModulePlugin_Meter\ModulePlugin_Meter.vcxproj", "{6F111577-DAF8-4294-B516-0077C22D7613}" - ProjectSection(ProjectDependencies) = postProject - {F1736B3F-03A2-4FC7-B045-A12BA8D724FB} = {F1736B3F-03A2-4FC7-B045-A12BA8D724FB} - EndProjectSection EndProject Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "XEngine_ModuleSystem", "XEngine_ModuleSystem\XEngine_ModuleSystem.vcxproj", "{92F971AB-CAC9-4D9B-A9CA-AFD9CA17E505}" EndProject -Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "XEngine_Depend", "XEngine_Depend", "{2B89A3C7-0CC8-4881-B195-61BAA9ACB78B}" -EndProject -Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "jsoncpp", "XEngine_Depend\XEngine_Module\jsoncpp\jsoncpp.vcxproj", "{F1736B3F-03A2-4FC7-B045-A12BA8D724FB}" -EndProject -Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "XEngine_InfoReport", "XEngine_Depend\XEngine_Module\XEngine_InfoReport\XEngine_InfoReport.vcxproj", "{F6520D2C-BB8E-45BB-964B-F5D6A4318A89}" +Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "XEngine_APIServiceApp", "XEngine_ServiceApp\XEngine_APIServiceApp\XEngine_APIServiceApp.vcxproj", "{096BEF37-4AF6-490D-868B-6306D3E251E7}" ProjectSection(ProjectDependencies) = postProject - {F1736B3F-03A2-4FC7-B045-A12BA8D724FB} = {F1736B3F-03A2-4FC7-B045-A12BA8D724FB} + {F54F152C-594F-4465-A44E-2DB915B39760} = {F54F152C-594F-4465-A44E-2DB915B39760} EndProjectSection EndProject -Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "XEngine_DBDepend", "XEngine_DBDepend", "{91E64672-DF39-4F32-87FA-0F7AADA92D73}" +Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "XEngine_DependLibrary", "XEngine_DependLibrary", "{02EA681E-C7D8-13C7-8484-4AC65E1B71E8}" EndProject -Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "XEngine_APIModuleIPMac", "XEngine_DBDepend\XEngine_IPMacData\XEngine_Source\XEngine_APIModuleIPMac\XEngine_APIModuleIPMac.vcxproj", "{FFAC032D-4F8C-4C70-AF36-D79685A6961F}" +Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "jsoncpp", "XEngine_DependLibrary\XEngine_OPenSource\XEngine_Module\jsoncpp\jsoncpp.vcxproj", "{1D2715F0-BC92-4E54-91FC-60CA53969719}" EndProject -Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "XEngine_APIModulePhone", "XEngine_DBDepend\XEngine_PhoneData\Source\C\XEngine_APIModulePhone\XEngine_APIModulePhone.vcxproj", "{A13B72E7-FC40-4A27-81C3-26DF3C8F4C0A}" +Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "XEngine_InfoReport", "XEngine_DependLibrary\XEngine_OPenSource\XEngine_Module\XEngine_InfoReport\XEngine_InfoReport.vcxproj", "{156C590B-0482-45C4-9744-F9E349EC2824}" EndProject -Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "XEngine_APIServiceApp", "XEngine_ServiceApp\XEngine_APIServiceApp\XEngine_APIServiceApp.vcxproj", "{096BEF37-4AF6-490D-868B-6306D3E251E7}" - ProjectSection(ProjectDependencies) = postProject - {F1736B3F-03A2-4FC7-B045-A12BA8D724FB} = {F1736B3F-03A2-4FC7-B045-A12BA8D724FB} - {F54F152C-594F-4465-A44E-2DB915B39760} = {F54F152C-594F-4465-A44E-2DB915B39760} - EndProjectSection +Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "XEngine_APIModuleIPMac", "XEngine_DependLibrary\XEngine_IPMacData\XEngine_Source\XEngine_APIModuleIPMac\XEngine_APIModuleIPMac.vcxproj", "{30E7EED1-0F09-4187-872E-35566E8F6692}" +EndProject +Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "XEngine_APIModulePhone", "XEngine_DependLibrary\XEngine_PhoneData\Source\C\XEngine_APIModulePhone\XEngine_APIModulePhone.vcxproj", "{8610902F-2048-42BA-B33C-A7D80B193BF5}" EndProject Global GlobalSection(SolutionConfigurationPlatforms) = preSolution @@ -250,54 +219,6 @@ Global {92F971AB-CAC9-4D9B-A9CA-AFD9CA17E505}.Release|x64.Build.0 = Release|x64 {92F971AB-CAC9-4D9B-A9CA-AFD9CA17E505}.Release|x86.ActiveCfg = Release|Win32 {92F971AB-CAC9-4D9B-A9CA-AFD9CA17E505}.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 - {FFAC032D-4F8C-4C70-AF36-D79685A6961F}.Debug|ARM64.ActiveCfg = Debug|ARM64 - {FFAC032D-4F8C-4C70-AF36-D79685A6961F}.Debug|ARM64.Build.0 = Debug|ARM64 - {FFAC032D-4F8C-4C70-AF36-D79685A6961F}.Debug|x64.ActiveCfg = Debug|x64 - {FFAC032D-4F8C-4C70-AF36-D79685A6961F}.Debug|x64.Build.0 = Debug|x64 - {FFAC032D-4F8C-4C70-AF36-D79685A6961F}.Debug|x86.ActiveCfg = Debug|Win32 - {FFAC032D-4F8C-4C70-AF36-D79685A6961F}.Debug|x86.Build.0 = Debug|Win32 - {FFAC032D-4F8C-4C70-AF36-D79685A6961F}.Release|ARM64.ActiveCfg = Release|ARM64 - {FFAC032D-4F8C-4C70-AF36-D79685A6961F}.Release|ARM64.Build.0 = Release|ARM64 - {FFAC032D-4F8C-4C70-AF36-D79685A6961F}.Release|x64.ActiveCfg = Release|x64 - {FFAC032D-4F8C-4C70-AF36-D79685A6961F}.Release|x64.Build.0 = Release|x64 - {FFAC032D-4F8C-4C70-AF36-D79685A6961F}.Release|x86.ActiveCfg = Release|Win32 - {FFAC032D-4F8C-4C70-AF36-D79685A6961F}.Release|x86.Build.0 = Release|Win32 - {A13B72E7-FC40-4A27-81C3-26DF3C8F4C0A}.Debug|ARM64.ActiveCfg = Debug|ARM64 - {A13B72E7-FC40-4A27-81C3-26DF3C8F4C0A}.Debug|ARM64.Build.0 = Debug|ARM64 - {A13B72E7-FC40-4A27-81C3-26DF3C8F4C0A}.Debug|x64.ActiveCfg = Debug|x64 - {A13B72E7-FC40-4A27-81C3-26DF3C8F4C0A}.Debug|x64.Build.0 = Debug|x64 - {A13B72E7-FC40-4A27-81C3-26DF3C8F4C0A}.Debug|x86.ActiveCfg = Debug|Win32 - {A13B72E7-FC40-4A27-81C3-26DF3C8F4C0A}.Debug|x86.Build.0 = Debug|Win32 - {A13B72E7-FC40-4A27-81C3-26DF3C8F4C0A}.Release|ARM64.ActiveCfg = Release|ARM64 - {A13B72E7-FC40-4A27-81C3-26DF3C8F4C0A}.Release|ARM64.Build.0 = Release|ARM64 - {A13B72E7-FC40-4A27-81C3-26DF3C8F4C0A}.Release|x64.ActiveCfg = Release|x64 - {A13B72E7-FC40-4A27-81C3-26DF3C8F4C0A}.Release|x64.Build.0 = Release|x64 - {A13B72E7-FC40-4A27-81C3-26DF3C8F4C0A}.Release|x86.ActiveCfg = Release|Win32 - {A13B72E7-FC40-4A27-81C3-26DF3C8F4C0A}.Release|x86.Build.0 = Release|Win32 {096BEF37-4AF6-490D-868B-6306D3E251E7}.Debug|ARM64.ActiveCfg = Debug|ARM64 {096BEF37-4AF6-490D-868B-6306D3E251E7}.Debug|ARM64.Build.0 = Debug|ARM64 {096BEF37-4AF6-490D-868B-6306D3E251E7}.Debug|x64.ActiveCfg = Debug|x64 @@ -310,6 +231,54 @@ Global {096BEF37-4AF6-490D-868B-6306D3E251E7}.Release|x64.Build.0 = Release|x64 {096BEF37-4AF6-490D-868B-6306D3E251E7}.Release|x86.ActiveCfg = Release|Win32 {096BEF37-4AF6-490D-868B-6306D3E251E7}.Release|x86.Build.0 = Release|Win32 + {1D2715F0-BC92-4E54-91FC-60CA53969719}.Debug|ARM64.ActiveCfg = Debug|ARM64 + {1D2715F0-BC92-4E54-91FC-60CA53969719}.Debug|ARM64.Build.0 = Debug|ARM64 + {1D2715F0-BC92-4E54-91FC-60CA53969719}.Debug|x64.ActiveCfg = Debug|x64 + {1D2715F0-BC92-4E54-91FC-60CA53969719}.Debug|x64.Build.0 = Debug|x64 + {1D2715F0-BC92-4E54-91FC-60CA53969719}.Debug|x86.ActiveCfg = Debug|Win32 + {1D2715F0-BC92-4E54-91FC-60CA53969719}.Debug|x86.Build.0 = Debug|Win32 + {1D2715F0-BC92-4E54-91FC-60CA53969719}.Release|ARM64.ActiveCfg = Release|ARM64 + {1D2715F0-BC92-4E54-91FC-60CA53969719}.Release|ARM64.Build.0 = Release|ARM64 + {1D2715F0-BC92-4E54-91FC-60CA53969719}.Release|x64.ActiveCfg = Release|x64 + {1D2715F0-BC92-4E54-91FC-60CA53969719}.Release|x64.Build.0 = Release|x64 + {1D2715F0-BC92-4E54-91FC-60CA53969719}.Release|x86.ActiveCfg = Release|Win32 + {1D2715F0-BC92-4E54-91FC-60CA53969719}.Release|x86.Build.0 = Release|Win32 + {156C590B-0482-45C4-9744-F9E349EC2824}.Debug|ARM64.ActiveCfg = Debug|ARM64 + {156C590B-0482-45C4-9744-F9E349EC2824}.Debug|ARM64.Build.0 = Debug|ARM64 + {156C590B-0482-45C4-9744-F9E349EC2824}.Debug|x64.ActiveCfg = Debug|x64 + {156C590B-0482-45C4-9744-F9E349EC2824}.Debug|x64.Build.0 = Debug|x64 + {156C590B-0482-45C4-9744-F9E349EC2824}.Debug|x86.ActiveCfg = Debug|Win32 + {156C590B-0482-45C4-9744-F9E349EC2824}.Debug|x86.Build.0 = Debug|Win32 + {156C590B-0482-45C4-9744-F9E349EC2824}.Release|ARM64.ActiveCfg = Release|ARM64 + {156C590B-0482-45C4-9744-F9E349EC2824}.Release|ARM64.Build.0 = Release|ARM64 + {156C590B-0482-45C4-9744-F9E349EC2824}.Release|x64.ActiveCfg = Release|x64 + {156C590B-0482-45C4-9744-F9E349EC2824}.Release|x64.Build.0 = Release|x64 + {156C590B-0482-45C4-9744-F9E349EC2824}.Release|x86.ActiveCfg = Release|Win32 + {156C590B-0482-45C4-9744-F9E349EC2824}.Release|x86.Build.0 = Release|Win32 + {30E7EED1-0F09-4187-872E-35566E8F6692}.Debug|ARM64.ActiveCfg = Debug|ARM64 + {30E7EED1-0F09-4187-872E-35566E8F6692}.Debug|ARM64.Build.0 = Debug|ARM64 + {30E7EED1-0F09-4187-872E-35566E8F6692}.Debug|x64.ActiveCfg = Debug|x64 + {30E7EED1-0F09-4187-872E-35566E8F6692}.Debug|x64.Build.0 = Debug|x64 + {30E7EED1-0F09-4187-872E-35566E8F6692}.Debug|x86.ActiveCfg = Debug|Win32 + {30E7EED1-0F09-4187-872E-35566E8F6692}.Debug|x86.Build.0 = Debug|Win32 + {30E7EED1-0F09-4187-872E-35566E8F6692}.Release|ARM64.ActiveCfg = Release|ARM64 + {30E7EED1-0F09-4187-872E-35566E8F6692}.Release|ARM64.Build.0 = Release|ARM64 + {30E7EED1-0F09-4187-872E-35566E8F6692}.Release|x64.ActiveCfg = Release|x64 + {30E7EED1-0F09-4187-872E-35566E8F6692}.Release|x64.Build.0 = Release|x64 + {30E7EED1-0F09-4187-872E-35566E8F6692}.Release|x86.ActiveCfg = Release|Win32 + {30E7EED1-0F09-4187-872E-35566E8F6692}.Release|x86.Build.0 = Release|Win32 + {8610902F-2048-42BA-B33C-A7D80B193BF5}.Debug|ARM64.ActiveCfg = Debug|ARM64 + {8610902F-2048-42BA-B33C-A7D80B193BF5}.Debug|ARM64.Build.0 = Debug|ARM64 + {8610902F-2048-42BA-B33C-A7D80B193BF5}.Debug|x64.ActiveCfg = Debug|x64 + {8610902F-2048-42BA-B33C-A7D80B193BF5}.Debug|x64.Build.0 = Debug|x64 + {8610902F-2048-42BA-B33C-A7D80B193BF5}.Debug|x86.ActiveCfg = Debug|Win32 + {8610902F-2048-42BA-B33C-A7D80B193BF5}.Debug|x86.Build.0 = Debug|Win32 + {8610902F-2048-42BA-B33C-A7D80B193BF5}.Release|ARM64.ActiveCfg = Release|ARM64 + {8610902F-2048-42BA-B33C-A7D80B193BF5}.Release|ARM64.Build.0 = Release|ARM64 + {8610902F-2048-42BA-B33C-A7D80B193BF5}.Release|x64.ActiveCfg = Release|x64 + {8610902F-2048-42BA-B33C-A7D80B193BF5}.Release|x64.Build.0 = Release|x64 + {8610902F-2048-42BA-B33C-A7D80B193BF5}.Release|x86.ActiveCfg = Release|Win32 + {8610902F-2048-42BA-B33C-A7D80B193BF5}.Release|x86.Build.0 = Release|Win32 EndGlobalSection GlobalSection(SolutionProperties) = preSolution HideSolutionNode = FALSE @@ -321,11 +290,11 @@ Global {37B8E91F-EC52-41F0-B21D-441D4270C05F} = {D0473C03-9464-4C44-818A-AE212680CD05} {BBC4B2B4-1143-45DF-8890-47CE26A61D0E} = {D0473C03-9464-4C44-818A-AE212680CD05} {6F111577-DAF8-4294-B516-0077C22D7613} = {D0473C03-9464-4C44-818A-AE212680CD05} - {F1736B3F-03A2-4FC7-B045-A12BA8D724FB} = {2B89A3C7-0CC8-4881-B195-61BAA9ACB78B} - {F6520D2C-BB8E-45BB-964B-F5D6A4318A89} = {2B89A3C7-0CC8-4881-B195-61BAA9ACB78B} - {FFAC032D-4F8C-4C70-AF36-D79685A6961F} = {91E64672-DF39-4F32-87FA-0F7AADA92D73} - {A13B72E7-FC40-4A27-81C3-26DF3C8F4C0A} = {91E64672-DF39-4F32-87FA-0F7AADA92D73} {096BEF37-4AF6-490D-868B-6306D3E251E7} = {79A9A569-7DA8-4D9D-AD34-D11115199EA1} + {1D2715F0-BC92-4E54-91FC-60CA53969719} = {02EA681E-C7D8-13C7-8484-4AC65E1B71E8} + {156C590B-0482-45C4-9744-F9E349EC2824} = {02EA681E-C7D8-13C7-8484-4AC65E1B71E8} + {30E7EED1-0F09-4187-872E-35566E8F6692} = {02EA681E-C7D8-13C7-8484-4AC65E1B71E8} + {8610902F-2048-42BA-B33C-A7D80B193BF5} = {02EA681E-C7D8-13C7-8484-4AC65E1B71E8} EndGlobalSection GlobalSection(ExtensibilityGlobals) = postSolution SolutionGuid = {9B202F91-A601-429E-BB0F-880DDEE096FE} diff --git a/XEngine_Source/XEngine_DependLibrary/XEngine_IPMacData b/XEngine_Source/XEngine_DependLibrary/XEngine_IPMacData new file mode 160000 index 0000000..a6449e7 --- /dev/null +++ b/XEngine_Source/XEngine_DependLibrary/XEngine_IPMacData @@ -0,0 +1 @@ +Subproject commit a6449e797a2ec10e9e4a3d40c1f9f27487f7dd02 diff --git a/XEngine_Source/XEngine_DependLibrary/XEngine_OPenSource b/XEngine_Source/XEngine_DependLibrary/XEngine_OPenSource new file mode 160000 index 0000000..7a6b18a --- /dev/null +++ b/XEngine_Source/XEngine_DependLibrary/XEngine_OPenSource @@ -0,0 +1 @@ +Subproject commit 7a6b18a4e50d6042e2a1147cf5d9f60757c09300 diff --git a/XEngine_Source/XEngine_DependLibrary/XEngine_PhoneData b/XEngine_Source/XEngine_DependLibrary/XEngine_PhoneData new file mode 160000 index 0000000..2ffa9e3 --- /dev/null +++ b/XEngine_Source/XEngine_DependLibrary/XEngine_PhoneData @@ -0,0 +1 @@ +Subproject commit 2ffa9e3416784d44e07ef77304f4d8cda1570748 diff --git a/XEngine_Source/XEngine_ModuleConfigure/XEngine_ModuleConfigure.vcxproj b/XEngine_Source/XEngine_ModuleConfigure/XEngine_ModuleConfigure.vcxproj index ce7b7da..63e38bb 100644 --- a/XEngine_Source/XEngine_ModuleConfigure/XEngine_ModuleConfigure.vcxproj +++ b/XEngine_Source/XEngine_ModuleConfigure/XEngine_ModuleConfigure.vcxproj @@ -99,30 +99,30 @@ true - $(XEngine_Include);../XEngine_Depend/XEngine_Module/jsoncpp;..\XEngine_ModuleConfigure;$(IncludePath) + $(XEngine_Include);../XEngine_DependLibrary/XEngine_OPenSource/XEngine_Module/jsoncpp;..\XEngine_ModuleConfigure;$(IncludePath) $(XEngine_Lib32);$(LibraryPath) false - $(XEngine_Include);../XEngine_Depend/XEngine_Module/jsoncpp;$(IncludePath) + $(XEngine_Include);../XEngine_DependLibrary/XEngine_OPenSource/XEngine_Module/jsoncpp;$(IncludePath) $(XEngine_Lib32);$(LibraryPath) true - $(XEngine_Include);../XEngine_Depend/XEngine_Module/jsoncpp;$(IncludePath) + $(XEngine_Include);../XEngine_DependLibrary/XEngine_OPenSource/XEngine_Module/jsoncpp;$(IncludePath) true - $(XEngine_Include);../XEngine_Depend/XEngine_Module/jsoncpp;$(IncludePath) + $(XEngine_Include);../XEngine_DependLibrary/XEngine_OPenSource/XEngine_Module/jsoncpp;$(IncludePath) false - $(XEngine_Include);../XEngine_Depend/XEngine_Module/jsoncpp;$(IncludePath) + $(XEngine_Include);../XEngine_DependLibrary/XEngine_OPenSource/XEngine_Module/jsoncpp;$(IncludePath) $(XEngine_Lib64);$(LibraryPath) false - $(XEngine_Include);../XEngine_Depend/XEngine_Module/jsoncpp;$(IncludePath) + $(XEngine_Include);../XEngine_DependLibrary/XEngine_OPenSource/XEngine_Module/jsoncpp;$(IncludePath) $(XEngine_LibArm64);$(LibraryPath) diff --git a/XEngine_Source/XEngine_ModuleProtocol/XEngine_ModuleProtocol.vcxproj b/XEngine_Source/XEngine_ModuleProtocol/XEngine_ModuleProtocol.vcxproj index 99c61f3..6bdd436 100644 --- a/XEngine_Source/XEngine_ModuleProtocol/XEngine_ModuleProtocol.vcxproj +++ b/XEngine_Source/XEngine_ModuleProtocol/XEngine_ModuleProtocol.vcxproj @@ -99,32 +99,32 @@ true - $(XEngine_Include);../XEngine_Depend/XEngine_Module/jsoncpp;..\XEngine_ModuleProtocol;$(IncludePath) + $(XEngine_Include);../XEngine_DependLibrary/XEngine_OPenSource/XEngine_Module/jsoncpp;..\XEngine_ModuleProtocol;$(IncludePath) $(XEngine_Lib32);$(LibraryPath) false - $(XEngine_Include);../XEngine_Depend/XEngine_Module/jsoncpp;$(IncludePath) + $(XEngine_Include);../XEngine_DependLibrary/XEngine_OPenSource/XEngine_Module/jsoncpp;$(IncludePath) $(XEngine_Lib32);$(LibraryPath) true - $(XEngine_Include);../XEngine_Depend/XEngine_Module/jsoncpp;$(IncludePath) + $(XEngine_Include);../XEngine_DependLibrary/XEngine_OPenSource/XEngine_Module/jsoncpp;$(IncludePath) $(XEngine_Lib64);$(LibraryPath) true - $(XEngine_Include);../XEngine_Depend/XEngine_Module/jsoncpp;$(IncludePath) + $(XEngine_Include);../XEngine_DependLibrary/XEngine_OPenSource/XEngine_Module/jsoncpp;$(IncludePath) $(XEngine_LibArm64);$(LibraryPath) false - $(XEngine_Include);../XEngine_Depend/XEngine_Module/jsoncpp;$(IncludePath) + $(XEngine_Include);../XEngine_DependLibrary/XEngine_OPenSource/XEngine_Module/jsoncpp;$(IncludePath) $(XEngine_Lib64);$(LibraryPath) false - $(XEngine_Include);../XEngine_Depend/XEngine_Module/jsoncpp;$(IncludePath) + $(XEngine_Include);../XEngine_DependLibrary/XEngine_OPenSource/XEngine_Module/jsoncpp;$(IncludePath) $(XEngine_LibArm64);$(LibraryPath) diff --git a/XEngine_Source/XEngine_ModuleProtocol/pch.h b/XEngine_Source/XEngine_ModuleProtocol/pch.h index 3f30b46..ca2a222 100644 --- a/XEngine_Source/XEngine_ModuleProtocol/pch.h +++ b/XEngine_Source/XEngine_ModuleProtocol/pch.h @@ -37,8 +37,8 @@ #include #include #include -#include "../../../XEngine_DBDepend/XEngine_IPMacData/XEngine_Source/XIPMac_CommHdr.h" -#include "../../../XEngine_DBDepend/XEngine_PhoneData/Source/XPhone_CommHdr.h" +#include "../../../XEngine_DependLibrary/XEngine_IPMacData/XEngine_Source/XIPMac_CommHdr.h" +#include "../../../XEngine_DependLibrary/XEngine_PhoneData/Source/XPhone_CommHdr.h" using namespace std; #include "../XEngine_UserProtocol.h" #include "ModuleProtocol_Define.h" diff --git a/XEngine_Source/XEngine_PluginModule/ModulePlugin_BMIndex/ModulePlugin_BMIndex.vcxproj b/XEngine_Source/XEngine_PluginModule/ModulePlugin_BMIndex/ModulePlugin_BMIndex.vcxproj index f1168ce..8f927bd 100644 --- a/XEngine_Source/XEngine_PluginModule/ModulePlugin_BMIndex/ModulePlugin_BMIndex.vcxproj +++ b/XEngine_Source/XEngine_PluginModule/ModulePlugin_BMIndex/ModulePlugin_BMIndex.vcxproj @@ -100,37 +100,37 @@ $(SolutionDir)$(Configuration)\XEngine_LibPlugin\ - ../../XEngine_Depend/XEngine_Module/jsoncpp;$(XEngine_Include);$(IncludePath) + ../../XEngine_DependLibrary/XEngine_OPenSource/XEngine_Module/jsoncpp;$(XEngine_Include);$(IncludePath) $(XEngine_Lib32);$(LibraryPath) $(Configuration)\XEngine_LibPlugin\ $(ProjectName) - $(XEngine_Include);../../XEngine_Depend/XEngine_Module/jsoncpp;$(IncludePath) + $(XEngine_Include);../../XEngine_DependLibrary/XEngine_OPenSource/XEngine_Module/jsoncpp;$(IncludePath) $(XEngine_Lib32);$(LibraryPath) $(SolutionDir)$(Configuration)\XEngine_LibPlugin\ $(Configuration)\XEngine_LibPlugin\ - $(XEngine_Include);../../XEngine_Depend/XEngine_Module/jsoncpp;$(IncludePath) + $(XEngine_Include);../../XEngine_DependLibrary/XEngine_OPenSource/XEngine_Module/jsoncpp;$(IncludePath) $(XEngine_Lib64);$(LibraryPath) $(SolutionDir)$(Platform)\$(Configuration)\XEngine_LibPlugin\ $(Platform)\$(Configuration)\XEngine_LibPlugin\ - $(XEngine_Include);../../XEngine_Depend/XEngine_Module/jsoncpp;$(IncludePath) + $(XEngine_Include);../../XEngine_DependLibrary/XEngine_OPenSource/XEngine_Module/jsoncpp;$(IncludePath) $(XEngine_LibArm64);$(LibraryPath) $(SolutionDir)$(Platform)\$(Configuration)\XEngine_LibPlugin\ $(Platform)\$(Configuration)\XEngine_LibPlugin\ - $(XEngine_Include);../../XEngine_Depend/XEngine_Module/jsoncpp;$(IncludePath) + $(XEngine_Include);../../XEngine_DependLibrary/XEngine_OPenSource/XEngine_Module/jsoncpp;$(IncludePath) $(XEngine_Lib64);$(LibraryPath) $(SolutionDir)$(Platform)\$(Configuration)\XEngine_LibPlugin\ $(Platform)\$(Configuration)\XEngine_LibPlugin\ - $(XEngine_Include);../../XEngine_Depend/XEngine_Module/jsoncpp;$(IncludePath) + $(XEngine_Include);../../XEngine_DependLibrary/XEngine_OPenSource/XEngine_Module/jsoncpp;$(IncludePath) $(XEngine_LibArm64);$(LibraryPath) $(SolutionDir)$(Platform)\$(Configuration)\XEngine_LibPlugin\ $(Platform)\$(Configuration)\XEngine_LibPlugin\ diff --git a/XEngine_Source/XEngine_PluginModule/ModulePlugin_Meter/ModulePlugin_Meter.vcxproj b/XEngine_Source/XEngine_PluginModule/ModulePlugin_Meter/ModulePlugin_Meter.vcxproj index 3ad2562..94193f0 100644 --- a/XEngine_Source/XEngine_PluginModule/ModulePlugin_Meter/ModulePlugin_Meter.vcxproj +++ b/XEngine_Source/XEngine_PluginModule/ModulePlugin_Meter/ModulePlugin_Meter.vcxproj @@ -101,37 +101,37 @@ $(SolutionDir)$(Configuration)\XEngine_LibPlugin\ $(Configuration)\XEngine_LibPlugin\ - $(XEngine_Include);../../XEngine_Depend/XEngine_Module/jsoncpp;$(IncludePath) + $(XEngine_Include);../../XEngine_DependLibrary/XEngine_OPenSource/XEngine_Module/jsoncpp;$(IncludePath) $(XEngine_Lib32);$(LibraryPath) $(SolutionDir)$(Configuration)\XEngine_LibPlugin\ $(Configuration)\XEngine_LibPlugin\ - $(XEngine_Include);../../XEngine_Depend/XEngine_Module/jsoncpp;$(IncludePath) + $(XEngine_Include);../../XEngine_DependLibrary/XEngine_OPenSource/XEngine_Module/jsoncpp;$(IncludePath) $(XEngine_Lib32);$(LibraryPath) $(SolutionDir)$(Platform)\$(Configuration)\XEngine_LibPlugin\ $(Platform)\$(Configuration)\XEngine_LibPlugin\ - $(XEngine_Include);../../XEngine_Depend/XEngine_Module/jsoncpp;$(IncludePath) + $(XEngine_Include);../../XEngine_DependLibrary/XEngine_OPenSource/XEngine_Module/jsoncpp;$(IncludePath) $(XEngine_Lib64);$(LibraryPath) $(SolutionDir)$(Platform)\$(Configuration)\XEngine_LibPlugin\ $(Platform)\$(Configuration)\XEngine_LibPlugin\ - $(XEngine_Include);../../XEngine_Depend/XEngine_Module/jsoncpp;$(IncludePath) + $(XEngine_Include);../../XEngine_DependLibrary/XEngine_OPenSource/XEngine_Module/jsoncpp;$(IncludePath) $(XEngine_LibArm64);$(LibraryPath) $(SolutionDir)$(Platform)\$(Configuration)\XEngine_LibPlugin\ $(Platform)\$(Configuration)\XEngine_LibPlugin\ - $(XEngine_Include);../../XEngine_Depend/XEngine_Module/jsoncpp;$(IncludePath) + $(XEngine_Include);../../XEngine_DependLibrary/XEngine_OPenSource/XEngine_Module/jsoncpp;$(IncludePath) $(XEngine_Lib64);$(LibraryPath) $(SolutionDir)$(Platform)\$(Configuration)\XEngine_LibPlugin\ $(Platform)\$(Configuration)\XEngine_LibPlugin\ - $(XEngine_Include);../../XEngine_Depend/XEngine_Module/jsoncpp;$(IncludePath) + $(XEngine_Include);../../XEngine_DependLibrary/XEngine_OPenSource/XEngine_Module/jsoncpp;$(IncludePath) $(XEngine_LibArm64);$(LibraryPath) diff --git a/XEngine_Source/XEngine_PluginModule/ModulePlugin_Password/ModulePlugin_Password.vcxproj b/XEngine_Source/XEngine_PluginModule/ModulePlugin_Password/ModulePlugin_Password.vcxproj index 2a318e8..6354ba6 100644 --- a/XEngine_Source/XEngine_PluginModule/ModulePlugin_Password/ModulePlugin_Password.vcxproj +++ b/XEngine_Source/XEngine_PluginModule/ModulePlugin_Password/ModulePlugin_Password.vcxproj @@ -101,41 +101,41 @@ true $(SolutionDir)$(Configuration)\XEngine_LibPlugin\ - $(XEngine_Include);../../XEngine_Depend/XEngine_Module/jsoncpp;$(IncludePath) + $(XEngine_Include);../../XEngine_DependLibrary/XEngine_OPenSource/XEngine_Module/jsoncpp;$(IncludePath) $(XEngine_Lib32);$(LibraryPath) $(Configuration)\XEngine_LibPlugin\ false - $(XEngine_Include);../../XEngine_Depend/XEngine_Module/jsoncpp;$(IncludePath) + $(XEngine_Include);../../XEngine_DependLibrary/XEngine_OPenSource/XEngine_Module/jsoncpp;$(IncludePath) $(XEngine_Lib32);$(LibraryPath) $(SolutionDir)$(Configuration)\XEngine_LibPlugin\ $(Configuration)\XEngine_LibPlugin\ true - $(XEngine_Include);../../XEngine_Depend/XEngine_Module/jsoncpp;$(IncludePath) + $(XEngine_Include);../../XEngine_DependLibrary/XEngine_OPenSource/XEngine_Module/jsoncpp;$(IncludePath) $(XEngine_Lib64);$(LibraryPath) $(SolutionDir)$(Platform)\$(Configuration)\XEngine_LibPlugin\ $(Platform)\$(Configuration)\XEngine_LibPlugin\ true - $(XEngine_Include);../../XEngine_Depend/XEngine_Module/jsoncpp;$(IncludePath) + $(XEngine_Include);../../XEngine_DependLibrary/XEngine_OPenSource/XEngine_Module/jsoncpp;$(IncludePath) $(XEngine_LibArm64);$(LibraryPath) $(SolutionDir)$(Platform)\$(Configuration)\XEngine_LibPlugin\ $(Platform)\$(Configuration)\XEngine_LibPlugin\ false - $(XEngine_Include);../../XEngine_Depend/XEngine_Module/jsoncpp;$(IncludePath) + $(XEngine_Include);../../XEngine_DependLibrary/XEngine_OPenSource/XEngine_Module/jsoncpp;$(IncludePath) $(XEngine_Lib64);$(LibraryPath) $(SolutionDir)$(Platform)\$(Configuration)\XEngine_LibPlugin\ $(Platform)\$(Configuration)\XEngine_LibPlugin\ false - $(XEngine_Include);../../XEngine_Depend/XEngine_Module/jsoncpp;$(IncludePath) + $(XEngine_Include);../../XEngine_DependLibrary/XEngine_OPenSource/XEngine_Module/jsoncpp;$(IncludePath) $(XEngine_LibArm64);$(LibraryPath) $(SolutionDir)$(Platform)\$(Configuration)\XEngine_LibPlugin\ $(Platform)\$(Configuration)\XEngine_LibPlugin\ diff --git a/XEngine_Source/XEngine_PluginModule/ModulePlugin_Timezone/ModulePlugin_Timezone.vcxproj b/XEngine_Source/XEngine_PluginModule/ModulePlugin_Timezone/ModulePlugin_Timezone.vcxproj index d002402..71ee727 100644 --- a/XEngine_Source/XEngine_PluginModule/ModulePlugin_Timezone/ModulePlugin_Timezone.vcxproj +++ b/XEngine_Source/XEngine_PluginModule/ModulePlugin_Timezone/ModulePlugin_Timezone.vcxproj @@ -99,37 +99,37 @@ - $(XEngine_Include);../../XEngine_Depend/XEngine_Module/jsoncpp;$(IncludePath) + $(XEngine_Include);../../XEngine_DependLibrary/XEngine_OPenSource/XEngine_Module/jsoncpp;$(IncludePath) $(XEngine_Lib32);$(LibraryPath) $(SolutionDir)$(Configuration)\XEngine_LibPlugin\ $(Configuration)\XEngine_LibPlugin\ - $(XEngine_Include);../../XEngine_Depend/XEngine_Module/jsoncpp;$(IncludePath) + $(XEngine_Include);../../XEngine_DependLibrary/XEngine_OPenSource/XEngine_Module/jsoncpp;$(IncludePath) $(XEngine_Lib32);$(LibraryPath) $(SolutionDir)$(Configuration)\XEngine_LibPlugin\ $(Configuration)\XEngine_LibPlugin\ - $(XEngine_Include);../../XEngine_Depend/XEngine_Module/jsoncpp;$(IncludePath) + $(XEngine_Include);../../XEngine_DependLibrary/XEngine_OPenSource/XEngine_Module/jsoncpp;$(IncludePath) $(XEngine_Lib64);$(LibraryPath) $(SolutionDir)$(Platform)\$(Configuration)\XEngine_LibPlugin\ $(Platform)\$(Configuration)\XEngine_LibPlugin\ - $(XEngine_Include);../../XEngine_Depend/XEngine_Module/jsoncpp;$(IncludePath) + $(XEngine_Include);../../XEngine_DependLibrary/XEngine_OPenSource/XEngine_Module/jsoncpp;$(IncludePath) $(XEngine_LibArm64);$(LibraryPath) $(SolutionDir)$(Platform)\$(Configuration)\XEngine_LibPlugin\ $(Platform)\$(Configuration)\XEngine_LibPlugin\ - $(XEngine_Include);../../XEngine_Depend/XEngine_Module/jsoncpp;$(IncludePath) + $(XEngine_Include);../../XEngine_DependLibrary/XEngine_OPenSource/XEngine_Module/jsoncpp;$(IncludePath) $(XEngine_Lib64);$(LibraryPath) $(SolutionDir)$(Platform)\$(Configuration)\XEngine_LibPlugin\ $(Platform)\$(Configuration)\XEngine_LibPlugin\ - $(XEngine_Include);../../XEngine_Depend/XEngine_Module/jsoncpp;$(IncludePath) + $(XEngine_Include);../../XEngine_DependLibrary/XEngine_OPenSource/XEngine_Module/jsoncpp;$(IncludePath) $(XEngine_LibArm64);$(LibraryPath) $(SolutionDir)$(Platform)\$(Configuration)\XEngine_LibPlugin\ $(Platform)\$(Configuration)\XEngine_LibPlugin\ diff --git a/XEngine_Source/XEngine_PluginModule/ModulePlugin_Zodiac/ModulePlugin_Zodiac.vcxproj b/XEngine_Source/XEngine_PluginModule/ModulePlugin_Zodiac/ModulePlugin_Zodiac.vcxproj index 4f0ffcf..09ed645 100644 --- a/XEngine_Source/XEngine_PluginModule/ModulePlugin_Zodiac/ModulePlugin_Zodiac.vcxproj +++ b/XEngine_Source/XEngine_PluginModule/ModulePlugin_Zodiac/ModulePlugin_Zodiac.vcxproj @@ -102,40 +102,40 @@ true $(Configuration)\XEngine_LibPlugin\ $(SolutionDir)$(Configuration)\XEngine_LibPlugin\ - $(XEngine_Include);../../XEngine_Depend/XEngine_Module/jsoncpp;$(IncludePath) + $(XEngine_Include);../../XEngine_DependLibrary/XEngine_OPenSource/XEngine_Module/jsoncpp;$(IncludePath) $(XEngine_Lib32);$(LibraryPath) false - $(XEngine_Include);../../XEngine_Depend/XEngine_Module/jsoncpp;$(IncludePath) + $(XEngine_Include);../../XEngine_DependLibrary/XEngine_OPenSource/XEngine_Module/jsoncpp;$(IncludePath) $(XEngine_Lib32);$(LibraryPath) $(SolutionDir)$(Configuration)\XEngine_LibPlugin\ $(Configuration)\XEngine_LibPlugin\ true - $(XEngine_Include);../../XEngine_Depend/XEngine_Module/jsoncpp;$(IncludePath) + $(XEngine_Include);../../XEngine_DependLibrary/XEngine_OPenSource/XEngine_Module/jsoncpp;$(IncludePath) $(XEngine_Lib64);$(LibraryPath) $(SolutionDir)$(Platform)\$(Configuration)\XEngine_LibPlugin\ $(Platform)\$(Configuration)\XEngine_LibPlugin\ true - $(XEngine_Include);../../XEngine_Depend/XEngine_Module/jsoncpp;$(IncludePath) + $(XEngine_Include);../../XEngine_DependLibrary/XEngine_OPenSource/XEngine_Module/jsoncpp;$(IncludePath) $(XEngine_LibArm64);$(LibraryPath) $(SolutionDir)$(Platform)\$(Configuration)\XEngine_LibPlugin\ $(Platform)\$(Configuration)\XEngine_LibPlugin\ false - $(XEngine_Include);../../XEngine_Depend/XEngine_Module/jsoncpp;$(IncludePath) + $(XEngine_Include);../../XEngine_DependLibrary/XEngine_OPenSource/XEngine_Module/jsoncpp;$(IncludePath) $(XEngine_Lib64);$(LibraryPath) $(SolutionDir)$(Platform)\$(Configuration)\XEngine_LibPlugin\ $(Platform)\$(Configuration)\XEngine_LibPlugin\ false - $(XEngine_Include);../../XEngine_Depend/XEngine_Module/jsoncpp;$(IncludePath) + $(XEngine_Include);../../XEngine_DependLibrary/XEngine_OPenSource/XEngine_Module/jsoncpp;$(IncludePath) $(XEngine_LibArm64);$(LibraryPath) $(SolutionDir)$(Platform)\$(Configuration)\XEngine_LibPlugin\ $(Platform)\$(Configuration)\XEngine_LibPlugin\ diff --git a/XEngine_Source/XEngine_ServiceApp/XEngine_HttpApp/XEngine_Hdr.h b/XEngine_Source/XEngine_ServiceApp/XEngine_HttpApp/XEngine_Hdr.h index 877902b..8d11baa 100644 --- a/XEngine_Source/XEngine_ServiceApp/XEngine_HttpApp/XEngine_Hdr.h +++ b/XEngine_Source/XEngine_ServiceApp/XEngine_HttpApp/XEngine_Hdr.h @@ -61,14 +61,14 @@ using namespace std; #include #include #include -#include "../../XEngine_Depend/XEngine_Module/XEngine_InfoReport/InfoReport_Define.h" -#include "../../XEngine_Depend/XEngine_Module/XEngine_InfoReport/InfoReport_Error.h" -#include "../../XEngine_DBDepend/XEngine_IPMacData/XEngine_Source/XIPMac_CommHdr.h" -#include "../../XEngine_DBDepend/XEngine_IPMacData/XEngine_Source/XEngine_APIModuleIPMac/APIIPMac_Define.h" -#include "../../XEngine_DBDepend/XEngine_IPMacData/XEngine_Source/XEngine_APIModuleIPMac/APIIPMac_Error.h" -#include "../../XEngine_DBDepend/XEngine_PhoneData/Source/XPhone_CommHdr.h" -#include "../../XEngine_DBDepend/XEngine_PhoneData/Source/C/XEngine_APIModulePhone/APIPhone_Define.h" -#include "../../XEngine_DBDepend/XEngine_PhoneData/Source/C/XEngine_APIModulePhone/APIPhone_Error.h" +#include "../../XEngine_DependLibrary/XEngine_OPenSource/XEngine_Module/XEngine_InfoReport/InfoReport_Define.h" +#include "../../XEngine_DependLibrary/XEngine_OPenSource/XEngine_Module/XEngine_InfoReport/InfoReport_Error.h" +#include "../../XEngine_DependLibrary/XEngine_IPMacData/XEngine_Source/XIPMac_CommHdr.h" +#include "../../XEngine_DependLibrary/XEngine_IPMacData/XEngine_Source/XEngine_APIModuleIPMac/APIIPMac_Define.h" +#include "../../XEngine_DependLibrary/XEngine_IPMacData/XEngine_Source/XEngine_APIModuleIPMac/APIIPMac_Error.h" +#include "../../XEngine_DependLibrary/XEngine_PhoneData/Source/XPhone_CommHdr.h" +#include "../../XEngine_DependLibrary/XEngine_PhoneData/Source/C/XEngine_APIModulePhone/APIPhone_Define.h" +#include "../../XEngine_DependLibrary/XEngine_PhoneData/Source/C/XEngine_APIModulePhone/APIPhone_Error.h" //加载项目相关头文件 #include "../../XEngine_BuildSwitch.h" #include "../../XEngine_UserProtocol.h" From 11f0df0ee9def086d73b60c305172da0c2de9f93 Mon Sep 17 00:00:00 2001 From: qyt <486179@qq.com> Date: Fri, 20 Jun 2025 16:06:39 +0800 Subject: [PATCH 06/30] fixed:build error --- XEngine_Source/Makefile | 8 +++---- XEngine_Source/XEngine.sln | 49 ++++++++++++++++++++++++++++++++++++++ 2 files changed, 53 insertions(+), 4 deletions(-) diff --git a/XEngine_Source/Makefile b/XEngine_Source/Makefile index 07a6398..0b3328c 100644 --- a/XEngine_Source/Makefile +++ b/XEngine_Source/Makefile @@ -17,11 +17,11 @@ PLUGIN_MODULE_TIMEZONE = ./XEngine_PluginModule/ModulePlugin_Timezone PLUGIN_MODULE_BMINDEX = ./XEngine_PluginModule/ModulePlugin_BMIndex PLUGIN_MODULE_METER = ./XEngine_PluginModule/ModulePlugin_Meter -THIRDPART_MODULE_JSONCPP = ./XEngine_Depend/XEngine_Module/jsoncpp -THIRDPART_MODULE_REPORT = ./XEngine_Depend/XEngine_Module/XEngine_InfoReport +THIRDPART_MODULE_JSONCPP = ./XEngine_DependLibrary/XEngine_OPenSource/XEngine_Module/jsoncpp +THIRDPART_MODULE_REPORT = ./XEngine_DependLibrary/XEngine_OPenSource/XEngine_Module/XEngine_InfoReport -APIMODULE_PHONE_PATH = ./XEngine_DBDepend/XEngine_PhoneData/Source/C/XEngine_APIModulePhone -APIMODULE_IPMAC_PATH = ./XEngine_DBDepend/XEngine_IPMacData/XEngine_Source/XEngine_APIModuleIPMac +APIMODULE_PHONE_PATH = ./XEngine_DependLibrary/XEngine_PhoneData/Source/C/XEngine_APIModulePhone +APIMODULE_IPMAC_PATH = ./XEngine_DependLibrary/XEngine_IPMacData/XEngine_Source/XEngine_APIModuleIPMac APP_HTTP_PATH = ./XEngine_ServiceApp/XEngine_HttpApp diff --git a/XEngine_Source/XEngine.sln b/XEngine_Source/XEngine.sln index e7dc9d0..51f5875 100644 --- a/XEngine_Source/XEngine.sln +++ b/XEngine_Source/XEngine.sln @@ -4,6 +4,9 @@ Microsoft Visual Studio Solution File, Format Version 12.00 VisualStudioVersion = 17.1.32210.238 MinimumVisualStudioVersion = 10.0.40219.1 Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "XEngine_ModuleConfigure", "XEngine_ModuleConfigure\XEngine_ModuleConfigure.vcxproj", "{F54F152C-594F-4465-A44E-2DB915B39760}" + ProjectSection(ProjectDependencies) = postProject + {1D2715F0-BC92-4E54-91FC-60CA53969719} = {1D2715F0-BC92-4E54-91FC-60CA53969719} + EndProjectSection EndProject Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "XEngine_UserHdr", "XEngine_UserHdr", "{9E4F2158-9AC1-4C19-A3F7-375A9DBCF856}" ProjectSection(SolutionItems) = preProject @@ -16,12 +19,16 @@ EndProject Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "XEngine_HttpApp", "XEngine_ServiceApp\XEngine_HttpApp\XEngine_HttpApp.vcxproj", "{E756B7D2-D40D-4106-9C14-1D90F20A712E}" ProjectSection(ProjectDependencies) = postProject {140AD4A9-4918-4345-B352-507C345AEBE0} = {140AD4A9-4918-4345-B352-507C345AEBE0} + {156C590B-0482-45C4-9744-F9E349EC2824} = {156C590B-0482-45C4-9744-F9E349EC2824} + {1D2715F0-BC92-4E54-91FC-60CA53969719} = {1D2715F0-BC92-4E54-91FC-60CA53969719} {201B6D13-82A7-49E9-9736-D6B3BFE05B30} = {201B6D13-82A7-49E9-9736-D6B3BFE05B30} + {30E7EED1-0F09-4187-872E-35566E8F6692} = {30E7EED1-0F09-4187-872E-35566E8F6692} {32BB166A-3D3D-45EF-8BED-2E0471274159} = {32BB166A-3D3D-45EF-8BED-2E0471274159} {37B8E91F-EC52-41F0-B21D-441D4270C05F} = {37B8E91F-EC52-41F0-B21D-441D4270C05F} {6C935BE1-77E3-4719-A7A6-C76ABAFEE010} = {6C935BE1-77E3-4719-A7A6-C76ABAFEE010} {6D0FCB40-D544-4AB2-A239-2FEBC4B98F6D} = {6D0FCB40-D544-4AB2-A239-2FEBC4B98F6D} {6F111577-DAF8-4294-B516-0077C22D7613} = {6F111577-DAF8-4294-B516-0077C22D7613} + {8610902F-2048-42BA-B33C-A7D80B193BF5} = {8610902F-2048-42BA-B33C-A7D80B193BF5} {92F971AB-CAC9-4D9B-A9CA-AFD9CA17E505} = {92F971AB-CAC9-4D9B-A9CA-AFD9CA17E505} {BBC4B2B4-1143-45DF-8890-47CE26A61D0E} = {BBC4B2B4-1143-45DF-8890-47CE26A61D0E} {CB443280-E283-44CD-B956-52C404A51DB6} = {CB443280-E283-44CD-B956-52C404A51DB6} @@ -31,6 +38,9 @@ EndProject Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "XEngine_ModuleDatabase", "XEngine_ModuleDatabase\XEngine_ModuleDatabase.vcxproj", "{140AD4A9-4918-4345-B352-507C345AEBE0}" EndProject Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "XEngine_ModuleProtocol", "XEngine_ModuleProtocol\XEngine_ModuleProtocol.vcxproj", "{6C935BE1-77E3-4719-A7A6-C76ABAFEE010}" + ProjectSection(ProjectDependencies) = postProject + {1D2715F0-BC92-4E54-91FC-60CA53969719} = {1D2715F0-BC92-4E54-91FC-60CA53969719} + EndProjectSection EndProject Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "XEngine_ModuleHelp", "XEngine_ModuleHelp\XEngine_ModuleHelp.vcxproj", "{6D0FCB40-D544-4AB2-A239-2FEBC4B98F6D}" EndProject @@ -39,19 +49,49 @@ EndProject Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "XEngine_PluginModule", "XEngine_PluginModule", "{D0473C03-9464-4C44-818A-AE212680CD05}" EndProject Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "libModulePlugin_Zodiac", "XEngine_PluginModule\ModulePlugin_Zodiac\ModulePlugin_Zodiac.vcxproj", "{32BB166A-3D3D-45EF-8BED-2E0471274159}" + ProjectSection(ProjectDependencies) = postProject + {1D2715F0-BC92-4E54-91FC-60CA53969719} = {1D2715F0-BC92-4E54-91FC-60CA53969719} + EndProjectSection EndProject Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "libModulePlugin_Password", "XEngine_PluginModule\ModulePlugin_Password\ModulePlugin_Password.vcxproj", "{201B6D13-82A7-49E9-9736-D6B3BFE05B30}" + ProjectSection(ProjectDependencies) = postProject + {1D2715F0-BC92-4E54-91FC-60CA53969719} = {1D2715F0-BC92-4E54-91FC-60CA53969719} + EndProjectSection EndProject Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "libModulePlugin_Timezone", "XEngine_PluginModule\ModulePlugin_Timezone\ModulePlugin_Timezone.vcxproj", "{37B8E91F-EC52-41F0-B21D-441D4270C05F}" + ProjectSection(ProjectDependencies) = postProject + {1D2715F0-BC92-4E54-91FC-60CA53969719} = {1D2715F0-BC92-4E54-91FC-60CA53969719} + EndProjectSection EndProject Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "libModulePlugin_BMIndex", "XEngine_PluginModule\ModulePlugin_BMIndex\ModulePlugin_BMIndex.vcxproj", "{BBC4B2B4-1143-45DF-8890-47CE26A61D0E}" + ProjectSection(ProjectDependencies) = postProject + {1D2715F0-BC92-4E54-91FC-60CA53969719} = {1D2715F0-BC92-4E54-91FC-60CA53969719} + EndProjectSection EndProject Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "libModulePlugin_Meter", "XEngine_PluginModule\ModulePlugin_Meter\ModulePlugin_Meter.vcxproj", "{6F111577-DAF8-4294-B516-0077C22D7613}" + ProjectSection(ProjectDependencies) = postProject + {1D2715F0-BC92-4E54-91FC-60CA53969719} = {1D2715F0-BC92-4E54-91FC-60CA53969719} + EndProjectSection EndProject Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "XEngine_ModuleSystem", "XEngine_ModuleSystem\XEngine_ModuleSystem.vcxproj", "{92F971AB-CAC9-4D9B-A9CA-AFD9CA17E505}" EndProject Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "XEngine_APIServiceApp", "XEngine_ServiceApp\XEngine_APIServiceApp\XEngine_APIServiceApp.vcxproj", "{096BEF37-4AF6-490D-868B-6306D3E251E7}" ProjectSection(ProjectDependencies) = postProject + {140AD4A9-4918-4345-B352-507C345AEBE0} = {140AD4A9-4918-4345-B352-507C345AEBE0} + {156C590B-0482-45C4-9744-F9E349EC2824} = {156C590B-0482-45C4-9744-F9E349EC2824} + {1D2715F0-BC92-4E54-91FC-60CA53969719} = {1D2715F0-BC92-4E54-91FC-60CA53969719} + {201B6D13-82A7-49E9-9736-D6B3BFE05B30} = {201B6D13-82A7-49E9-9736-D6B3BFE05B30} + {30E7EED1-0F09-4187-872E-35566E8F6692} = {30E7EED1-0F09-4187-872E-35566E8F6692} + {32BB166A-3D3D-45EF-8BED-2E0471274159} = {32BB166A-3D3D-45EF-8BED-2E0471274159} + {37B8E91F-EC52-41F0-B21D-441D4270C05F} = {37B8E91F-EC52-41F0-B21D-441D4270C05F} + {6C935BE1-77E3-4719-A7A6-C76ABAFEE010} = {6C935BE1-77E3-4719-A7A6-C76ABAFEE010} + {6D0FCB40-D544-4AB2-A239-2FEBC4B98F6D} = {6D0FCB40-D544-4AB2-A239-2FEBC4B98F6D} + {6F111577-DAF8-4294-B516-0077C22D7613} = {6F111577-DAF8-4294-B516-0077C22D7613} + {8610902F-2048-42BA-B33C-A7D80B193BF5} = {8610902F-2048-42BA-B33C-A7D80B193BF5} + {92F971AB-CAC9-4D9B-A9CA-AFD9CA17E505} = {92F971AB-CAC9-4D9B-A9CA-AFD9CA17E505} + {BBC4B2B4-1143-45DF-8890-47CE26A61D0E} = {BBC4B2B4-1143-45DF-8890-47CE26A61D0E} + {CB443280-E283-44CD-B956-52C404A51DB6} = {CB443280-E283-44CD-B956-52C404A51DB6} + {E756B7D2-D40D-4106-9C14-1D90F20A712E} = {E756B7D2-D40D-4106-9C14-1D90F20A712E} {F54F152C-594F-4465-A44E-2DB915B39760} = {F54F152C-594F-4465-A44E-2DB915B39760} EndProjectSection EndProject @@ -60,10 +100,19 @@ EndProject Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "jsoncpp", "XEngine_DependLibrary\XEngine_OPenSource\XEngine_Module\jsoncpp\jsoncpp.vcxproj", "{1D2715F0-BC92-4E54-91FC-60CA53969719}" EndProject Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "XEngine_InfoReport", "XEngine_DependLibrary\XEngine_OPenSource\XEngine_Module\XEngine_InfoReport\XEngine_InfoReport.vcxproj", "{156C590B-0482-45C4-9744-F9E349EC2824}" + ProjectSection(ProjectDependencies) = postProject + {1D2715F0-BC92-4E54-91FC-60CA53969719} = {1D2715F0-BC92-4E54-91FC-60CA53969719} + EndProjectSection EndProject Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "XEngine_APIModuleIPMac", "XEngine_DependLibrary\XEngine_IPMacData\XEngine_Source\XEngine_APIModuleIPMac\XEngine_APIModuleIPMac.vcxproj", "{30E7EED1-0F09-4187-872E-35566E8F6692}" + ProjectSection(ProjectDependencies) = postProject + {1D2715F0-BC92-4E54-91FC-60CA53969719} = {1D2715F0-BC92-4E54-91FC-60CA53969719} + EndProjectSection EndProject Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "XEngine_APIModulePhone", "XEngine_DependLibrary\XEngine_PhoneData\Source\C\XEngine_APIModulePhone\XEngine_APIModulePhone.vcxproj", "{8610902F-2048-42BA-B33C-A7D80B193BF5}" + ProjectSection(ProjectDependencies) = postProject + {1D2715F0-BC92-4E54-91FC-60CA53969719} = {1D2715F0-BC92-4E54-91FC-60CA53969719} + EndProjectSection EndProject Global GlobalSection(SolutionConfigurationPlatforms) = preSolution From 20440fa9f1f94ed5e9049bb7aeccc291ce486d95 Mon Sep 17 00:00:00 2001 From: qyt <486179@qq.com> Date: Fri, 20 Jun 2025 16:26:41 +0800 Subject: [PATCH 07/30] ci:modify depend library path --- .github/workflows/Rocky_build.yml | 19 ++++--------------- .github/workflows/debian_build.yml | 19 ++++--------------- .github/workflows/fedora_build.yml | 19 ++++--------------- .../XEngine_ModuleConfigure/Makefile | 4 ++-- .../XEngine_ModuleProtocol/Makefile | 4 ++-- .../ModulePlugin_BMIndex/Makefile | 4 ++-- .../ModulePlugin_Meter/Makefile | 4 ++-- .../ModulePlugin_Password/Makefile | 4 ++-- .../ModulePlugin_Timezone/Makefile | 4 ++-- .../ModulePlugin_Zodiac/Makefile | 4 ++-- 10 files changed, 26 insertions(+), 59 deletions(-) diff --git a/.github/workflows/Rocky_build.yml b/.github/workflows/Rocky_build.yml index f5e43dc..0aa3426 100644 --- a/.github/workflows/Rocky_build.yml +++ b/.github/workflows/Rocky_build.yml @@ -42,21 +42,10 @@ jobs: repository: libxengine/libxengine path: libxengine - - name: sub module checkout (XEngine_OPenSource) - uses: actions/checkout@v4 - with: - repository: libxengine/XEngine_OPenSource - path: XEngine_Source/XEngine_Depend - - name: sub module checkout (XEngine_PhoneData) - uses: actions/checkout@v4 - with: - repository: libxengine/XEngine_PhoneData - path: XEngine_Source/XEngine_DBDepend/XEngine_PhoneData - - name: sub module checkout (XEngine_IPMacData) - uses: actions/checkout@v4 - with: - repository: libxengine/XEngine_IPMacData - path: XEngine_Source/XEngine_DBDepend/XEngine_IPMacData + - name: sub module checkout (opensource) + run: | + git submodule init + git submodule update - name: Set TERM variable run: echo "TERM=xterm" >> $GITHUB_ENV diff --git a/.github/workflows/debian_build.yml b/.github/workflows/debian_build.yml index 0c687c6..9e0fff3 100644 --- a/.github/workflows/debian_build.yml +++ b/.github/workflows/debian_build.yml @@ -38,21 +38,10 @@ jobs: repository: libxengine/libxengine path: libxengine - - name: sub module checkout (XEngine_OPenSource) - uses: actions/checkout@v4 - with: - repository: libxengine/XEngine_OPenSource - path: XEngine_Source/XEngine_Depend - - name: sub module checkout (XEngine_PhoneData) - uses: actions/checkout@v4 - with: - repository: libxengine/XEngine_PhoneData - path: XEngine_Source/XEngine_DBDepend/XEngine_PhoneData - - name: sub module checkout (XEngine_IPMacData) - uses: actions/checkout@v4 - with: - repository: libxengine/XEngine_IPMacData - path: XEngine_Source/XEngine_DBDepend/XEngine_IPMacData + - name: sub module checkout (opensource) + run: | + git submodule init + git submodule update - name: Set TERM variable run: echo "TERM=xterm" >> $GITHUB_ENV diff --git a/.github/workflows/fedora_build.yml b/.github/workflows/fedora_build.yml index 1cca796..36f7f7b 100644 --- a/.github/workflows/fedora_build.yml +++ b/.github/workflows/fedora_build.yml @@ -42,21 +42,10 @@ jobs: repository: libxengine/libxengine path: libxengine - - name: sub module checkout (XEngine_OPenSource) - uses: actions/checkout@v4 - with: - repository: libxengine/XEngine_OPenSource - path: XEngine_Source/XEngine_Depend - - name: sub module checkout (XEngine_PhoneData) - uses: actions/checkout@v4 - with: - repository: libxengine/XEngine_PhoneData - path: XEngine_Source/XEngine_DBDepend/XEngine_PhoneData - - name: sub module checkout (XEngine_IPMacData) - uses: actions/checkout@v4 - with: - repository: libxengine/XEngine_IPMacData - path: XEngine_Source/XEngine_DBDepend/XEngine_IPMacData + - name: sub module checkout (opensource) + run: | + git submodule init + git submodule update - name: install system package run: | diff --git a/XEngine_Source/XEngine_ModuleConfigure/Makefile b/XEngine_Source/XEngine_ModuleConfigure/Makefile index 7a4990d..f434398 100644 --- a/XEngine_Source/XEngine_ModuleConfigure/Makefile +++ b/XEngine_Source/XEngine_ModuleConfigure/Makefile @@ -2,8 +2,8 @@ CC = g++ -Wall -std=c++20 -fPIC PLATVER = FILEEXT = LIBFLAG = -LOADHDR = -I ./ -I ../XEngine_Depend/XEngine_Module/jsoncpp -LOADSO = -L ../XEngine_Depend/XEngine_Module/jsoncpp +LOADHDR = -I ./ -I ../XEngine_DependLibrary/XEngine_OPenSource/XEngine_Module/jsoncpp +LOADSO = -L ../XEngine_DependLibrary/XEngine_OPenSource/XEngine_Module/jsoncpp LIB = -ljsoncpp LIBEX = OBJECTS = ModuleConfigure_Json.o pch.o diff --git a/XEngine_Source/XEngine_ModuleProtocol/Makefile b/XEngine_Source/XEngine_ModuleProtocol/Makefile index 8fc6ffa..7a3955a 100644 --- a/XEngine_Source/XEngine_ModuleProtocol/Makefile +++ b/XEngine_Source/XEngine_ModuleProtocol/Makefile @@ -2,8 +2,8 @@ CC = g++ -Wall -std=c++20 -fPIC PLATVER = FILEEXT = LIBFLAG = -LOADHDR = -I ./ -I ../XEngine_Depend/XEngine_Module/jsoncpp -LOADSO = -L ../XEngine_Depend/XEngine_Module/jsoncpp +LOADHDR = -I ./ -I ../XEngine_DependLibrary/XEngine_OPenSource/XEngine_Module/jsoncpp +LOADSO = -L ../XEngine_DependLibrary/XEngine_OPenSource/XEngine_Module/jsoncpp LIB = -lXEngine_BaseLib -lNetHelp_XSocket -lXEngine_SystemApi -lNetHelp_APIAddr -ljsoncpp LIBEX = OBJECTS = ModuleProtocol_Packet.o ModuleProtocol_Parse.o pch.o diff --git a/XEngine_Source/XEngine_PluginModule/ModulePlugin_BMIndex/Makefile b/XEngine_Source/XEngine_PluginModule/ModulePlugin_BMIndex/Makefile index 756b856..66002ea 100644 --- a/XEngine_Source/XEngine_PluginModule/ModulePlugin_BMIndex/Makefile +++ b/XEngine_Source/XEngine_PluginModule/ModulePlugin_BMIndex/Makefile @@ -2,8 +2,8 @@ CC = g++ -Wall -std=c++20 -fPIC PLATVER = FILEEXT = LIBFLAG = -LOADHDR = -I ./ -I ../../XEngine_Depend/XEngine_Module/jsoncpp -LOADSO = -L ../../XEngine_Depend/XEngine_Module/jsoncpp +LOADHDR = -I ./ -I ../XEngine_DependLibrary/XEngine_OPenSource/XEngine_Module/jsoncpp +LOADSO = -L ../XEngine_DependLibrary/XEngine_OPenSource/XEngine_Module/jsoncpp LIB = -lXEngine_BaseLib -ljsoncpp LIBEX = OBJECTS = Plugin_BMIndex.o pch.o diff --git a/XEngine_Source/XEngine_PluginModule/ModulePlugin_Meter/Makefile b/XEngine_Source/XEngine_PluginModule/ModulePlugin_Meter/Makefile index 08c6270..d3ac26f 100644 --- a/XEngine_Source/XEngine_PluginModule/ModulePlugin_Meter/Makefile +++ b/XEngine_Source/XEngine_PluginModule/ModulePlugin_Meter/Makefile @@ -2,8 +2,8 @@ CC = g++ -Wall -std=c++20 -fPIC PLATVER = FILEEXT = LIBFLAG = -LOADHDR = -I ./ -I ../../XEngine_Depend/XEngine_Module/jsoncpp -LOADSO = -L ../../XEngine_Depend/XEngine_Module/jsoncpp +LOADHDR = -I ./ -I ../XEngine_DependLibrary/XEngine_OPenSource/XEngine_Module/jsoncpp +LOADSO = -L ../XEngine_DependLibrary/XEngine_OPenSource/XEngine_Module/jsoncpp LIB = -lXEngine_BaseLib -ljsoncpp LIBEX = OBJECTS = Plugin_Meter.o pch.o diff --git a/XEngine_Source/XEngine_PluginModule/ModulePlugin_Password/Makefile b/XEngine_Source/XEngine_PluginModule/ModulePlugin_Password/Makefile index 0901e4b..dc5da74 100644 --- a/XEngine_Source/XEngine_PluginModule/ModulePlugin_Password/Makefile +++ b/XEngine_Source/XEngine_PluginModule/ModulePlugin_Password/Makefile @@ -2,8 +2,8 @@ CC = g++ -Wall -std=c++20 -fPIC PLATVER = FILEEXT = LIBFLAG = -LOADHDR = -I ./ -I ../../XEngine_Depend/XEngine_Module/jsoncpp -LOADSO = -L ../../XEngine_Depend/XEngine_Module/jsoncpp +LOADHDR = -I ./ -I ../XEngine_DependLibrary/XEngine_OPenSource/XEngine_Module/jsoncpp +LOADSO = -L ../XEngine_DependLibrary/XEngine_OPenSource/XEngine_Module/jsoncpp LIB = -lXEngine_BaseLib -ljsoncpp LIBEX = OBJECTS = Plugin_Password.o pch.o diff --git a/XEngine_Source/XEngine_PluginModule/ModulePlugin_Timezone/Makefile b/XEngine_Source/XEngine_PluginModule/ModulePlugin_Timezone/Makefile index d962111..9899d3d 100644 --- a/XEngine_Source/XEngine_PluginModule/ModulePlugin_Timezone/Makefile +++ b/XEngine_Source/XEngine_PluginModule/ModulePlugin_Timezone/Makefile @@ -2,8 +2,8 @@ CC = g++ -Wall -std=c++20 -fPIC PLATVER = FILEEXT = LIBFLAG = -LOADHDR = -I ./ -I ../../XEngine_Depend/XEngine_Module/jsoncpp -LOADSO = -L ../../XEngine_Depend/XEngine_Module/jsoncpp +LOADHDR = -I ./ -I ../XEngine_DependLibrary/XEngine_OPenSource/XEngine_Module/jsoncpp +LOADSO = -L ../XEngine_DependLibrary/XEngine_OPenSource/XEngine_Module/jsoncpp LIB = -lXEngine_BaseLib -ljsoncpp LIBEX = OBJECTS = Plugin_Timezone.o pch.o diff --git a/XEngine_Source/XEngine_PluginModule/ModulePlugin_Zodiac/Makefile b/XEngine_Source/XEngine_PluginModule/ModulePlugin_Zodiac/Makefile index f0c8479..970c04f 100644 --- a/XEngine_Source/XEngine_PluginModule/ModulePlugin_Zodiac/Makefile +++ b/XEngine_Source/XEngine_PluginModule/ModulePlugin_Zodiac/Makefile @@ -2,8 +2,8 @@ CC = g++ -Wall -std=c++20 -fPIC PLATVER = FILEEXT = LIBFLAG = -LOADHDR = -I ./ -I ../../XEngine_Depend/XEngine_Module/jsoncpp -LOADSO = -L ../../XEngine_Depend/XEngine_Module/jsoncpp +LOADHDR = -I ./ -I ../XEngine_DependLibrary/XEngine_OPenSource/XEngine_Module/jsoncpp +LOADSO = -L ../XEngine_DependLibrary/XEngine_OPenSource/XEngine_Module/jsoncpp LIB = -lXEngine_BaseLib -lXEngine_Algorithm -ljsoncpp LIBEX = OBJECTS = Plugin_Zodiac.o pch.o From 52422c99f6d3b72ab19bd8e24078ff25c9f2825e Mon Sep 17 00:00:00 2001 From: qyt <486179@qq.com> Date: Fri, 20 Jun 2025 16:54:47 +0800 Subject: [PATCH 08/30] fixed: build error --- .github/workflows/Rocky_build.yml | 10 +- .github/workflows/debian_build.yml | 10 +- .github/workflows/fedora_build.yml | 10 +- XEngine_Source/XEngine.sln | 148 ++++++++++---------- XEngine_Source/XEngine_ModuleProtocol/pch.h | 4 +- 5 files changed, 91 insertions(+), 91 deletions(-) diff --git a/.github/workflows/Rocky_build.yml b/.github/workflows/Rocky_build.yml index 0aa3426..46a8da4 100644 --- a/.github/workflows/Rocky_build.yml +++ b/.github/workflows/Rocky_build.yml @@ -42,11 +42,6 @@ jobs: repository: libxengine/libxengine path: libxengine - - name: sub module checkout (opensource) - run: | - git submodule init - git submodule update - - name: Set TERM variable run: echo "TERM=xterm" >> $GITHUB_ENV @@ -55,6 +50,11 @@ jobs: dnf update -y dnf install gcc g++ make git jq unzip wget -y + - name: sub module checkout (opensource) + run: | + git submodule init + git submodule update + - name: install xengine library run: | latest_tag=$(curl -s https://api.github.com/repos/libxengine/libxengine/releases/latest | jq -r .tag_name) diff --git a/.github/workflows/debian_build.yml b/.github/workflows/debian_build.yml index 9e0fff3..d5080b5 100644 --- a/.github/workflows/debian_build.yml +++ b/.github/workflows/debian_build.yml @@ -38,11 +38,6 @@ jobs: repository: libxengine/libxengine path: libxengine - - name: sub module checkout (opensource) - run: | - git submodule init - git submodule update - - name: Set TERM variable run: echo "TERM=xterm" >> $GITHUB_ENV @@ -52,6 +47,11 @@ jobs: apt install gcc g++ make git jq unzip curl wget -y apt install liblua5.4-dev libopencv-dev libopencv-contrib-dev libqrencode-dev libleptonica-dev libtesseract-dev -y + - name: sub module checkout (opensource) + run: | + git submodule init + git submodule update + - name: install xengine library run: | latest_tag=$(curl -s https://api.github.com/repos/libxengine/libxengine/releases/latest | jq -r .tag_name) diff --git a/.github/workflows/fedora_build.yml b/.github/workflows/fedora_build.yml index 36f7f7b..c32479f 100644 --- a/.github/workflows/fedora_build.yml +++ b/.github/workflows/fedora_build.yml @@ -42,11 +42,6 @@ jobs: repository: libxengine/libxengine path: libxengine - - name: sub module checkout (opensource) - run: | - git submodule init - git submodule update - - name: install system package run: | dnf update -y @@ -56,6 +51,11 @@ jobs: - name: Set TERM variable run: echo "TERM=xterm" >> $GITHUB_ENV + - name: sub module checkout (opensource) + run: | + git submodule init + git submodule update + - name: install xengine library run: | latest_tag=$(curl -s https://api.github.com/repos/libxengine/libxengine/releases/latest | jq -r .tag_name) diff --git a/XEngine_Source/XEngine.sln b/XEngine_Source/XEngine.sln index 51f5875..c2166ad 100644 --- a/XEngine_Source/XEngine.sln +++ b/XEngine_Source/XEngine.sln @@ -5,7 +5,7 @@ VisualStudioVersion = 17.1.32210.238 MinimumVisualStudioVersion = 10.0.40219.1 Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "XEngine_ModuleConfigure", "XEngine_ModuleConfigure\XEngine_ModuleConfigure.vcxproj", "{F54F152C-594F-4465-A44E-2DB915B39760}" ProjectSection(ProjectDependencies) = postProject - {1D2715F0-BC92-4E54-91FC-60CA53969719} = {1D2715F0-BC92-4E54-91FC-60CA53969719} + {F1736B3F-03A2-4FC7-B045-A12BA8D724FB} = {F1736B3F-03A2-4FC7-B045-A12BA8D724FB} EndProjectSection EndProject Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "XEngine_UserHdr", "XEngine_UserHdr", "{9E4F2158-9AC1-4C19-A3F7-375A9DBCF856}" @@ -19,16 +19,16 @@ EndProject Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "XEngine_HttpApp", "XEngine_ServiceApp\XEngine_HttpApp\XEngine_HttpApp.vcxproj", "{E756B7D2-D40D-4106-9C14-1D90F20A712E}" ProjectSection(ProjectDependencies) = postProject {140AD4A9-4918-4345-B352-507C345AEBE0} = {140AD4A9-4918-4345-B352-507C345AEBE0} - {156C590B-0482-45C4-9744-F9E349EC2824} = {156C590B-0482-45C4-9744-F9E349EC2824} - {1D2715F0-BC92-4E54-91FC-60CA53969719} = {1D2715F0-BC92-4E54-91FC-60CA53969719} + {F6520D2C-BB8E-45BB-964B-F5D6A4318A89} = {F6520D2C-BB8E-45BB-964B-F5D6A4318A89} + {F1736B3F-03A2-4FC7-B045-A12BA8D724FB} = {F1736B3F-03A2-4FC7-B045-A12BA8D724FB} {201B6D13-82A7-49E9-9736-D6B3BFE05B30} = {201B6D13-82A7-49E9-9736-D6B3BFE05B30} - {30E7EED1-0F09-4187-872E-35566E8F6692} = {30E7EED1-0F09-4187-872E-35566E8F6692} + {FFAC032D-4F8C-4C70-AF36-D79685A6961F} = {FFAC032D-4F8C-4C70-AF36-D79685A6961F} {32BB166A-3D3D-45EF-8BED-2E0471274159} = {32BB166A-3D3D-45EF-8BED-2E0471274159} {37B8E91F-EC52-41F0-B21D-441D4270C05F} = {37B8E91F-EC52-41F0-B21D-441D4270C05F} {6C935BE1-77E3-4719-A7A6-C76ABAFEE010} = {6C935BE1-77E3-4719-A7A6-C76ABAFEE010} {6D0FCB40-D544-4AB2-A239-2FEBC4B98F6D} = {6D0FCB40-D544-4AB2-A239-2FEBC4B98F6D} {6F111577-DAF8-4294-B516-0077C22D7613} = {6F111577-DAF8-4294-B516-0077C22D7613} - {8610902F-2048-42BA-B33C-A7D80B193BF5} = {8610902F-2048-42BA-B33C-A7D80B193BF5} + {A13B72E7-FC40-4A27-81C3-26DF3C8F4C0A} = {A13B72E7-FC40-4A27-81C3-26DF3C8F4C0A} {92F971AB-CAC9-4D9B-A9CA-AFD9CA17E505} = {92F971AB-CAC9-4D9B-A9CA-AFD9CA17E505} {BBC4B2B4-1143-45DF-8890-47CE26A61D0E} = {BBC4B2B4-1143-45DF-8890-47CE26A61D0E} {CB443280-E283-44CD-B956-52C404A51DB6} = {CB443280-E283-44CD-B956-52C404A51DB6} @@ -39,7 +39,7 @@ Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "XEngine_ModuleDatabase", "X EndProject Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "XEngine_ModuleProtocol", "XEngine_ModuleProtocol\XEngine_ModuleProtocol.vcxproj", "{6C935BE1-77E3-4719-A7A6-C76ABAFEE010}" ProjectSection(ProjectDependencies) = postProject - {1D2715F0-BC92-4E54-91FC-60CA53969719} = {1D2715F0-BC92-4E54-91FC-60CA53969719} + {F1736B3F-03A2-4FC7-B045-A12BA8D724FB} = {F1736B3F-03A2-4FC7-B045-A12BA8D724FB} EndProjectSection EndProject Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "XEngine_ModuleHelp", "XEngine_ModuleHelp\XEngine_ModuleHelp.vcxproj", "{6D0FCB40-D544-4AB2-A239-2FEBC4B98F6D}" @@ -50,27 +50,27 @@ Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "XEngine_PluginModule", "XEn EndProject Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "libModulePlugin_Zodiac", "XEngine_PluginModule\ModulePlugin_Zodiac\ModulePlugin_Zodiac.vcxproj", "{32BB166A-3D3D-45EF-8BED-2E0471274159}" ProjectSection(ProjectDependencies) = postProject - {1D2715F0-BC92-4E54-91FC-60CA53969719} = {1D2715F0-BC92-4E54-91FC-60CA53969719} + {F1736B3F-03A2-4FC7-B045-A12BA8D724FB} = {F1736B3F-03A2-4FC7-B045-A12BA8D724FB} EndProjectSection EndProject Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "libModulePlugin_Password", "XEngine_PluginModule\ModulePlugin_Password\ModulePlugin_Password.vcxproj", "{201B6D13-82A7-49E9-9736-D6B3BFE05B30}" ProjectSection(ProjectDependencies) = postProject - {1D2715F0-BC92-4E54-91FC-60CA53969719} = {1D2715F0-BC92-4E54-91FC-60CA53969719} + {F1736B3F-03A2-4FC7-B045-A12BA8D724FB} = {F1736B3F-03A2-4FC7-B045-A12BA8D724FB} EndProjectSection EndProject Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "libModulePlugin_Timezone", "XEngine_PluginModule\ModulePlugin_Timezone\ModulePlugin_Timezone.vcxproj", "{37B8E91F-EC52-41F0-B21D-441D4270C05F}" ProjectSection(ProjectDependencies) = postProject - {1D2715F0-BC92-4E54-91FC-60CA53969719} = {1D2715F0-BC92-4E54-91FC-60CA53969719} + {F1736B3F-03A2-4FC7-B045-A12BA8D724FB} = {F1736B3F-03A2-4FC7-B045-A12BA8D724FB} EndProjectSection EndProject Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "libModulePlugin_BMIndex", "XEngine_PluginModule\ModulePlugin_BMIndex\ModulePlugin_BMIndex.vcxproj", "{BBC4B2B4-1143-45DF-8890-47CE26A61D0E}" ProjectSection(ProjectDependencies) = postProject - {1D2715F0-BC92-4E54-91FC-60CA53969719} = {1D2715F0-BC92-4E54-91FC-60CA53969719} + {F1736B3F-03A2-4FC7-B045-A12BA8D724FB} = {F1736B3F-03A2-4FC7-B045-A12BA8D724FB} EndProjectSection EndProject Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "libModulePlugin_Meter", "XEngine_PluginModule\ModulePlugin_Meter\ModulePlugin_Meter.vcxproj", "{6F111577-DAF8-4294-B516-0077C22D7613}" ProjectSection(ProjectDependencies) = postProject - {1D2715F0-BC92-4E54-91FC-60CA53969719} = {1D2715F0-BC92-4E54-91FC-60CA53969719} + {F1736B3F-03A2-4FC7-B045-A12BA8D724FB} = {F1736B3F-03A2-4FC7-B045-A12BA8D724FB} EndProjectSection EndProject Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "XEngine_ModuleSystem", "XEngine_ModuleSystem\XEngine_ModuleSystem.vcxproj", "{92F971AB-CAC9-4D9B-A9CA-AFD9CA17E505}" @@ -78,16 +78,16 @@ EndProject Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "XEngine_APIServiceApp", "XEngine_ServiceApp\XEngine_APIServiceApp\XEngine_APIServiceApp.vcxproj", "{096BEF37-4AF6-490D-868B-6306D3E251E7}" ProjectSection(ProjectDependencies) = postProject {140AD4A9-4918-4345-B352-507C345AEBE0} = {140AD4A9-4918-4345-B352-507C345AEBE0} - {156C590B-0482-45C4-9744-F9E349EC2824} = {156C590B-0482-45C4-9744-F9E349EC2824} - {1D2715F0-BC92-4E54-91FC-60CA53969719} = {1D2715F0-BC92-4E54-91FC-60CA53969719} + {F6520D2C-BB8E-45BB-964B-F5D6A4318A89} = {F6520D2C-BB8E-45BB-964B-F5D6A4318A89} + {F1736B3F-03A2-4FC7-B045-A12BA8D724FB} = {F1736B3F-03A2-4FC7-B045-A12BA8D724FB} {201B6D13-82A7-49E9-9736-D6B3BFE05B30} = {201B6D13-82A7-49E9-9736-D6B3BFE05B30} - {30E7EED1-0F09-4187-872E-35566E8F6692} = {30E7EED1-0F09-4187-872E-35566E8F6692} + {FFAC032D-4F8C-4C70-AF36-D79685A6961F} = {FFAC032D-4F8C-4C70-AF36-D79685A6961F} {32BB166A-3D3D-45EF-8BED-2E0471274159} = {32BB166A-3D3D-45EF-8BED-2E0471274159} {37B8E91F-EC52-41F0-B21D-441D4270C05F} = {37B8E91F-EC52-41F0-B21D-441D4270C05F} {6C935BE1-77E3-4719-A7A6-C76ABAFEE010} = {6C935BE1-77E3-4719-A7A6-C76ABAFEE010} {6D0FCB40-D544-4AB2-A239-2FEBC4B98F6D} = {6D0FCB40-D544-4AB2-A239-2FEBC4B98F6D} {6F111577-DAF8-4294-B516-0077C22D7613} = {6F111577-DAF8-4294-B516-0077C22D7613} - {8610902F-2048-42BA-B33C-A7D80B193BF5} = {8610902F-2048-42BA-B33C-A7D80B193BF5} + {A13B72E7-FC40-4A27-81C3-26DF3C8F4C0A} = {A13B72E7-FC40-4A27-81C3-26DF3C8F4C0A} {92F971AB-CAC9-4D9B-A9CA-AFD9CA17E505} = {92F971AB-CAC9-4D9B-A9CA-AFD9CA17E505} {BBC4B2B4-1143-45DF-8890-47CE26A61D0E} = {BBC4B2B4-1143-45DF-8890-47CE26A61D0E} {CB443280-E283-44CD-B956-52C404A51DB6} = {CB443280-E283-44CD-B956-52C404A51DB6} @@ -97,21 +97,21 @@ Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "XEngine_APIServiceApp", "XE EndProject Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "XEngine_DependLibrary", "XEngine_DependLibrary", "{02EA681E-C7D8-13C7-8484-4AC65E1B71E8}" EndProject -Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "jsoncpp", "XEngine_DependLibrary\XEngine_OPenSource\XEngine_Module\jsoncpp\jsoncpp.vcxproj", "{1D2715F0-BC92-4E54-91FC-60CA53969719}" +Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "jsoncpp", "XEngine_DependLibrary\XEngine_OPenSource\XEngine_Module\jsoncpp\jsoncpp.vcxproj", "{F1736B3F-03A2-4FC7-B045-A12BA8D724FB}" EndProject -Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "XEngine_InfoReport", "XEngine_DependLibrary\XEngine_OPenSource\XEngine_Module\XEngine_InfoReport\XEngine_InfoReport.vcxproj", "{156C590B-0482-45C4-9744-F9E349EC2824}" +Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "XEngine_InfoReport", "XEngine_DependLibrary\XEngine_OPenSource\XEngine_Module\XEngine_InfoReport\XEngine_InfoReport.vcxproj", "{F6520D2C-BB8E-45BB-964B-F5D6A4318A89}" ProjectSection(ProjectDependencies) = postProject - {1D2715F0-BC92-4E54-91FC-60CA53969719} = {1D2715F0-BC92-4E54-91FC-60CA53969719} + {F1736B3F-03A2-4FC7-B045-A12BA8D724FB} = {F1736B3F-03A2-4FC7-B045-A12BA8D724FB} EndProjectSection EndProject -Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "XEngine_APIModuleIPMac", "XEngine_DependLibrary\XEngine_IPMacData\XEngine_Source\XEngine_APIModuleIPMac\XEngine_APIModuleIPMac.vcxproj", "{30E7EED1-0F09-4187-872E-35566E8F6692}" +Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "XEngine_APIModuleIPMac", "XEngine_DependLibrary\XEngine_IPMacData\XEngine_Source\XEngine_APIModuleIPMac\XEngine_APIModuleIPMac.vcxproj", "{FFAC032D-4F8C-4C70-AF36-D79685A6961F}" ProjectSection(ProjectDependencies) = postProject - {1D2715F0-BC92-4E54-91FC-60CA53969719} = {1D2715F0-BC92-4E54-91FC-60CA53969719} + {F1736B3F-03A2-4FC7-B045-A12BA8D724FB} = {F1736B3F-03A2-4FC7-B045-A12BA8D724FB} EndProjectSection EndProject -Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "XEngine_APIModulePhone", "XEngine_DependLibrary\XEngine_PhoneData\Source\C\XEngine_APIModulePhone\XEngine_APIModulePhone.vcxproj", "{8610902F-2048-42BA-B33C-A7D80B193BF5}" +Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "XEngine_APIModulePhone", "XEngine_DependLibrary\XEngine_PhoneData\Source\C\XEngine_APIModulePhone\XEngine_APIModulePhone.vcxproj", "{A13B72E7-FC40-4A27-81C3-26DF3C8F4C0A}" ProjectSection(ProjectDependencies) = postProject - {1D2715F0-BC92-4E54-91FC-60CA53969719} = {1D2715F0-BC92-4E54-91FC-60CA53969719} + {F1736B3F-03A2-4FC7-B045-A12BA8D724FB} = {F1736B3F-03A2-4FC7-B045-A12BA8D724FB} EndProjectSection EndProject Global @@ -280,54 +280,54 @@ Global {096BEF37-4AF6-490D-868B-6306D3E251E7}.Release|x64.Build.0 = Release|x64 {096BEF37-4AF6-490D-868B-6306D3E251E7}.Release|x86.ActiveCfg = Release|Win32 {096BEF37-4AF6-490D-868B-6306D3E251E7}.Release|x86.Build.0 = Release|Win32 - {1D2715F0-BC92-4E54-91FC-60CA53969719}.Debug|ARM64.ActiveCfg = Debug|ARM64 - {1D2715F0-BC92-4E54-91FC-60CA53969719}.Debug|ARM64.Build.0 = Debug|ARM64 - {1D2715F0-BC92-4E54-91FC-60CA53969719}.Debug|x64.ActiveCfg = Debug|x64 - {1D2715F0-BC92-4E54-91FC-60CA53969719}.Debug|x64.Build.0 = Debug|x64 - {1D2715F0-BC92-4E54-91FC-60CA53969719}.Debug|x86.ActiveCfg = Debug|Win32 - {1D2715F0-BC92-4E54-91FC-60CA53969719}.Debug|x86.Build.0 = Debug|Win32 - {1D2715F0-BC92-4E54-91FC-60CA53969719}.Release|ARM64.ActiveCfg = Release|ARM64 - {1D2715F0-BC92-4E54-91FC-60CA53969719}.Release|ARM64.Build.0 = Release|ARM64 - {1D2715F0-BC92-4E54-91FC-60CA53969719}.Release|x64.ActiveCfg = Release|x64 - {1D2715F0-BC92-4E54-91FC-60CA53969719}.Release|x64.Build.0 = Release|x64 - {1D2715F0-BC92-4E54-91FC-60CA53969719}.Release|x86.ActiveCfg = Release|Win32 - {1D2715F0-BC92-4E54-91FC-60CA53969719}.Release|x86.Build.0 = Release|Win32 - {156C590B-0482-45C4-9744-F9E349EC2824}.Debug|ARM64.ActiveCfg = Debug|ARM64 - {156C590B-0482-45C4-9744-F9E349EC2824}.Debug|ARM64.Build.0 = Debug|ARM64 - {156C590B-0482-45C4-9744-F9E349EC2824}.Debug|x64.ActiveCfg = Debug|x64 - {156C590B-0482-45C4-9744-F9E349EC2824}.Debug|x64.Build.0 = Debug|x64 - {156C590B-0482-45C4-9744-F9E349EC2824}.Debug|x86.ActiveCfg = Debug|Win32 - {156C590B-0482-45C4-9744-F9E349EC2824}.Debug|x86.Build.0 = Debug|Win32 - {156C590B-0482-45C4-9744-F9E349EC2824}.Release|ARM64.ActiveCfg = Release|ARM64 - {156C590B-0482-45C4-9744-F9E349EC2824}.Release|ARM64.Build.0 = Release|ARM64 - {156C590B-0482-45C4-9744-F9E349EC2824}.Release|x64.ActiveCfg = Release|x64 - {156C590B-0482-45C4-9744-F9E349EC2824}.Release|x64.Build.0 = Release|x64 - {156C590B-0482-45C4-9744-F9E349EC2824}.Release|x86.ActiveCfg = Release|Win32 - {156C590B-0482-45C4-9744-F9E349EC2824}.Release|x86.Build.0 = Release|Win32 - {30E7EED1-0F09-4187-872E-35566E8F6692}.Debug|ARM64.ActiveCfg = Debug|ARM64 - {30E7EED1-0F09-4187-872E-35566E8F6692}.Debug|ARM64.Build.0 = Debug|ARM64 - {30E7EED1-0F09-4187-872E-35566E8F6692}.Debug|x64.ActiveCfg = Debug|x64 - {30E7EED1-0F09-4187-872E-35566E8F6692}.Debug|x64.Build.0 = Debug|x64 - {30E7EED1-0F09-4187-872E-35566E8F6692}.Debug|x86.ActiveCfg = Debug|Win32 - {30E7EED1-0F09-4187-872E-35566E8F6692}.Debug|x86.Build.0 = Debug|Win32 - {30E7EED1-0F09-4187-872E-35566E8F6692}.Release|ARM64.ActiveCfg = Release|ARM64 - {30E7EED1-0F09-4187-872E-35566E8F6692}.Release|ARM64.Build.0 = Release|ARM64 - {30E7EED1-0F09-4187-872E-35566E8F6692}.Release|x64.ActiveCfg = Release|x64 - {30E7EED1-0F09-4187-872E-35566E8F6692}.Release|x64.Build.0 = Release|x64 - {30E7EED1-0F09-4187-872E-35566E8F6692}.Release|x86.ActiveCfg = Release|Win32 - {30E7EED1-0F09-4187-872E-35566E8F6692}.Release|x86.Build.0 = Release|Win32 - {8610902F-2048-42BA-B33C-A7D80B193BF5}.Debug|ARM64.ActiveCfg = Debug|ARM64 - {8610902F-2048-42BA-B33C-A7D80B193BF5}.Debug|ARM64.Build.0 = Debug|ARM64 - {8610902F-2048-42BA-B33C-A7D80B193BF5}.Debug|x64.ActiveCfg = Debug|x64 - {8610902F-2048-42BA-B33C-A7D80B193BF5}.Debug|x64.Build.0 = Debug|x64 - {8610902F-2048-42BA-B33C-A7D80B193BF5}.Debug|x86.ActiveCfg = Debug|Win32 - {8610902F-2048-42BA-B33C-A7D80B193BF5}.Debug|x86.Build.0 = Debug|Win32 - {8610902F-2048-42BA-B33C-A7D80B193BF5}.Release|ARM64.ActiveCfg = Release|ARM64 - {8610902F-2048-42BA-B33C-A7D80B193BF5}.Release|ARM64.Build.0 = Release|ARM64 - {8610902F-2048-42BA-B33C-A7D80B193BF5}.Release|x64.ActiveCfg = Release|x64 - {8610902F-2048-42BA-B33C-A7D80B193BF5}.Release|x64.Build.0 = Release|x64 - {8610902F-2048-42BA-B33C-A7D80B193BF5}.Release|x86.ActiveCfg = Release|Win32 - {8610902F-2048-42BA-B33C-A7D80B193BF5}.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 + {FFAC032D-4F8C-4C70-AF36-D79685A6961F}.Debug|ARM64.ActiveCfg = Debug|ARM64 + {FFAC032D-4F8C-4C70-AF36-D79685A6961F}.Debug|ARM64.Build.0 = Debug|ARM64 + {FFAC032D-4F8C-4C70-AF36-D79685A6961F}.Debug|x64.ActiveCfg = Debug|x64 + {FFAC032D-4F8C-4C70-AF36-D79685A6961F}.Debug|x64.Build.0 = Debug|x64 + {FFAC032D-4F8C-4C70-AF36-D79685A6961F}.Debug|x86.ActiveCfg = Debug|Win32 + {FFAC032D-4F8C-4C70-AF36-D79685A6961F}.Debug|x86.Build.0 = Debug|Win32 + {FFAC032D-4F8C-4C70-AF36-D79685A6961F}.Release|ARM64.ActiveCfg = Release|ARM64 + {FFAC032D-4F8C-4C70-AF36-D79685A6961F}.Release|ARM64.Build.0 = Release|ARM64 + {FFAC032D-4F8C-4C70-AF36-D79685A6961F}.Release|x64.ActiveCfg = Release|x64 + {FFAC032D-4F8C-4C70-AF36-D79685A6961F}.Release|x64.Build.0 = Release|x64 + {FFAC032D-4F8C-4C70-AF36-D79685A6961F}.Release|x86.ActiveCfg = Release|Win32 + {FFAC032D-4F8C-4C70-AF36-D79685A6961F}.Release|x86.Build.0 = Release|Win32 + {A13B72E7-FC40-4A27-81C3-26DF3C8F4C0A}.Debug|ARM64.ActiveCfg = Debug|ARM64 + {A13B72E7-FC40-4A27-81C3-26DF3C8F4C0A}.Debug|ARM64.Build.0 = Debug|ARM64 + {A13B72E7-FC40-4A27-81C3-26DF3C8F4C0A}.Debug|x64.ActiveCfg = Debug|x64 + {A13B72E7-FC40-4A27-81C3-26DF3C8F4C0A}.Debug|x64.Build.0 = Debug|x64 + {A13B72E7-FC40-4A27-81C3-26DF3C8F4C0A}.Debug|x86.ActiveCfg = Debug|Win32 + {A13B72E7-FC40-4A27-81C3-26DF3C8F4C0A}.Debug|x86.Build.0 = Debug|Win32 + {A13B72E7-FC40-4A27-81C3-26DF3C8F4C0A}.Release|ARM64.ActiveCfg = Release|ARM64 + {A13B72E7-FC40-4A27-81C3-26DF3C8F4C0A}.Release|ARM64.Build.0 = Release|ARM64 + {A13B72E7-FC40-4A27-81C3-26DF3C8F4C0A}.Release|x64.ActiveCfg = Release|x64 + {A13B72E7-FC40-4A27-81C3-26DF3C8F4C0A}.Release|x64.Build.0 = Release|x64 + {A13B72E7-FC40-4A27-81C3-26DF3C8F4C0A}.Release|x86.ActiveCfg = Release|Win32 + {A13B72E7-FC40-4A27-81C3-26DF3C8F4C0A}.Release|x86.Build.0 = Release|Win32 EndGlobalSection GlobalSection(SolutionProperties) = preSolution HideSolutionNode = FALSE @@ -340,10 +340,10 @@ Global {BBC4B2B4-1143-45DF-8890-47CE26A61D0E} = {D0473C03-9464-4C44-818A-AE212680CD05} {6F111577-DAF8-4294-B516-0077C22D7613} = {D0473C03-9464-4C44-818A-AE212680CD05} {096BEF37-4AF6-490D-868B-6306D3E251E7} = {79A9A569-7DA8-4D9D-AD34-D11115199EA1} - {1D2715F0-BC92-4E54-91FC-60CA53969719} = {02EA681E-C7D8-13C7-8484-4AC65E1B71E8} - {156C590B-0482-45C4-9744-F9E349EC2824} = {02EA681E-C7D8-13C7-8484-4AC65E1B71E8} - {30E7EED1-0F09-4187-872E-35566E8F6692} = {02EA681E-C7D8-13C7-8484-4AC65E1B71E8} - {8610902F-2048-42BA-B33C-A7D80B193BF5} = {02EA681E-C7D8-13C7-8484-4AC65E1B71E8} + {F1736B3F-03A2-4FC7-B045-A12BA8D724FB} = {02EA681E-C7D8-13C7-8484-4AC65E1B71E8} + {F6520D2C-BB8E-45BB-964B-F5D6A4318A89} = {02EA681E-C7D8-13C7-8484-4AC65E1B71E8} + {FFAC032D-4F8C-4C70-AF36-D79685A6961F} = {02EA681E-C7D8-13C7-8484-4AC65E1B71E8} + {A13B72E7-FC40-4A27-81C3-26DF3C8F4C0A} = {02EA681E-C7D8-13C7-8484-4AC65E1B71E8} EndGlobalSection GlobalSection(ExtensibilityGlobals) = postSolution SolutionGuid = {9B202F91-A601-429E-BB0F-880DDEE096FE} diff --git a/XEngine_Source/XEngine_ModuleProtocol/pch.h b/XEngine_Source/XEngine_ModuleProtocol/pch.h index ca2a222..8b30f8e 100644 --- a/XEngine_Source/XEngine_ModuleProtocol/pch.h +++ b/XEngine_Source/XEngine_ModuleProtocol/pch.h @@ -37,8 +37,8 @@ #include #include #include -#include "../../../XEngine_DependLibrary/XEngine_IPMacData/XEngine_Source/XIPMac_CommHdr.h" -#include "../../../XEngine_DependLibrary/XEngine_PhoneData/Source/XPhone_CommHdr.h" +#include "../XEngine_DependLibrary/XEngine_IPMacData/XEngine_Source/XIPMac_CommHdr.h" +#include "../XEngine_DependLibrary/XEngine_PhoneData/Source/XPhone_CommHdr.h" using namespace std; #include "../XEngine_UserProtocol.h" #include "ModuleProtocol_Define.h" From e32ba0211c7c15e1ab9b130ba691bf0d949bb9f1 Mon Sep 17 00:00:00 2001 From: qyt <486179@qq.com> Date: Fri, 20 Jun 2025 17:06:19 +0800 Subject: [PATCH 09/30] fixed:linux module plugin build --- .../XEngine_PluginModule/ModulePlugin_BMIndex/Makefile | 4 ++-- .../XEngine_PluginModule/ModulePlugin_Meter/Makefile | 4 ++-- .../XEngine_PluginModule/ModulePlugin_Password/Makefile | 4 ++-- .../XEngine_PluginModule/ModulePlugin_Timezone/Makefile | 4 ++-- .../XEngine_PluginModule/ModulePlugin_Zodiac/Makefile | 4 ++-- 5 files changed, 10 insertions(+), 10 deletions(-) diff --git a/XEngine_Source/XEngine_PluginModule/ModulePlugin_BMIndex/Makefile b/XEngine_Source/XEngine_PluginModule/ModulePlugin_BMIndex/Makefile index 66002ea..634fd97 100644 --- a/XEngine_Source/XEngine_PluginModule/ModulePlugin_BMIndex/Makefile +++ b/XEngine_Source/XEngine_PluginModule/ModulePlugin_BMIndex/Makefile @@ -2,8 +2,8 @@ CC = g++ -Wall -std=c++20 -fPIC PLATVER = FILEEXT = LIBFLAG = -LOADHDR = -I ./ -I ../XEngine_DependLibrary/XEngine_OPenSource/XEngine_Module/jsoncpp -LOADSO = -L ../XEngine_DependLibrary/XEngine_OPenSource/XEngine_Module/jsoncpp +LOADHDR = -I ./ -I ../../XEngine_DependLibrary/XEngine_OPenSource/XEngine_Module/jsoncpp +LOADSO = -L ../../XEngine_DependLibrary/XEngine_OPenSource/XEngine_Module/jsoncpp LIB = -lXEngine_BaseLib -ljsoncpp LIBEX = OBJECTS = Plugin_BMIndex.o pch.o diff --git a/XEngine_Source/XEngine_PluginModule/ModulePlugin_Meter/Makefile b/XEngine_Source/XEngine_PluginModule/ModulePlugin_Meter/Makefile index d3ac26f..f47acd8 100644 --- a/XEngine_Source/XEngine_PluginModule/ModulePlugin_Meter/Makefile +++ b/XEngine_Source/XEngine_PluginModule/ModulePlugin_Meter/Makefile @@ -2,8 +2,8 @@ CC = g++ -Wall -std=c++20 -fPIC PLATVER = FILEEXT = LIBFLAG = -LOADHDR = -I ./ -I ../XEngine_DependLibrary/XEngine_OPenSource/XEngine_Module/jsoncpp -LOADSO = -L ../XEngine_DependLibrary/XEngine_OPenSource/XEngine_Module/jsoncpp +LOADHDR = -I ./ -I ../../XEngine_DependLibrary/XEngine_OPenSource/XEngine_Module/jsoncpp +LOADSO = -L ../../XEngine_DependLibrary/XEngine_OPenSource/XEngine_Module/jsoncpp LIB = -lXEngine_BaseLib -ljsoncpp LIBEX = OBJECTS = Plugin_Meter.o pch.o diff --git a/XEngine_Source/XEngine_PluginModule/ModulePlugin_Password/Makefile b/XEngine_Source/XEngine_PluginModule/ModulePlugin_Password/Makefile index dc5da74..3749ff3 100644 --- a/XEngine_Source/XEngine_PluginModule/ModulePlugin_Password/Makefile +++ b/XEngine_Source/XEngine_PluginModule/ModulePlugin_Password/Makefile @@ -2,8 +2,8 @@ CC = g++ -Wall -std=c++20 -fPIC PLATVER = FILEEXT = LIBFLAG = -LOADHDR = -I ./ -I ../XEngine_DependLibrary/XEngine_OPenSource/XEngine_Module/jsoncpp -LOADSO = -L ../XEngine_DependLibrary/XEngine_OPenSource/XEngine_Module/jsoncpp +LOADHDR = -I ./ -I ../../XEngine_DependLibrary/XEngine_OPenSource/XEngine_Module/jsoncpp +LOADSO = -L ../../XEngine_DependLibrary/XEngine_OPenSource/XEngine_Module/jsoncpp LIB = -lXEngine_BaseLib -ljsoncpp LIBEX = OBJECTS = Plugin_Password.o pch.o diff --git a/XEngine_Source/XEngine_PluginModule/ModulePlugin_Timezone/Makefile b/XEngine_Source/XEngine_PluginModule/ModulePlugin_Timezone/Makefile index 9899d3d..04285d4 100644 --- a/XEngine_Source/XEngine_PluginModule/ModulePlugin_Timezone/Makefile +++ b/XEngine_Source/XEngine_PluginModule/ModulePlugin_Timezone/Makefile @@ -2,8 +2,8 @@ CC = g++ -Wall -std=c++20 -fPIC PLATVER = FILEEXT = LIBFLAG = -LOADHDR = -I ./ -I ../XEngine_DependLibrary/XEngine_OPenSource/XEngine_Module/jsoncpp -LOADSO = -L ../XEngine_DependLibrary/XEngine_OPenSource/XEngine_Module/jsoncpp +LOADHDR = -I ./ -I ../../XEngine_DependLibrary/XEngine_OPenSource/XEngine_Module/jsoncpp +LOADSO = -L ../../XEngine_DependLibrary/XEngine_OPenSource/XEngine_Module/jsoncpp LIB = -lXEngine_BaseLib -ljsoncpp LIBEX = OBJECTS = Plugin_Timezone.o pch.o diff --git a/XEngine_Source/XEngine_PluginModule/ModulePlugin_Zodiac/Makefile b/XEngine_Source/XEngine_PluginModule/ModulePlugin_Zodiac/Makefile index 970c04f..7991e0c 100644 --- a/XEngine_Source/XEngine_PluginModule/ModulePlugin_Zodiac/Makefile +++ b/XEngine_Source/XEngine_PluginModule/ModulePlugin_Zodiac/Makefile @@ -2,8 +2,8 @@ CC = g++ -Wall -std=c++20 -fPIC PLATVER = FILEEXT = LIBFLAG = -LOADHDR = -I ./ -I ../XEngine_DependLibrary/XEngine_OPenSource/XEngine_Module/jsoncpp -LOADSO = -L ../XEngine_DependLibrary/XEngine_OPenSource/XEngine_Module/jsoncpp +LOADHDR = -I ./ -I ../../XEngine_DependLibrary/XEngine_OPenSource/XEngine_Module/jsoncpp +LOADSO = -L ../../XEngine_DependLibrary/XEngine_OPenSource/XEngine_Module/jsoncpp LIB = -lXEngine_BaseLib -lXEngine_Algorithm -ljsoncpp LIBEX = OBJECTS = Plugin_Zodiac.o pch.o From 06cb0abc3148a1a68c079b4e74a95a474ad926c3 Mon Sep 17 00:00:00 2001 From: qyt <486179@qq.com> Date: Fri, 20 Jun 2025 17:18:54 +0800 Subject: [PATCH 10/30] fixed:build error --- .github/workflows/Rocky_build.yml | 7 ++----- .github/workflows/debian_build.yml | 7 ++----- .github/workflows/fedora_build.yml | 9 ++++----- .../XEngine_ServiceApp/XEngine_HttpApp/Makefile | 4 ++-- 4 files changed, 10 insertions(+), 17 deletions(-) diff --git a/.github/workflows/Rocky_build.yml b/.github/workflows/Rocky_build.yml index 46a8da4..68e37f1 100644 --- a/.github/workflows/Rocky_build.yml +++ b/.github/workflows/Rocky_build.yml @@ -35,6 +35,8 @@ jobs: uses: actions/checkout@v4 with: ref: 'develop' + fetch-depth: 0 + submodules: 'recursive' - name: Checkout dependency repository (xengine) uses: actions/checkout@v4 @@ -49,11 +51,6 @@ jobs: run: | dnf update -y dnf install gcc g++ make git jq unzip wget -y - - - name: sub module checkout (opensource) - run: | - git submodule init - git submodule update - name: install xengine library run: | diff --git a/.github/workflows/debian_build.yml b/.github/workflows/debian_build.yml index d5080b5..58f1c92 100644 --- a/.github/workflows/debian_build.yml +++ b/.github/workflows/debian_build.yml @@ -31,6 +31,8 @@ jobs: uses: actions/checkout@v4 with: ref: 'develop' + fetch-depth: 0 + submodules: 'recursive' - name: Checkout dependency repository (xengine) uses: actions/checkout@v4 @@ -47,11 +49,6 @@ jobs: apt install gcc g++ make git jq unzip curl wget -y apt install liblua5.4-dev libopencv-dev libopencv-contrib-dev libqrencode-dev libleptonica-dev libtesseract-dev -y - - name: sub module checkout (opensource) - run: | - git submodule init - git submodule update - - name: install xengine library run: | latest_tag=$(curl -s https://api.github.com/repos/libxengine/libxengine/releases/latest | jq -r .tag_name) diff --git a/.github/workflows/fedora_build.yml b/.github/workflows/fedora_build.yml index c32479f..571f0e5 100644 --- a/.github/workflows/fedora_build.yml +++ b/.github/workflows/fedora_build.yml @@ -35,6 +35,10 @@ jobs: steps: - name: Checkout main repository code uses: actions/checkout@v4 + with: + ref: 'develop' + fetch-depth: 0 + submodules: 'recursive' - name: Checkout dependency repository (xengine) uses: actions/checkout@v4 @@ -51,11 +55,6 @@ jobs: - name: Set TERM variable run: echo "TERM=xterm" >> $GITHUB_ENV - - name: sub module checkout (opensource) - run: | - git submodule init - git submodule update - - name: install xengine library run: | latest_tag=$(curl -s https://api.github.com/repos/libxengine/libxengine/releases/latest | jq -r .tag_name) diff --git a/XEngine_Source/XEngine_ServiceApp/XEngine_HttpApp/Makefile b/XEngine_Source/XEngine_ServiceApp/XEngine_HttpApp/Makefile index 30a2565..04771ee 100644 --- a/XEngine_Source/XEngine_ServiceApp/XEngine_HttpApp/Makefile +++ b/XEngine_Source/XEngine_ServiceApp/XEngine_HttpApp/Makefile @@ -4,8 +4,8 @@ FILEEXT = LIBFLAG = LOADHDR = -I ./ LOADSO = -L ../../XEngine_ModuleConfigure -L ../../XEngine_ModuleDatabase -L ../../XEngine_ModuleProtocol -L ../../XEngine_ModuleSystem -L ../../XEngine_ModuleHelp -L ../../XEngine_ModulePlugin \ - -L ../../XEngine_Depend/XEngine_Module/jsoncpp -L ../../XEngine_Depend/XEngine_Module/XEngine_InfoReport \ - -L ../../XEngine_DBDepend/XEngine_IPMacData/XEngine_Source/XEngine_APIModuleIPMac -L ../../XEngine_DBDepend/XEngine_PhoneData/Source/C/XEngine_APIModulePhone + -L ../../XEngine_DependLibrary/XEngine_OPenSource/XEngine_Module/jsoncpp -L ../../XEngine_DependLibrary/XEngine_OPenSource/XEngine_Module/XEngine_InfoReport \ + -L ../../XEngine_DependLibrary/XEngine_IPMacData/XEngine_Source/XEngine_APIModuleIPMac -L ../../XEngine_DependLibrary/XEngine_PhoneData/Source/C/XEngine_APIModulePhone LIB = -lXEngine_BaseSafe -lXEngine_BaseLib -lXEngine_Algorithm -lXEngine_Core -lXEngine_ManagePool -lXEngine_Cryption -lXClient_Stream -lXClient_APIHelp -lNetHelp_APIAddr -lHelpComponents_XLog -lRfcComponents_HttpProtocol -lRfcComponents_NatProtocol -lRfcComponents_NTPProtocol -lXEngine_ProcFile -lXEngine_SystemApi -lXEngine_AVHelp -lXEngine_VideoCodec -lXEngine_AudioCodec -lXEngine_AVCollect \ -lXEngine_ModuleConfigure -lXEngine_ModuleDatabase -lXEngine_ModuleProtocol -lXEngine_ModuleSystem -lXEngine_ModuleHelp -lXEngine_ModulePlugin \ -ljsoncpp -lXEngine_InfoReport \ From 22f7ecdaac4fb8060ad0e469aad476ebe8fa9c84 Mon Sep 17 00:00:00 2001 From: qyt <486179@qq.com> Date: Fri, 20 Jun 2025 17:30:58 +0800 Subject: [PATCH 11/30] ci:sub module checkout error --- .github/workflows/Rocky_build.yml | 18 ++++++++++++++++-- .github/workflows/debian_build.yml | 20 +++++++++++++++++--- .github/workflows/fedora_build.yml | 18 ++++++++++++++++-- 3 files changed, 49 insertions(+), 7 deletions(-) diff --git a/.github/workflows/Rocky_build.yml b/.github/workflows/Rocky_build.yml index 68e37f1..ada2cae 100644 --- a/.github/workflows/Rocky_build.yml +++ b/.github/workflows/Rocky_build.yml @@ -35,8 +35,6 @@ jobs: uses: actions/checkout@v4 with: ref: 'develop' - fetch-depth: 0 - submodules: 'recursive' - name: Checkout dependency repository (xengine) uses: actions/checkout@v4 @@ -44,6 +42,22 @@ jobs: repository: libxengine/libxengine path: libxengine + - name: sub module checkout (XEngine_OPenSource) + uses: actions/checkout@v4 + with: + repository: libxengine/XEngine_OPenSource + path: XEngine_Source/XEngine_DependLibrary/XEngine_OPenSource + - name: sub module checkout (XEngine_PhoneData) + uses: actions/checkout@v4 + with: + repository: libxengine/XEngine_PhoneData + path: XEngine_Source/XEngine_DependLibrary/XEngine_PhoneData + - name: sub module checkout (XEngine_IPMacData) + uses: actions/checkout@v4 + with: + repository: libxengine/XEngine_IPMacData + path: XEngine_Source/XEngine_DependLibrary/XEngine_IPMacData + - name: Set TERM variable run: echo "TERM=xterm" >> $GITHUB_ENV diff --git a/.github/workflows/debian_build.yml b/.github/workflows/debian_build.yml index 58f1c92..0db7586 100644 --- a/.github/workflows/debian_build.yml +++ b/.github/workflows/debian_build.yml @@ -31,8 +31,6 @@ jobs: uses: actions/checkout@v4 with: ref: 'develop' - fetch-depth: 0 - submodules: 'recursive' - name: Checkout dependency repository (xengine) uses: actions/checkout@v4 @@ -42,7 +40,23 @@ jobs: - name: Set TERM variable run: echo "TERM=xterm" >> $GITHUB_ENV - + + - name: sub module checkout (XEngine_OPenSource) + uses: actions/checkout@v4 + with: + repository: libxengine/XEngine_OPenSource + path: XEngine_Source/XEngine_DependLibrary/XEngine_OPenSource + - name: sub module checkout (XEngine_PhoneData) + uses: actions/checkout@v4 + with: + repository: libxengine/XEngine_PhoneData + path: XEngine_Source/XEngine_DependLibrary/XEngine_PhoneData + - name: sub module checkout (XEngine_IPMacData) + uses: actions/checkout@v4 + with: + repository: libxengine/XEngine_IPMacData + path: XEngine_Source/XEngine_DependLibrary/XEngine_IPMacData + - name: install system package run: | apt update -y diff --git a/.github/workflows/fedora_build.yml b/.github/workflows/fedora_build.yml index 571f0e5..30066c3 100644 --- a/.github/workflows/fedora_build.yml +++ b/.github/workflows/fedora_build.yml @@ -37,8 +37,6 @@ jobs: uses: actions/checkout@v4 with: ref: 'develop' - fetch-depth: 0 - submodules: 'recursive' - name: Checkout dependency repository (xengine) uses: actions/checkout@v4 @@ -46,6 +44,22 @@ jobs: repository: libxengine/libxengine path: libxengine + - name: sub module checkout (XEngine_OPenSource) + uses: actions/checkout@v4 + with: + repository: libxengine/XEngine_OPenSource + path: XEngine_Source/XEngine_DependLibrary/XEngine_OPenSource + - name: sub module checkout (XEngine_PhoneData) + uses: actions/checkout@v4 + with: + repository: libxengine/XEngine_PhoneData + path: XEngine_Source/XEngine_DependLibrary/XEngine_PhoneData + - name: sub module checkout (XEngine_IPMacData) + uses: actions/checkout@v4 + with: + repository: libxengine/XEngine_IPMacData + path: XEngine_Source/XEngine_DependLibrary/XEngine_IPMacData + - name: install system package run: | dnf update -y From 5d8186339b772fcab22d7ca651d32aa4858244a2 Mon Sep 17 00:00:00 2001 From: qyt <486179@qq.com> Date: Fri, 20 Jun 2025 17:42:28 +0800 Subject: [PATCH 12/30] fixed:script file path incorrect --- XEngine_Release/copydb.bat | 8 ++++---- XEngine_Release/copydb.sh | 8 ++++---- 2 files changed, 8 insertions(+), 8 deletions(-) diff --git a/XEngine_Release/copydb.bat b/XEngine_Release/copydb.bat index 67c94c7..fb1a38d 100644 --- a/XEngine_Release/copydb.bat +++ b/XEngine_Release/copydb.bat @@ -1,4 +1,4 @@ -copy /y "..\XEngine_Source\XEngine_DBDepend\XEngine_IPMacData\XEngine_DBFile\GeoLite2-ASN.mmdb" "./XEngine_DBFile" -copy /y "..\XEngine_Source\XEngine_DBDepend\XEngine_IPMacData\XEngine_DBFile\GeoLite2-City.mmdb" "./XEngine_DBFile" -copy /y "..\XEngine_Source\XEngine_DBDepend\XEngine_IPMacData\XEngine_DBFile\macaddr.xdb" "./XEngine_DBFile" -copy /y "..\XEngine_Source\XEngine_DBDepend\XEngine_PhoneData\Data\phone_utf.dat" "./XEngine_DBFile/phone.xdb" \ No newline at end of file +copy /y "..\XEngine_Source\XEngine_DependLibrary\XEngine_IPMacData\XEngine_DBFile\GeoLite2-ASN.mmdb" "./XEngine_DBFile" +copy /y "..\XEngine_Source\XEngine_DependLibrary\XEngine_IPMacData\XEngine_DBFile\GeoLite2-City.mmdb" "./XEngine_DBFile" +copy /y "..\XEngine_Source\XEngine_DependLibrary\XEngine_IPMacData\XEngine_DBFile\macaddr.xdb" "./XEngine_DBFile" +copy /y "..\XEngine_Source\XEngine_DependLibrary\XEngine_PhoneData\Data\phone_utf.dat" "./XEngine_DBFile/phone.xdb" \ No newline at end of file diff --git a/XEngine_Release/copydb.sh b/XEngine_Release/copydb.sh index 7cb76d6..2e0b417 100644 --- a/XEngine_Release/copydb.sh +++ b/XEngine_Release/copydb.sh @@ -1,6 +1,6 @@ #!/bin/bash -cp -f ../XEngine_Source/XEngine_DBDepend/XEngine_IPMacData/XEngine_DBFile/GeoLite2-ASN.mmdb ./XEngine_DBFile/ -cp -f ../XEngine_Source/XEngine_DBDepend/XEngine_IPMacData/XEngine_DBFile/GeoLite2-City.mmdb ./XEngine_DBFile/ -cp -f ../XEngine_Source/XEngine_DBDepend/XEngine_IPMacData/XEngine_DBFile/macaddr.xdb ./XEngine_DBFile/ -cp -f ../XEngine_Source/XEngine_DBDepend/XEngine_PhoneData/Data/phone_utf.dat ./XEngine_DBFile/phone.xdb \ No newline at end of file +cp -f ../XEngine_Source/XEngine_DependLibrary/XEngine_IPMacData/XEngine_DBFile/GeoLite2-ASN.mmdb ./XEngine_DBFile/ +cp -f ../XEngine_Source/XEngine_DependLibrary/XEngine_IPMacData/XEngine_DBFile/GeoLite2-City.mmdb ./XEngine_DBFile/ +cp -f ../XEngine_Source/XEngine_DependLibrary/XEngine_IPMacData/XEngine_DBFile/macaddr.xdb ./XEngine_DBFile/ +cp -f ../XEngine_Source/XEngine_DependLibrary/XEngine_PhoneData/Data/phone_utf.dat ./XEngine_DBFile/phone.xdb \ No newline at end of file From b714bfde1c9e24f70b8120b75283735baf37e9b9 Mon Sep 17 00:00:00 2001 From: qyt <486179@qq.com> Date: Mon, 23 Jun 2025 10:33:03 +0800 Subject: [PATCH 13/30] modify:memory buffer warn and improved --- .../ModuleDatabase_ShortLink.cpp | 6 ++-- .../ModuleDatabase_XLog.cpp | 2 +- .../ModuleProtocol_Packet.cpp | 6 ++-- XEngine_Source/XEngine_UserProtocol.h | 34 +++++++++---------- 4 files changed, 24 insertions(+), 24 deletions(-) diff --git a/XEngine_Source/XEngine_ModuleDatabase/ModuleDatabase_ShortLink/ModuleDatabase_ShortLink.cpp b/XEngine_Source/XEngine_ModuleDatabase/ModuleDatabase_ShortLink/ModuleDatabase_ShortLink.cpp index 9a75e4d..d840673 100644 --- a/XEngine_Source/XEngine_ModuleDatabase/ModuleDatabase_ShortLink/ModuleDatabase_ShortLink.cpp +++ b/XEngine_Source/XEngine_ModuleDatabase/ModuleDatabase_ShortLink/ModuleDatabase_ShortLink.cpp @@ -92,10 +92,10 @@ bool CModuleDatabase_ShortLink::ModuleDatabase_ShortLink_Insert(XENGINE_SHORTLIN DBModule_dwErrorCode = ERROR_APISERVICE_MODULE_DATABASE_PARAMENT; return false; } - XCHAR tszSQLStatement[2024]; + XCHAR tszSQLStatement[8192]; memset(tszSQLStatement, '\0', sizeof(tszSQLStatement)); - _xstprintf(tszSQLStatement, _X("INSERT INTO `XEngine_ShortLink` (tszFullUrl,tszShortUrl,tszKeyUrl,tszMapUrl,tszCreateTime) VALUES('%s','%s','%s','%s','%s')"), pSt_SLinkInfo->tszFullUrl, pSt_SLinkInfo->tszShotUrl, pSt_SLinkInfo->tszKeyUrl, pSt_SLinkInfo->tszMapUrl, pSt_SLinkInfo->tszCreateTime); + _xsntprintf(tszSQLStatement, sizeof(tszSQLStatement), _X("INSERT INTO `XEngine_ShortLink` (tszFullUrl,tszShortUrl,tszKeyUrl,tszMapUrl,tszCreateTime) VALUES('%s','%s','%s','%s','%s')"), pSt_SLinkInfo->tszFullUrl, pSt_SLinkInfo->tszShotUrl, pSt_SLinkInfo->tszKeyUrl, pSt_SLinkInfo->tszMapUrl, pSt_SLinkInfo->tszCreateTime); if (!DataBase_MySQL_Execute(xhDBSQL, tszSQLStatement)) { DBModule_IsErrorOccur = true; @@ -135,7 +135,7 @@ bool CModuleDatabase_ShortLink::ModuleDatabase_ShortLink_Query(XENGINE_SHORTLINK XCHAR tszSQLStatement[1024]; memset(tszSQLStatement, '\0', sizeof(tszSQLStatement)); //名称为,消息名为必填 - _xstprintf(tszSQLStatement, _X("SELECT * FROM `XEngine_ShortLink` WHERE tszMapUrl = '%s'"), pSt_SLinkInfo->tszMapUrl); + _xsntprintf(tszSQLStatement, sizeof(tszSQLStatement), _X("SELECT * FROM `XEngine_ShortLink` WHERE tszMapUrl = '%s'"), pSt_SLinkInfo->tszMapUrl); if (!DataBase_MySQL_ExecuteQuery(xhDBSQL, &xhTable, tszSQLStatement, &nllLine, &nllRow)) { DBModule_IsErrorOccur = true; diff --git a/XEngine_Source/XEngine_ModuleDatabase/ModuleDatabase_XLog/ModuleDatabase_XLog.cpp b/XEngine_Source/XEngine_ModuleDatabase/ModuleDatabase_XLog/ModuleDatabase_XLog.cpp index 44e1740..57e56de 100644 --- a/XEngine_Source/XEngine_ModuleDatabase/ModuleDatabase_XLog/ModuleDatabase_XLog.cpp +++ b/XEngine_Source/XEngine_ModuleDatabase/ModuleDatabase_XLog/ModuleDatabase_XLog.cpp @@ -147,7 +147,7 @@ bool CModuleDatabase_XLog::ModuleDatabase_XLog_Insert(XENGINE_XLOGINFO* pSt_XLog XCHAR tszSQLStatement[11240]; memset(tszSQLStatement, '\0', sizeof(tszSQLStatement)); - _xstprintf(tszSQLStatement, _X("INSERT INTO `%s` (tszFileName,tszFuncName,nLogLine,nLogLevel,tszLogBuffer,tszLogTime) VALUES('%s','%s',%d,%d,'%s','%s')"), pSt_XLogInfo->tszTableName, pSt_XLogInfo->st_ProtocolLog.tszFileName, pSt_XLogInfo->st_ProtocolLog.tszFuncName, pSt_XLogInfo->st_ProtocolLog.nLogLine, pSt_XLogInfo->st_ProtocolLog.nLogLevel, pSt_XLogInfo->tszLogBuffer, pSt_XLogInfo->st_ProtocolLog.tszLogTimer); + _xsntprintf(tszSQLStatement, sizeof(tszSQLStatement), _X("INSERT INTO `%s` (tszFileName,tszFuncName,nLogLine,nLogLevel,tszLogBuffer,tszLogTime) VALUES('%s','%s',%d,%d,'%s','%s')"), pSt_XLogInfo->tszTableName, pSt_XLogInfo->st_ProtocolLog.tszFileName, pSt_XLogInfo->st_ProtocolLog.tszFuncName, pSt_XLogInfo->st_ProtocolLog.nLogLine, pSt_XLogInfo->st_ProtocolLog.nLogLevel, pSt_XLogInfo->tszLogBuffer, pSt_XLogInfo->st_ProtocolLog.tszLogTimer); #ifdef _MSC_BUILD XCHAR tszUTFStr[10240] = {}; diff --git a/XEngine_Source/XEngine_ModuleProtocol/ModuleProtocol_Packet/ModuleProtocol_Packet.cpp b/XEngine_Source/XEngine_ModuleProtocol/ModuleProtocol_Packet/ModuleProtocol_Packet.cpp index 3f0cc36..3f91d9f 100644 --- a/XEngine_Source/XEngine_ModuleProtocol/ModuleProtocol_Packet/ModuleProtocol_Packet.cpp +++ b/XEngine_Source/XEngine_ModuleProtocol/ModuleProtocol_Packet/ModuleProtocol_Packet.cpp @@ -1321,9 +1321,9 @@ bool CModuleProtocol_Packet::ModuleProtocol_Packet_HardWare(XCHAR* ptszHWInfo, i } int nDiskNumber = 0; XCHAR** pptszRootName; - XCHAR tszOSName[XPATH_MAX]; - XCHAR tszOSVersion[XPATH_MAX]; - XCHAR tszOSBuild[XPATH_MAX]; + XCHAR tszOSName[256]; + XCHAR tszOSVersion[256]; + XCHAR tszOSBuild[256]; XLONG nOSPro = 0; XCHAR tszOSInfo[2048]; SYSTEMAPI_DISK_INFOMATION st_DiskInfo; diff --git a/XEngine_Source/XEngine_UserProtocol.h b/XEngine_Source/XEngine_UserProtocol.h index c672642..72dff6b 100644 --- a/XEngine_Source/XEngine_UserProtocol.h +++ b/XEngine_Source/XEngine_UserProtocol.h @@ -126,9 +126,9 @@ typedef struct //银行卡 typedef struct { - XCHAR tszBankNumber[XPATH_MAX]; //银行卡号 - XCHAR tszBankName[XPATH_MAX]; //银行卡名称 - XCHAR tszBankAbridge[XPATH_MAX]; //银行卡缩写 + XCHAR tszBankNumber[128]; //银行卡号 + XCHAR tszBankName[128]; //银行卡名称 + XCHAR tszBankAbridge[128]; //银行卡缩写 ENUM_XENGINE_APISERVICE_BANK_TYPE enBankType; }XENGINE_BANKINFO; //语言转换 @@ -166,7 +166,7 @@ typedef struct typedef struct { XENGINE_PROTOCOL_XLOG st_ProtocolLog; - XCHAR tszLogBuffer[10240]; + XCHAR tszLogBuffer[8192]; XCHAR tszTableName[128]; XCHAR tszTimeStart[128]; XCHAR tszTimeEnd[128]; @@ -202,7 +202,7 @@ typedef struct { MODULEHELP_SOCKETTEST_RECONNECT st_SocketConn; MODULEHELP_SOCKETTEST_DATAS st_SocketData; - XCHAR tszAPIUrl[XPATH_MAX]; + XCHAR tszAPIUrl[256]; XNETHANDLE xhToken; int nType; //0,全部报告,其他结束统计报告 bool bTCP; @@ -211,11 +211,11 @@ typedef struct //短连接 typedef struct { - XCHAR tszFullUrl[XPATH_MAX]; - XCHAR tszShotUrl[XPATH_MAX]; - XCHAR tszKeyUrl[XPATH_MAX]; - XCHAR tszMapUrl[XPATH_MAX]; - XCHAR tszCvtUrl[XPATH_MAX]; + XCHAR tszFullUrl[256]; + XCHAR tszShotUrl[256]; + XCHAR tszKeyUrl[256]; + XCHAR tszMapUrl[256]; + XCHAR tszCvtUrl[256]; XCHAR tszCreateTime[64]; int nLength; int nID; @@ -224,11 +224,11 @@ typedef struct typedef struct { XCHAR tszMachineText[2048]; - XCHAR tszServiceName[XPATH_MAX]; - XCHAR tszMachineName[XPATH_MAX]; - XCHAR tszMachineUser[XPATH_MAX]; - XCHAR tszMachineCode[XPATH_MAX]; - XCHAR tszMachineSystem[XPATH_MAX]; + XCHAR tszServiceName[256]; + XCHAR tszMachineName[256]; + XCHAR tszMachineUser[256]; + XCHAR tszMachineCode[256]; + XCHAR tszMachineSystem[256]; XCHAR tszLastTime[64]; XCHAR tszCreateTime[64]; __int64x nTimeNumber; @@ -237,8 +237,8 @@ typedef struct //敏感词过滤器 typedef struct { - XCHAR tszWordsFrom[XPATH_MAX]; - XCHAR tszWordsTo[XPATH_MAX]; + XCHAR tszWordsFrom[256]; + XCHAR tszWordsTo[256]; XBYTE nLevel; //过滤级别,0替换,1删除,2禁止 }XENGINE_WORDFILTER; //图像基本属性 From a190ce5283288a76788e6a1c2f85808c5f7d1c6d Mon Sep 17 00:00:00 2001 From: qyt <486179@qq.com> Date: Mon, 23 Jun 2025 14:32:50 +0800 Subject: [PATCH 14/30] modify:Adjust the information acquisition and storage method --- .../XEngine_DependLibrary/XEngine_OPenSource | 2 +- .../ModuleDatabase_Machine.cpp | 26 +- .../XEngine_ModuleProtocol/Makefile | 2 +- .../ModuleProtocol_Define.h | 38 --- .../ModuleProtocol_Packet.cpp | 253 +----------------- .../ModuleProtocol_Packet.h | 2 - .../ModuleProtocol_Parse.cpp | 17 +- .../XEngine_ModuleProtocol.def | 2 - XEngine_Source/XEngine_ModuleProtocol/pch.cpp | 8 - XEngine_Source/XEngine_ModuleProtocol/pch.h | 6 - .../XEngine_TaskPost/TaskPost_BackService.cpp | 4 +- XEngine_Source/XEngine_UserProtocol.h | 3 +- 12 files changed, 40 insertions(+), 323 deletions(-) diff --git a/XEngine_Source/XEngine_DependLibrary/XEngine_OPenSource b/XEngine_Source/XEngine_DependLibrary/XEngine_OPenSource index 7a6b18a..ff00013 160000 --- a/XEngine_Source/XEngine_DependLibrary/XEngine_OPenSource +++ b/XEngine_Source/XEngine_DependLibrary/XEngine_OPenSource @@ -1 +1 @@ -Subproject commit 7a6b18a4e50d6042e2a1147cf5d9f60757c09300 +Subproject commit ff000130f5a7f702371d1555de1e216a27f2e321 diff --git a/XEngine_Source/XEngine_ModuleDatabase/ModuleDatabase_Machine/ModuleDatabase_Machine.cpp b/XEngine_Source/XEngine_ModuleDatabase/ModuleDatabase_Machine/ModuleDatabase_Machine.cpp index 248ded4..28366af 100644 --- a/XEngine_Source/XEngine_ModuleDatabase/ModuleDatabase_Machine/ModuleDatabase_Machine.cpp +++ b/XEngine_Source/XEngine_ModuleDatabase/ModuleDatabase_Machine/ModuleDatabase_Machine.cpp @@ -95,7 +95,7 @@ bool CModuleDatabase_Machine::ModuleDatabase_Machine_Insert(XENGINE_MACHINEINFO* XCHAR tszSQLStatement[4096]; memset(tszSQLStatement, '\0', sizeof(tszSQLStatement)); - _xstprintf(tszSQLStatement, _X("INSERT INTO `XEngine_MachineList` (tszServiceName,tszMachineName,tszMachineUser,tszMachineSystem,tszMachineText,nTimeNumber,tszCreateTime) VALUES('%s','%s','%s','%s','%s',%lld,now())"), pSt_MachineInfo->tszServiceName, pSt_MachineInfo->tszMachineName, pSt_MachineInfo->tszMachineUser, pSt_MachineInfo->tszMachineSystem, pSt_MachineInfo->tszMachineText, pSt_MachineInfo->nTimeNumber); + _xstprintf(tszSQLStatement, _X("INSERT INTO `XEngine_MachineList` (tszServiceName,tszMachineName,tszMachineUser,tszMachineSystem,tszMachineSoftware,tszMachineHardware,nTimeNumber,tszCreateTime) VALUES('%s','%s','%s','%s','%s','%s',%lld,now())"), pSt_MachineInfo->tszServiceName, pSt_MachineInfo->tszMachineName, pSt_MachineInfo->tszMachineUser, pSt_MachineInfo->tszMachineSystem, pSt_MachineInfo->tszMachineSoftware, pSt_MachineInfo->tszMachineHardware, pSt_MachineInfo->nTimeNumber); #ifdef _MSC_BUILD XCHAR tszUTFStr[4096] = {}; int nSLen = _tcsxlen(tszSQLStatement); @@ -181,19 +181,23 @@ bool CModuleDatabase_Machine::ModuleDatabase_Machine_Query(XENGINE_MACHINEINFO* } if (NULL != pptszResult[5]) { - _tcsxcpy(pSt_MachineInfo->tszMachineText, pptszResult[5]); + _tcsxcpy(pSt_MachineInfo->tszMachineSoftware, pptszResult[5]); } if (NULL != pptszResult[6]) { - pSt_MachineInfo->nTimeNumber = _ttxoll(pptszResult[6]); + _tcsxcpy(pSt_MachineInfo->tszMachineHardware, pptszResult[6]); } if (NULL != pptszResult[7]) { - _tcsxcpy(pSt_MachineInfo->tszLastTime, pptszResult[7]); + pSt_MachineInfo->nTimeNumber = _ttxoll(pptszResult[7]); } if (NULL != pptszResult[8]) { - _tcsxcpy(pSt_MachineInfo->tszCreateTime, pptszResult[8]); + _tcsxcpy(pSt_MachineInfo->tszLastTime, pptszResult[8]); + } + if (NULL != pptszResult[9]) + { + _tcsxcpy(pSt_MachineInfo->tszCreateTime, pptszResult[9]); } } DataBase_MySQL_FreeResult(xhDBSQL, xhTable); @@ -342,19 +346,23 @@ bool CModuleDatabase_Machine::ModuleDatabase_Machine_List(XENGINE_MACHINEINFO*** } if (NULL != pptszResult[5]) { - _tcsxcpy((*pppSt_MachineInfo)[i]->tszMachineText, pptszResult[5]); + _tcsxcpy((*pppSt_MachineInfo)[i]->tszMachineSoftware, pptszResult[5]); } if (NULL != pptszResult[6]) { - (*pppSt_MachineInfo)[i]->nTimeNumber = _ttxoll(pptszResult[6]); + _tcsxcpy((*pppSt_MachineInfo)[i]->tszMachineHardware, pptszResult[6]); } if (NULL != pptszResult[7]) { - _tcsxcpy((*pppSt_MachineInfo)[i]->tszLastTime, pptszResult[7]); + (*pppSt_MachineInfo)[i]->nTimeNumber = _ttxoll(pptszResult[7]); } if (NULL != pptszResult[8]) { - _tcsxcpy((*pppSt_MachineInfo)[i]->tszCreateTime, pptszResult[8]); + _tcsxcpy((*pppSt_MachineInfo)[i]->tszLastTime, pptszResult[8]); + } + if (NULL != pptszResult[9]) + { + _tcsxcpy((*pppSt_MachineInfo)[i]->tszCreateTime, pptszResult[9]); } } DataBase_MySQL_FreeResult(xhDBSQL, xhTable); diff --git a/XEngine_Source/XEngine_ModuleProtocol/Makefile b/XEngine_Source/XEngine_ModuleProtocol/Makefile index 7a3955a..5d60fe2 100644 --- a/XEngine_Source/XEngine_ModuleProtocol/Makefile +++ b/XEngine_Source/XEngine_ModuleProtocol/Makefile @@ -4,7 +4,7 @@ FILEEXT = LIBFLAG = LOADHDR = -I ./ -I ../XEngine_DependLibrary/XEngine_OPenSource/XEngine_Module/jsoncpp LOADSO = -L ../XEngine_DependLibrary/XEngine_OPenSource/XEngine_Module/jsoncpp -LIB = -lXEngine_BaseLib -lNetHelp_XSocket -lXEngine_SystemApi -lNetHelp_APIAddr -ljsoncpp +LIB = -lXEngine_BaseLib -lNetHelp_APIAddr -ljsoncpp LIBEX = OBJECTS = ModuleProtocol_Packet.o ModuleProtocol_Parse.o pch.o diff --git a/XEngine_Source/XEngine_ModuleProtocol/ModuleProtocol_Define.h b/XEngine_Source/XEngine_ModuleProtocol/ModuleProtocol_Define.h index 4dc3508..83b2239 100644 --- a/XEngine_Source/XEngine_ModuleProtocol/ModuleProtocol_Define.h +++ b/XEngine_Source/XEngine_ModuleProtocol/ModuleProtocol_Define.h @@ -724,44 +724,6 @@ extern "C" bool ModuleProtocol_Packet_EnumDevice(XCHAR* ptszMsgBuffer, int* pInt *********************************************************************/ extern "C" bool ModuleProtocol_Packet_ListFile(XCHAR* ptszMsgBuffer, int* pInt_MsgLen, XCHAR*** pppszFileList, int nListCount); /******************************************************************** -函数名称:ModuleProtocol_Packet_HardWare -函数功能:获取硬件信息 - 参数.一:ptszHWInfo - In/Out:Out - 类型:字符指针 - 可空:N - 意思:导出获取到的数据,这个数据是JSON格式 - 参数.二:pInt_Len - In/Out:Out - 类型:整数型指针 - 可空:N - 意思:导出数据的长度 -返回值 - 类型:逻辑型 - 意思:是否成功 -备注: -*********************************************************************/ -extern "C" bool ModuleProtocol_Packet_HardWare(XCHAR* ptszHWInfo, int* pInt_Len); -/******************************************************************** -函数名称:XControl_Info_SoftWare -函数功能:获取软件系统信息 - 参数.一:ptszSWInfo - In/Out:Out - 类型:字符指针 - 可空:N - 意思:导出系统信息JSON结构 - 参数.二:pInt_Len - In/Out:Out - 类型:整数型指针 - 可空:N - 意思:导出系统信息长度 -返回值 - 类型:逻辑型 - 意思:是否成功 -备注: -*********************************************************************/ -extern "C" bool ModuleProtocol_Packet_SoftWare(XCHAR* ptszSWInfo, int* pInt_Len); -/******************************************************************** 函数名称:ModuleProtocol_Packet_Machine 函数功能:机器信息列表打包函数 参数.一:ptszMsgBuffer diff --git a/XEngine_Source/XEngine_ModuleProtocol/ModuleProtocol_Packet/ModuleProtocol_Packet.cpp b/XEngine_Source/XEngine_ModuleProtocol/ModuleProtocol_Packet/ModuleProtocol_Packet.cpp index 3f91d9f..e6fe95f 100644 --- a/XEngine_Source/XEngine_ModuleProtocol/ModuleProtocol_Packet/ModuleProtocol_Packet.cpp +++ b/XEngine_Source/XEngine_ModuleProtocol/ModuleProtocol_Packet/ModuleProtocol_Packet.cpp @@ -1292,256 +1292,6 @@ bool CModuleProtocol_Packet::ModuleProtocol_Packet_ListFile(XCHAR* ptszMsgBuffer return true; } /******************************************************************** -函数名称:ModuleProtocol_Packet_HardWare -函数功能:获取硬件信息 - 参数.一:ptszHWInfo - In/Out:Out - 类型:字符指针 - 可空:N - 意思:导出获取到的数据,这个数据是JSON格式 - 参数.二:pInt_Len - In/Out:Out - 类型:整数型指针 - 可空:N - 意思:导出数据的长度 -返回值 - 类型:逻辑型 - 意思:是否成功 -备注: -*********************************************************************/ -bool CModuleProtocol_Packet::ModuleProtocol_Packet_HardWare(XCHAR* ptszHWInfo, int* pInt_Len) -{ - ModuleProtocol_IsErrorOccur = false; - - if ((NULL == ptszHWInfo) || (NULL == pInt_Len)) - { - ModuleProtocol_IsErrorOccur = true; - ModuleProtocol_dwErrorCode = ERROR_XENGINE_APISERVICE_MODULE_PROTOCOL_PARSE_PARAMENT; - return false; - } - int nDiskNumber = 0; - XCHAR** pptszRootName; - XCHAR tszOSName[256]; - XCHAR tszOSVersion[256]; - XCHAR tszOSBuild[256]; - XLONG nOSPro = 0; - XCHAR tszOSInfo[2048]; - SYSTEMAPI_DISK_INFOMATION st_DiskInfo; - SYSTEMAPI_CPU_INFOMATION st_CPUInfo; - SYSTEMAPI_MEMORY_INFOMATION st_MemoryInfo; - SYSTEMAPI_SERIAL_INFOMATION st_SDKSerial; - - memset(tszOSName, '\0', sizeof(tszOSName)); - memset(tszOSVersion, '\0', sizeof(tszOSVersion)); - memset(tszOSBuild, '\0', sizeof(tszOSBuild)); - memset(tszOSInfo, '\0', sizeof(tszOSInfo)); - memset(&st_MemoryInfo, '\0', sizeof(SYSTEMAPI_MEMORY_INFOMATION)); - memset(&st_CPUInfo, '\0', sizeof(SYSTEMAPI_CPU_INFOMATION)); - memset(&st_DiskInfo, '\0', sizeof(SYSTEMAPI_DISK_INFOMATION)); - memset(&st_SDKSerial, '\0', sizeof(SYSTEMAPI_SERIAL_INFOMATION)); - - if (!SystemApi_HardWare_GetDiskNumber(&pptszRootName, &nDiskNumber)) - { - ModuleProtocol_IsErrorOccur = true; - ModuleProtocol_dwErrorCode = SystemApi_GetLastError(); - return false; - } - BaseLib_Memory_Free((XPPPMEM)&pptszRootName, nDiskNumber); - - XCHAR tszDriveStr[XPATH_MAX]; - memset(tszDriveStr, '\0', XPATH_MAX); - -#ifdef _MSC_BUILD - GetLogicalDriveStringsA(XPATH_MAX, tszDriveStr); -#else - LPCXSTR lpszDir = _X("/"); - strcpy(tszDriveStr, lpszDir); -#endif - - if (!SystemApi_HardWare_GetDiskInfomation(tszDriveStr, &st_DiskInfo, XENGINE_SYSTEMSDK_API_SYSTEM_SIZE_MB)) - { - ModuleProtocol_IsErrorOccur = true; - ModuleProtocol_dwErrorCode = SystemApi_GetLastError(); - return false; - } - if (!SystemApi_HardWare_GetCpuInfomation(&st_CPUInfo)) - { - ModuleProtocol_IsErrorOccur = true; - ModuleProtocol_dwErrorCode = SystemApi_GetLastError(); - return false; - } - if (!SystemApi_System_GetMemoryUsage(&st_MemoryInfo, XENGINE_SYSTEMSDK_API_SYSTEM_SIZE_MB)) - { - ModuleProtocol_IsErrorOccur = true; - ModuleProtocol_dwErrorCode = SystemApi_GetLastError(); - return false; - } - if (!SystemApi_HardWare_GetSerial(&st_SDKSerial)) - { - ModuleProtocol_IsErrorOccur = true; - ModuleProtocol_dwErrorCode = SystemApi_GetLastError(); - return false; - } - if (!SystemApi_System_GetSystemVer(tszOSName, tszOSVersion, tszOSBuild, &nOSPro)) - { - ModuleProtocol_IsErrorOccur = true; - ModuleProtocol_dwErrorCode = SystemApi_GetLastError(); - return false; - } - - Json::Value st_JsonRoot; - Json::Value st_JsonDisk; - Json::Value st_JsonCpu; - Json::Value st_JsonSerial; - Json::Value st_JsonMemory; - Json::Value st_JsonNetCard; - - st_JsonDisk["DiskNumber"] = nDiskNumber; - st_JsonDisk["DiskFree"] = (Json::UInt64)st_DiskInfo.dwDiskFree; - st_JsonDisk["DiskTotal"] = (Json::UInt64)st_DiskInfo.dwDiskTotal; - st_JsonDisk["DiskName"] = tszDriveStr; - - st_JsonCpu["CpuNumber"] = st_CPUInfo.nCPUNumber; - st_JsonCpu["CpuSpeed"] = st_CPUInfo.nCPUSpeed; - st_JsonCpu["CpuName"] = st_CPUInfo.tszCPUName; - - st_JsonMemory["MemoryFree"] = (Json::UInt64)st_MemoryInfo.dwMemory_Free; - st_JsonMemory["MemoryTotal"] = (Json::UInt64)st_MemoryInfo.dwMemory_Total; - - st_JsonSerial["DiskSerial"] = st_SDKSerial.tszDiskSerial; - st_JsonSerial["CpuSerial"] = st_SDKSerial.tszCPUSerial; - st_JsonSerial["BoardSerial"] = st_SDKSerial.tszBoardSerial; - st_JsonSerial["SystemSerial"] = st_SDKSerial.tszSystemSerial; - - int nListCount = 0; - XSOCKET_CARDINFO** ppSt_ListIFInfo; - XSocket_Api_GetCardInfo(&ppSt_ListIFInfo, &nListCount); - for (int i = 0; i < nListCount; i++) - { - Json::Value st_JsonIPAddr; - st_JsonIPAddr["tszIFName"] = ppSt_ListIFInfo[i]->tszIFName; - st_JsonIPAddr["tszIPAddr"] = ppSt_ListIFInfo[i]->tszIPAddr; - st_JsonIPAddr["tszBroadAddr"] = ppSt_ListIFInfo[i]->tszBroadAddr; - st_JsonIPAddr["tszDnsAddr"] = ppSt_ListIFInfo[i]->tszDnsAddr; - st_JsonIPAddr["tszMacAddr"] = ppSt_ListIFInfo[i]->tszMacAddr; - st_JsonNetCard.append(st_JsonIPAddr); - } - BaseLib_Memory_Free((XPPPMEM)&ppSt_ListIFInfo, nListCount); - - st_JsonRoot["Disk"] = st_JsonDisk; - st_JsonRoot["Cpu"] = st_JsonCpu; - st_JsonRoot["Memory"] = st_JsonMemory; - st_JsonRoot["Serial"] = st_JsonSerial; - st_JsonRoot["NetCard"] = st_JsonNetCard; - - sprintf(tszOSInfo, "%s %s %s %lu", tszOSName, tszOSVersion, tszOSBuild, nOSPro); - st_JsonRoot["Platfrom"] = tszOSInfo; - - *pInt_Len = st_JsonRoot.toStyledString().length(); - memcpy(ptszHWInfo, st_JsonRoot.toStyledString().c_str(), *pInt_Len); - - return true; -} -/******************************************************************** -函数名称:XControl_Info_SoftWare -函数功能:获取软件系统信息 - 参数.一:ptszSWInfo - In/Out:Out - 类型:字符指针 - 可空:N - 意思:导出系统信息JSON结构 - 参数.二:pInt_Len - In/Out:Out - 类型:整数型指针 - 可空:N - 意思:导出系统信息长度 -返回值 - 类型:逻辑型 - 意思:是否成功 -备注: -*********************************************************************/ -bool CModuleProtocol_Packet::ModuleProtocol_Packet_SoftWare(XCHAR* ptszSWInfo, int* pInt_Len) -{ - ModuleProtocol_IsErrorOccur = false; - - if ((NULL == ptszSWInfo) || (NULL == pInt_Len)) - { - ModuleProtocol_IsErrorOccur = true; - ModuleProtocol_dwErrorCode = ERROR_XENGINE_APISERVICE_MODULE_PROTOCOL_PARSE_PARAMENT; - return false; - } - int nProcessCount; - XLONG nOSProcessor; - XCHAR tszOSBuild[XPATH_MAX]; - XCHAR tszOSVersion[XPATH_MAX]; - XCHAR tszOSInfo[XPATH_MAX]; - XCHAR tszUPTime[XPATH_MAX]; - XCHAR tszOSUser[XPATH_MAX]; - XCHAR tszServicePacket[XPATH_MAX]; - XENGINE_LIBTIME st_LibTimer; - - memset(tszOSBuild, '\0', XPATH_MAX); - memset(tszOSVersion, '\0', XPATH_MAX); - memset(tszOSInfo, '\0', XPATH_MAX); - memset(tszUPTime, '\0', XPATH_MAX); - memset(tszOSUser, '\0', XPATH_MAX); - memset(tszServicePacket, '\0', XPATH_MAX); - memset(&st_LibTimer, '\0', sizeof(XENGINE_LIBTIME)); - -#ifdef _MSC_BUILD - XLONG dwMaxSize = XPATH_MAX; - if (!GetComputerNameA(tszOSUser, &dwMaxSize)) - { - ModuleProtocol_IsErrorOccur = true; - ModuleProtocol_dwErrorCode = ERROR_XENGINE_APISERVICE_MODULE_PROTOCOL_PARSE_GETNAME; - return false; - } -#else - struct passwd* pSt_Passwd = NULL; - pSt_Passwd = getpwuid(getuid()); - if (NULL == pSt_Passwd) - { - ModuleProtocol_IsErrorOccur = true; - ModuleProtocol_dwErrorCode = ERROR_XENGINE_APISERVICE_MODULE_PROTOCOL_PARSE_GETNAME; - return false; - } - strcpy(tszOSUser, pSt_Passwd->pw_name); -#endif - if (!SystemApi_System_GetSystemVer(tszOSInfo, tszOSVersion, tszOSBuild, &nOSProcessor)) - { - ModuleProtocol_IsErrorOccur = true; - ModuleProtocol_dwErrorCode = SystemApi_GetLastError(); - return false; - } - if (!SystemApi_System_GetProcessCount(&nProcessCount)) - { - ModuleProtocol_IsErrorOccur = true; - ModuleProtocol_dwErrorCode = SystemApi_GetLastError(); - return false; - } - if (!SystemApi_System_GetUpTime(&st_LibTimer)) - { - ModuleProtocol_IsErrorOccur = true; - ModuleProtocol_dwErrorCode = SystemApi_GetLastError(); - return false; - } - sprintf(tszUPTime, "%04d-%02d-%02d %02d:%02d:%02d", st_LibTimer.wYear, st_LibTimer.wMonth, st_LibTimer.wDay, st_LibTimer.wHour, st_LibTimer.wMinute, st_LibTimer.wSecond); - - Json::Value st_JsonRoot; - Json::Value st_JsonSystem; - - st_JsonSystem["OSUser"] = tszOSUser; - st_JsonSystem["OSUPTime"] = tszUPTime; - st_JsonSystem["OSVersion"] = tszOSInfo; - st_JsonSystem["OSProcessCount"] = nProcessCount; - st_JsonRoot["OSInfo"] = st_JsonSystem; - - *pInt_Len = st_JsonRoot.toStyledString().length(); - memcpy(ptszSWInfo, st_JsonRoot.toStyledString().c_str(), *pInt_Len); - - return true; -} -/******************************************************************** 函数名称:ModuleProtocol_Packet_Machine 函数功能:机器信息列表打包函数 参数.一:ptszMsgBuffer @@ -1587,7 +1337,8 @@ bool CModuleProtocol_Packet::ModuleProtocol_Packet_Machine(XCHAR* ptszMSGBuffer, { Json::Value st_JsonObject; - st_JsonObject["tszMachineText"] = (*pppSt_MachineList)[i]->tszMachineText; + st_JsonObject["tszMachineSoftware"] = (*pppSt_MachineList)[i]->tszMachineSoftware; + st_JsonObject["tszMachineHardware"] = (*pppSt_MachineList)[i]->tszMachineHardware; st_JsonObject["tszMachineName"] = (*pppSt_MachineList)[i]->tszMachineName; st_JsonObject["tszMachineUser"] = (*pppSt_MachineList)[i]->tszMachineUser; st_JsonObject["tszMachineCode"] = (*pppSt_MachineList)[i]->tszMachineCode; diff --git a/XEngine_Source/XEngine_ModuleProtocol/ModuleProtocol_Packet/ModuleProtocol_Packet.h b/XEngine_Source/XEngine_ModuleProtocol/ModuleProtocol_Packet/ModuleProtocol_Packet.h index 9e78d49..66060cb 100644 --- a/XEngine_Source/XEngine_ModuleProtocol/ModuleProtocol_Packet/ModuleProtocol_Packet.h +++ b/XEngine_Source/XEngine_ModuleProtocol/ModuleProtocol_Packet/ModuleProtocol_Packet.h @@ -42,8 +42,6 @@ class CModuleProtocol_Packet bool ModuleProtocol_Packet_ImageText(XCHAR* ptszMsgBuffer, int* pInt_MsgLen, XCHAR*** pppListStr, int nListCount); bool ModuleProtocol_Packet_EnumDevice(XCHAR* ptszMsgBuffer, int* pInt_MsgLen, AVHELP_DEVICEINFO*** pppSt_AudioList, AVHELP_DEVICEINFO*** pppSt_VideoList, int nACount, int nVCount); bool ModuleProtocol_Packet_ListFile(XCHAR* ptszMsgBuffer, int* pInt_MsgLen, XCHAR*** pppszFileList, int nListCount); - bool ModuleProtocol_Packet_HardWare(XCHAR* ptszHWInfo, int* pInt_Len); - bool ModuleProtocol_Packet_SoftWare(XCHAR* ptszSWInfo, int* pInt_Len); bool ModuleProtocol_Packet_Machine(XCHAR* ptszMSGBuffer, int* pInt_MSGLen, XENGINE_MACHINEINFO*** pppSt_MachineList, int nListCount); bool ModuleProtocol_Packet_OilInfo(XCHAR* ptszMSGBuffer, int* pInt_MSGLen, XENGINE_OILINFO* pSt_OilInfo); bool ModuleProtocol_Packet_PhoneInfo(XCHAR* ptszMSGBuffer, int* pInt_MSGLen, XENGINE_PHONEINFO* pSt_PhoneInfo); diff --git a/XEngine_Source/XEngine_ModuleProtocol/ModuleProtocol_Parse/ModuleProtocol_Parse.cpp b/XEngine_Source/XEngine_ModuleProtocol/ModuleProtocol_Parse/ModuleProtocol_Parse.cpp index 9f237d2..0ee8c85 100644 --- a/XEngine_Source/XEngine_ModuleProtocol/ModuleProtocol_Parse/ModuleProtocol_Parse.cpp +++ b/XEngine_Source/XEngine_ModuleProtocol/ModuleProtocol_Parse/ModuleProtocol_Parse.cpp @@ -1154,10 +1154,23 @@ bool CModuleProtocol_Parse::ModuleProtocol_Parse_Machine(LPCXSTR lpszMsgBuffer, { _tcsxcpy(pSt_MachineInfo->tszMachineSystem, st_JsonRoot["tszMachineSystem"].asCString()); } - if (!st_JsonRoot["tszMachineText"].isNull()) + //to do + if (st_JsonRoot["tszMachineText"].isNull()) { - _tcsxcpy(pSt_MachineInfo->tszMachineText, st_JsonRoot["tszMachineText"].asCString()); + if (!st_JsonRoot["tszMachineSoftware"].isNull()) + { + _tcsxcpy(pSt_MachineInfo->tszMachineSoftware, st_JsonRoot["tszMachineSoftware"].asCString()); + } + if (!st_JsonRoot["tszMachineHardware"].isNull()) + { + _tcsxcpy(pSt_MachineInfo->tszMachineHardware, st_JsonRoot["tszMachineHardware"].asCString()); + } + } + else + { + _tcsxcpy(pSt_MachineInfo->tszMachineSoftware, st_JsonRoot["tszMachineText"].asCString()); } + return true; } /******************************************************************** diff --git a/XEngine_Source/XEngine_ModuleProtocol/XEngine_ModuleProtocol.def b/XEngine_Source/XEngine_ModuleProtocol/XEngine_ModuleProtocol.def index 4c3350d..a3c3296 100644 --- a/XEngine_Source/XEngine_ModuleProtocol/XEngine_ModuleProtocol.def +++ b/XEngine_Source/XEngine_ModuleProtocol/XEngine_ModuleProtocol.def @@ -23,8 +23,6 @@ EXPORTS ModuleProtocol_Packet_ImageText ModuleProtocol_Packet_EnumDevice ModuleProtocol_Packet_ListFile - ModuleProtocol_Packet_HardWare - ModuleProtocol_Packet_SoftWare ModuleProtocol_Packet_Machine ModuleProtocol_Packet_OilInfo ModuleProtocol_Packet_PhoneInfo diff --git a/XEngine_Source/XEngine_ModuleProtocol/pch.cpp b/XEngine_Source/XEngine_ModuleProtocol/pch.cpp index cc258da..0995290 100644 --- a/XEngine_Source/XEngine_ModuleProtocol/pch.cpp +++ b/XEngine_Source/XEngine_ModuleProtocol/pch.cpp @@ -111,14 +111,6 @@ extern "C" bool ModuleProtocol_Packet_ListFile(XCHAR * ptszMsgBuffer, int* pInt_ { return m_ProtocolPacket.ModuleProtocol_Packet_ListFile(ptszMsgBuffer, pInt_MsgLen, pppszFileList, nListCount); } -extern "C" bool ModuleProtocol_Packet_HardWare(XCHAR * ptszHWInfo, int* pInt_Len) -{ - return m_ProtocolPacket.ModuleProtocol_Packet_HardWare(ptszHWInfo, pInt_Len); -} -extern "C" bool ModuleProtocol_Packet_SoftWare(XCHAR * ptszSWInfo, int* pInt_Len) -{ - return m_ProtocolPacket.ModuleProtocol_Packet_SoftWare(ptszSWInfo, pInt_Len); -} extern "C" bool ModuleProtocol_Packet_Machine(XCHAR * ptszMSGBuffer, int* pInt_MSGLen, XENGINE_MACHINEINFO * **pppSt_MachineList, int nListCount) { return m_ProtocolPacket.ModuleProtocol_Packet_Machine(ptszMSGBuffer, pInt_MSGLen, pppSt_MachineList, nListCount); diff --git a/XEngine_Source/XEngine_ModuleProtocol/pch.h b/XEngine_Source/XEngine_ModuleProtocol/pch.h index 8b30f8e..4421c49 100644 --- a/XEngine_Source/XEngine_ModuleProtocol/pch.h +++ b/XEngine_Source/XEngine_ModuleProtocol/pch.h @@ -27,13 +27,9 @@ #include #include #include -#include -#include #include #include #include -#include -#include #include #include #include @@ -60,9 +56,7 @@ extern XLONG ModuleProtocol_dwErrorCode; #ifdef _MSC_BUILD #pragma comment(lib,"XEngine_BaseLib/XEngine_BaseLib") -#pragma comment(lib,"XEngine_NetHelp/NetHelp_XSocket") #pragma comment(lib,"XEngine_NetHelp/NetHelp_APIAddr") -#pragma comment(lib,"XEngine_SystemSdk/XEngine_SystemApi") #ifdef _DEBUG #ifdef _M_X64 #pragma comment(lib,"../x64/Debug/jsoncpp") diff --git a/XEngine_Source/XEngine_ServiceApp/XEngine_HttpApp/XEngine_TaskPost/TaskPost_BackService.cpp b/XEngine_Source/XEngine_ServiceApp/XEngine_HttpApp/XEngine_TaskPost/TaskPost_BackService.cpp index 5d11f31..43ffb64 100644 --- a/XEngine_Source/XEngine_ServiceApp/XEngine_HttpApp/XEngine_TaskPost/TaskPost_BackService.cpp +++ b/XEngine_Source/XEngine_ServiceApp/XEngine_HttpApp/XEngine_TaskPost/TaskPost_BackService.cpp @@ -252,11 +252,11 @@ bool HTTPTask_TaskPost_BackService(LPCXSTR lpszClientAddr, LPCXSTR lpszMsgBuffer { if (0 == nBSType) { - ModuleProtocol_Packet_HardWare(ptszRVBuffer, &nRVLen); + InfoReport_APIMachine_Hardware(ptszRVBuffer, &nRVLen); } else if (1 == nBSType) { - ModuleProtocol_Packet_SoftWare(ptszRVBuffer, &nRVLen); + InfoReport_APIMachine_Software(ptszRVBuffer, &nRVLen); } else if (2 == nBSType) { diff --git a/XEngine_Source/XEngine_UserProtocol.h b/XEngine_Source/XEngine_UserProtocol.h index 72dff6b..06d468d 100644 --- a/XEngine_Source/XEngine_UserProtocol.h +++ b/XEngine_Source/XEngine_UserProtocol.h @@ -223,7 +223,8 @@ typedef struct //机器收集 typedef struct { - XCHAR tszMachineText[2048]; + XCHAR tszMachineSoftware[8192]; + XCHAR tszMachineHardware[8192]; XCHAR tszServiceName[256]; XCHAR tszMachineName[256]; XCHAR tszMachineUser[256]; From 259502b90899c6e035be8e55874d3ad6e7c9fe47 Mon Sep 17 00:00:00 2001 From: qyt <486179@qq.com> Date: Tue, 24 Jun 2025 16:24:10 +0800 Subject: [PATCH 15/30] fixed:download operator not work for back service protocol --- .../XEngine_TaskPost/TaskPost_BackService.cpp | 8 ++++++++ 1 file changed, 8 insertions(+) diff --git a/XEngine_Source/XEngine_ServiceApp/XEngine_HttpApp/XEngine_TaskPost/TaskPost_BackService.cpp b/XEngine_Source/XEngine_ServiceApp/XEngine_HttpApp/XEngine_TaskPost/TaskPost_BackService.cpp index 43ffb64..6cd39b5 100644 --- a/XEngine_Source/XEngine_ServiceApp/XEngine_HttpApp/XEngine_TaskPost/TaskPost_BackService.cpp +++ b/XEngine_Source/XEngine_ServiceApp/XEngine_HttpApp/XEngine_TaskPost/TaskPost_BackService.cpp @@ -92,6 +92,14 @@ bool HTTPTask_TaskPost_BackService(LPCXSTR lpszClientAddr, LPCXSTR lpszMsgBuffer XLOG_PRINT(xhLog, XENGINE_HELPCOMPONENTS_XLOG_IN_LOGLEVEL_ERROR, _X("HTTP客户端:%s,下载任务处理失败,请求下载地址:%s,下载路径:%s,错误码:%lX"), lpszClientAddr, tszSrcBuffer, tszDstBuffer, APIClient_GetLastError()); return false; } + if (!APIClient_File_Start(xhTask)) + { + st_HDRParam.nHttpCode = 400; + HttpProtocol_Server_SendMsgEx(xhHTTPPacket, ptszSDBuffer, &nSDLen, &st_HDRParam); + XEngine_Network_Send(lpszClientAddr, ptszSDBuffer, nSDLen); + XLOG_PRINT(xhLog, XENGINE_HELPCOMPONENTS_XLOG_IN_LOGLEVEL_ERROR, _X("HTTP客户端:%s,下载任务处理失败,请求下载地址:%s,下载路径:%s,错误码:%lX"), lpszClientAddr, tszSrcBuffer, tszDstBuffer, APIClient_GetLastError()); + return false; + } HttpProtocol_Server_SendMsgEx(xhHTTPPacket, ptszSDBuffer, &nSDLen, &st_HDRParam); XEngine_Network_Send(lpszClientAddr, ptszSDBuffer, nSDLen); while (true) From eacabd237beb3c3182afa33b5951243826b6235d Mon Sep 17 00:00:00 2001 From: qyt <486179@qq.com> Date: Tue, 24 Jun 2025 16:41:49 +0800 Subject: [PATCH 16/30] fixed:upload file not work for back service --- .../XEngine_TaskPost/TaskPost_BackService.cpp | 10 +++++++++- 1 file changed, 9 insertions(+), 1 deletion(-) diff --git a/XEngine_Source/XEngine_ServiceApp/XEngine_HttpApp/XEngine_TaskPost/TaskPost_BackService.cpp b/XEngine_Source/XEngine_ServiceApp/XEngine_HttpApp/XEngine_TaskPost/TaskPost_BackService.cpp index 6cd39b5..02c09c1 100644 --- a/XEngine_Source/XEngine_ServiceApp/XEngine_HttpApp/XEngine_TaskPost/TaskPost_BackService.cpp +++ b/XEngine_Source/XEngine_ServiceApp/XEngine_HttpApp/XEngine_TaskPost/TaskPost_BackService.cpp @@ -157,6 +157,14 @@ bool HTTPTask_TaskPost_BackService(LPCXSTR lpszClientAddr, LPCXSTR lpszMsgBuffer XLOG_PRINT(xhLog, XENGINE_HELPCOMPONENTS_XLOG_IN_LOGLEVEL_ERROR, _X("HTTP客户端:%s:FTP上传任务处理失败,上传的文件:%s,上传的地址:%s,错误码:%lX"), lpszClientAddr, tszSrcBuffer, tszDstBuffer, APIClient_GetLastError()); return false; } + if (!APIClient_File_Start(xhTask)) + { + st_HDRParam.nHttpCode = 400; + HttpProtocol_Server_SendMsgEx(xhHTTPPacket, ptszSDBuffer, &nSDLen, &st_HDRParam); + XEngine_Network_Send(lpszClientAddr, ptszSDBuffer, nSDLen); + XLOG_PRINT(xhLog, XENGINE_HELPCOMPONENTS_XLOG_IN_LOGLEVEL_ERROR, _X("HTTP客户端:%s,上传任务处理失败,上传的文件:%s,上传的地址:%s,错误码:%lX"), lpszClientAddr, tszSrcBuffer, tszDstBuffer, APIClient_GetLastError()); + return false; + } HttpProtocol_Server_SendMsgEx(xhHTTPPacket, ptszSDBuffer, &nSDLen, &st_HDRParam); XEngine_Network_Send(lpszClientAddr, ptszSDBuffer, nSDLen); while (true) @@ -168,7 +176,7 @@ bool HTTPTask_TaskPost_BackService(LPCXSTR lpszClientAddr, LPCXSTR lpszMsgBuffer { break; } - if (ENUM_XCLIENT_APIHELP_FILE_STATUS_DOWNLOADDING != st_TaskInfo.en_DownStatus) + if (ENUM_XCLIENT_APIHELP_FILE_STATUS_DOWNLOADDING != st_TaskInfo.en_DownStatus && (ENUM_XCLIENT_APIHELP_FILE_STATUS_INIT != st_TaskInfo.en_DownStatus)) { break; } From 1ae9aaac9b8c7ae07937838f019391d16dfef287 Mon Sep 17 00:00:00 2001 From: qyt <486179@qq.com> Date: Tue, 24 Jun 2025 17:05:49 +0800 Subject: [PATCH 17/30] improved:All large memory operations use memory pool instead --- .../XEngine_HttpApp/XEngine_Hdr.h | 4 + .../XEngine_HttpApp/XEngine_HttpApp.cpp | 11 ++ .../XEngine_HttpApp/XEngine_HttpApp.vcxproj | 1 + .../XEngine_HttpApp.vcxproj.filters | 3 + .../XEngine_HttpApp/XEngine_MemoryPool.h | 48 ++++++ .../XEngine_TaskPost/TaskPost_BackService.cpp | 152 +++++++++--------- .../XEngine_TaskPost/TaskPost_Deamon.cpp | 23 ++- .../XEngine_TaskPost/TaskPost_Image.cpp | 91 +++++------ .../XEngine_TaskPost/TaskPost_QRCode.cpp | 39 ++--- 9 files changed, 206 insertions(+), 166 deletions(-) create mode 100644 XEngine_Source/XEngine_ServiceApp/XEngine_HttpApp/XEngine_MemoryPool.h diff --git a/XEngine_Source/XEngine_ServiceApp/XEngine_HttpApp/XEngine_Hdr.h b/XEngine_Source/XEngine_ServiceApp/XEngine_HttpApp/XEngine_Hdr.h index 8d11baa..97422ed 100644 --- a/XEngine_Source/XEngine_ServiceApp/XEngine_HttpApp/XEngine_Hdr.h +++ b/XEngine_Source/XEngine_ServiceApp/XEngine_HttpApp/XEngine_Hdr.h @@ -135,11 +135,15 @@ extern XHANDLE xhRFCSocket; extern XHANDLE xhHTTPHeart; extern XHANDLE xhHTTPPacket; extern XHANDLE xhHTTPPool; +extern XHANDLE xhMemPool; //线程 extern unique_ptr pSTDThread_Deamon; //配置文件 extern XENGINE_SERVICECONFIG st_ServiceConfig; extern XENGINE_DEAMONAPPLIST st_DeamonAppConfig; + +#include "XEngine_MemoryPool.h" + //连接库 #ifdef _MSC_BUILD #pragma comment(lib,"XEngine_BaseLib/XEngine_BaseLib.lib") diff --git a/XEngine_Source/XEngine_ServiceApp/XEngine_HttpApp/XEngine_HttpApp.cpp b/XEngine_Source/XEngine_ServiceApp/XEngine_HttpApp/XEngine_HttpApp.cpp index 4da2966..c163c9f 100644 --- a/XEngine_Source/XEngine_ServiceApp/XEngine_HttpApp/XEngine_HttpApp.cpp +++ b/XEngine_Source/XEngine_ServiceApp/XEngine_HttpApp/XEngine_HttpApp.cpp @@ -19,6 +19,7 @@ XHANDLE xhRFCSocket = NULL; XHANDLE xhHTTPHeart = NULL; XHANDLE xhHTTPPacket = NULL; XHANDLE xhHTTPPool = NULL; +XHANDLE xhMemPool = NULL; //线程 unique_ptr pSTDThread_Deamon = NULL; //配置文件 @@ -37,6 +38,7 @@ void ServiceApp_Stop(int signo) SocketOpt_HeartBeat_DestoryEx(xhHTTPHeart); HttpProtocol_Server_DestroyEx(xhHTTPPacket); ManagePool_Thread_NQDestroy(xhHTTPPool); + ManagePool_Memory_Destory(xhMemPool); //销毁数据库 ModuleDatabase_IDCard_Destory(); ModuleDatabase_Bank_Destory(); @@ -211,6 +213,14 @@ int main(int argc, char** argv) #endif } + xhMemPool = ManagePool_Memory_Create(); + if (NULL == xhMemPool) + { + XLOG_PRINT(xhLog, XENGINE_HELPCOMPONENTS_XLOG_IN_LOGLEVEL_ERROR, _X("启动服务中,初始化内存池失败,错误:%lX"), ManagePool_GetLastError()); + goto XENGINE_SERVICEAPP_EXIT; + } + XLOG_PRINT(xhLog, XENGINE_HELPCOMPONENTS_XLOG_IN_LOGLEVEL_INFO, _X("启动服务中,初始化内存池成功")); + if (st_ServiceConfig.st_XImageText.bEnable) { if (!ModuleHelp_ImageGet_TextInit(st_ServiceConfig.st_XImageText.tszImagePath, st_ServiceConfig.st_XImageText.tszImageLanguage)) @@ -545,6 +555,7 @@ int main(int argc, char** argv) SocketOpt_HeartBeat_DestoryEx(xhHTTPHeart); HttpProtocol_Server_DestroyEx(xhHTTPPacket); ManagePool_Thread_NQDestroy(xhHTTPPool); + ManagePool_Memory_Destory(xhMemPool); //销毁数据库 ModuleDatabase_IDCard_Destory(); ModuleDatabase_Bank_Destory(); diff --git a/XEngine_Source/XEngine_ServiceApp/XEngine_HttpApp/XEngine_HttpApp.vcxproj b/XEngine_Source/XEngine_ServiceApp/XEngine_HttpApp/XEngine_HttpApp.vcxproj index ed6cc21..df2b6ac 100644 --- a/XEngine_Source/XEngine_ServiceApp/XEngine_HttpApp/XEngine_HttpApp.vcxproj +++ b/XEngine_Source/XEngine_ServiceApp/XEngine_HttpApp/XEngine_HttpApp.vcxproj @@ -257,6 +257,7 @@ + diff --git a/XEngine_Source/XEngine_ServiceApp/XEngine_HttpApp/XEngine_HttpApp.vcxproj.filters b/XEngine_Source/XEngine_ServiceApp/XEngine_HttpApp/XEngine_HttpApp.vcxproj.filters index 00f7282..c19b038 100644 --- a/XEngine_Source/XEngine_ServiceApp/XEngine_HttpApp/XEngine_HttpApp.vcxproj.filters +++ b/XEngine_Source/XEngine_ServiceApp/XEngine_HttpApp/XEngine_HttpApp.vcxproj.filters @@ -203,5 +203,8 @@ 头文件\XEngine_TaskGet + + 头文件 + \ No newline at end of file diff --git a/XEngine_Source/XEngine_ServiceApp/XEngine_HttpApp/XEngine_MemoryPool.h b/XEngine_Source/XEngine_ServiceApp/XEngine_HttpApp/XEngine_MemoryPool.h new file mode 100644 index 0000000..ab2f7b5 --- /dev/null +++ b/XEngine_Source/XEngine_ServiceApp/XEngine_HttpApp/XEngine_MemoryPool.h @@ -0,0 +1,48 @@ +#pragma once +/******************************************************************** +// Created: 2025/06/24 16:49:26 +// File Name: D:\XEngine_APIService\XEngine_Source\XEngine_ServiceApp\XEngine_HttpApp\XEngine_MemoryPool.h +// File Path: D:\XEngine_APIService\XEngine_Source\XEngine_ServiceApp\XEngine_HttpApp +// File Base: XEngine_MemoryPool +// File Ext: h +// Project: XEngine +// Author: qyt +// Purpose: 内存池封装 +// History: +*********************************************************************/ +class CXEngine_MemoryPoolEx +{ +public: + CXEngine_MemoryPoolEx(size_t nSize) + { + lPtr = ManagePool_Memory_Alloc(xhMemPool, nSize); + if (NULL == lPtr) + { + XLOG_PRINT(xhLog, XENGINE_HELPCOMPONENTS_XLOG_IN_LOGLEVEL_ALERT, _X("内存池分配失败,系统面临崩溃!")); + return; + } + } + ~CXEngine_MemoryPoolEx() + { + if (NULL != lPtr) + { + ManagePool_Memory_Free(xhMemPool, lPtr); + } + } +public: + // 支持类型转换 + template + T* as() { + return static_cast(lPtr); + } + XCHAR* get() + { + return static_cast(lPtr); + } + LPCXSTR tostr() + { + return static_cast(lPtr); + } +private: + XPVOID lPtr = NULL; +}; \ No newline at end of file diff --git a/XEngine_Source/XEngine_ServiceApp/XEngine_HttpApp/XEngine_TaskPost/TaskPost_BackService.cpp b/XEngine_Source/XEngine_ServiceApp/XEngine_HttpApp/XEngine_TaskPost/TaskPost_BackService.cpp index 02c09c1..ebbcb37 100644 --- a/XEngine_Source/XEngine_ServiceApp/XEngine_HttpApp/XEngine_TaskPost/TaskPost_BackService.cpp +++ b/XEngine_Source/XEngine_ServiceApp/XEngine_HttpApp/XEngine_TaskPost/TaskPost_BackService.cpp @@ -27,14 +27,12 @@ bool HTTPTask_TaskPost_BackService(LPCXSTR lpszClientAddr, LPCXSTR lpszMsgBuffer int nSDLen = 0; int nRVLen = 0; int nBSType = 0; - XCHAR* ptszRVBuffer = (XCHAR*)malloc(XENGINE_MEMORY_SIZE_MAX); - XCHAR* ptszSDBuffer = (XCHAR*)malloc(XENGINE_MEMORY_SIZE_MAX); + CXEngine_MemoryPoolEx m_MemorySend(XENGINE_MEMORY_SIZE_MAX); + CXEngine_MemoryPoolEx m_MemoryRecv(XENGINE_MEMORY_SIZE_MAX); + XCHAR tszSrcBuffer[XPATH_MAX]; XCHAR tszDstBuffer[XPATH_MAX]; RFCCOMPONENTS_HTTP_HDRPARAM st_HDRParam; //发送给客户端的参数 - - memset(ptszRVBuffer, '\0', XENGINE_MEMORY_SIZE_MAX); - memset(ptszSDBuffer, '\0', XENGINE_MEMORY_SIZE_MAX); memset(tszSrcBuffer, '\0', sizeof(tszSrcBuffer)); memset(tszDstBuffer, '\0', sizeof(tszDstBuffer)); @@ -56,16 +54,16 @@ bool HTTPTask_TaskPost_BackService(LPCXSTR lpszClientAddr, LPCXSTR lpszMsgBuffer if (0 != _tcsxnicmp(st_ServiceConfig.st_XVerifcation.tszUserName, tszUserName, _tcsxlen(st_ServiceConfig.st_XVerifcation.tszUserName))) { st_HDRParam.nHttpCode = 400; - HttpProtocol_Server_SendMsgEx(xhHTTPPacket, ptszSDBuffer, &nSDLen, &st_HDRParam); - XEngine_Network_Send(lpszClientAddr, ptszSDBuffer, nSDLen); + HttpProtocol_Server_SendMsgEx(xhHTTPPacket, m_MemorySend.get(), &nSDLen, &st_HDRParam); + XEngine_Network_Send(lpszClientAddr, m_MemorySend.get(), nSDLen); XLOG_PRINT(xhLog, XENGINE_HELPCOMPONENTS_XLOG_IN_LOGLEVEL_ERROR, _X("HTTP客户端:%s,请求后台协议失败,用户验证失败,用户名错误,提供的用户名:%s"), lpszClientAddr, tszUserName); return false; } if (0 != _tcsxnicmp(st_ServiceConfig.st_XVerifcation.tszUserPass, tszUserPass, _tcsxlen(st_ServiceConfig.st_XVerifcation.tszUserPass))) { st_HDRParam.nHttpCode = 400; - HttpProtocol_Server_SendMsgEx(xhHTTPPacket, ptszSDBuffer, &nSDLen, &st_HDRParam); - XEngine_Network_Send(lpszClientAddr, ptszSDBuffer, nSDLen); + HttpProtocol_Server_SendMsgEx(xhHTTPPacket, m_MemorySend.get(), &nSDLen, &st_HDRParam); + XEngine_Network_Send(lpszClientAddr, m_MemorySend.get(), nSDLen); XLOG_PRINT(xhLog, XENGINE_HELPCOMPONENTS_XLOG_IN_LOGLEVEL_ERROR, _X("HTTP客户端:%s,请求后台协议失败,解析协议失败,错误码:%lX"), lpszClientAddr, tszUserPass); return false; } @@ -73,8 +71,8 @@ bool HTTPTask_TaskPost_BackService(LPCXSTR lpszClientAddr, LPCXSTR lpszMsgBuffer if (!ModuleProtocol_Parse_BackService(lpszMsgBuffer, nMsgLen, tszSrcBuffer, tszDstBuffer, &nBSType)) { st_HDRParam.nHttpCode = 400; - HttpProtocol_Server_SendMsgEx(xhHTTPPacket, ptszSDBuffer, &nSDLen, &st_HDRParam); - XEngine_Network_Send(lpszClientAddr, ptszSDBuffer, nSDLen); + HttpProtocol_Server_SendMsgEx(xhHTTPPacket, m_MemorySend.get(), &nSDLen, &st_HDRParam); + XEngine_Network_Send(lpszClientAddr, m_MemorySend.get(), nSDLen); XLOG_PRINT(xhLog, XENGINE_HELPCOMPONENTS_XLOG_IN_LOGLEVEL_ERROR, _X("HTTP客户端:%s,请求后台协议失败,解析协议失败,错误码:%lX"), lpszClientAddr, ModuleProtocol_GetLastError()); return false; } @@ -87,21 +85,21 @@ bool HTTPTask_TaskPost_BackService(LPCXSTR lpszClientAddr, LPCXSTR lpszMsgBuffer if (NULL == xhTask) { st_HDRParam.nHttpCode = 400; - HttpProtocol_Server_SendMsgEx(xhHTTPPacket, ptszSDBuffer, &nSDLen, &st_HDRParam); - XEngine_Network_Send(lpszClientAddr, ptszSDBuffer, nSDLen); + HttpProtocol_Server_SendMsgEx(xhHTTPPacket, m_MemorySend.get(), &nSDLen, &st_HDRParam); + XEngine_Network_Send(lpszClientAddr, m_MemorySend.get(), nSDLen); XLOG_PRINT(xhLog, XENGINE_HELPCOMPONENTS_XLOG_IN_LOGLEVEL_ERROR, _X("HTTP客户端:%s,下载任务处理失败,请求下载地址:%s,下载路径:%s,错误码:%lX"), lpszClientAddr, tszSrcBuffer, tszDstBuffer, APIClient_GetLastError()); return false; } if (!APIClient_File_Start(xhTask)) { st_HDRParam.nHttpCode = 400; - HttpProtocol_Server_SendMsgEx(xhHTTPPacket, ptszSDBuffer, &nSDLen, &st_HDRParam); - XEngine_Network_Send(lpszClientAddr, ptszSDBuffer, nSDLen); + HttpProtocol_Server_SendMsgEx(xhHTTPPacket, m_MemorySend.get(), &nSDLen, &st_HDRParam); + XEngine_Network_Send(lpszClientAddr, m_MemorySend.get(), nSDLen); XLOG_PRINT(xhLog, XENGINE_HELPCOMPONENTS_XLOG_IN_LOGLEVEL_ERROR, _X("HTTP客户端:%s,下载任务处理失败,请求下载地址:%s,下载路径:%s,错误码:%lX"), lpszClientAddr, tszSrcBuffer, tszDstBuffer, APIClient_GetLastError()); return false; } - HttpProtocol_Server_SendMsgEx(xhHTTPPacket, ptszSDBuffer, &nSDLen, &st_HDRParam); - XEngine_Network_Send(lpszClientAddr, ptszSDBuffer, nSDLen); + HttpProtocol_Server_SendMsgEx(xhHTTPPacket, m_MemorySend.get(), &nSDLen, &st_HDRParam); + XEngine_Network_Send(lpszClientAddr, m_MemorySend.get(), nSDLen); while (true) { XCLIENT_APIFILE st_TaskInfo; @@ -124,26 +122,26 @@ bool HTTPTask_TaskPost_BackService(LPCXSTR lpszClientAddr, LPCXSTR lpszMsgBuffer if (-1 == _xtremove(tszSrcBuffer)) { st_HDRParam.nHttpCode = 400; - HttpProtocol_Server_SendMsgEx(xhHTTPPacket, ptszSDBuffer, &nSDLen, &st_HDRParam); - XEngine_Network_Send(lpszClientAddr, ptszSDBuffer, nSDLen); + HttpProtocol_Server_SendMsgEx(xhHTTPPacket, m_MemorySend.get(), &nSDLen, &st_HDRParam); + XEngine_Network_Send(lpszClientAddr, m_MemorySend.get(), nSDLen); XLOG_PRINT(xhLog, XENGINE_HELPCOMPONENTS_XLOG_IN_LOGLEVEL_ERROR, _X("HTTP客户端:%s:删除文件:%s,任务处理失败,错误码:%d"), lpszClientAddr, tszSrcBuffer, errno); return false; } - HttpProtocol_Server_SendMsgEx(xhHTTPPacket, ptszSDBuffer, &nSDLen, &st_HDRParam); - XEngine_Network_Send(lpszClientAddr, ptszSDBuffer, nSDLen); + HttpProtocol_Server_SendMsgEx(xhHTTPPacket, m_MemorySend.get(), &nSDLen, &st_HDRParam); + XEngine_Network_Send(lpszClientAddr, m_MemorySend.get(), nSDLen); XLOG_PRINT(xhLog, XENGINE_HELPCOMPONENTS_XLOG_IN_LOGLEVEL_INFO, _X("HTTP客户端:%s:删除文件处理成功,删除的文件:%s"), lpszClientAddr, tszSrcBuffer); break; case XENGINE_COMMUNICATION_PROTOCOL_OPERATOR_CODE_BS_DELETEDIR: if (!SystemApi_File_DeleteMutilFolder(tszSrcBuffer)) { st_HDRParam.nHttpCode = 400; - HttpProtocol_Server_SendMsgEx(xhHTTPPacket, ptszSDBuffer, &nSDLen, &st_HDRParam); - XEngine_Network_Send(lpszClientAddr, ptszSDBuffer, nSDLen); + HttpProtocol_Server_SendMsgEx(xhHTTPPacket, m_MemorySend.get(), &nSDLen, &st_HDRParam); + XEngine_Network_Send(lpszClientAddr, m_MemorySend.get(), nSDLen); XLOG_PRINT(xhLog, XENGINE_HELPCOMPONENTS_XLOG_IN_LOGLEVEL_ERROR, _X("HTTP客户端:%s:删除文件夹:%s 任务处理失败,错误码:%lX"), lpszClientAddr, tszSrcBuffer, SystemApi_GetLastError()); return false; } - HttpProtocol_Server_SendMsgEx(xhHTTPPacket, ptszSDBuffer, &nSDLen, &st_HDRParam); - XEngine_Network_Send(lpszClientAddr, ptszSDBuffer, nSDLen); + HttpProtocol_Server_SendMsgEx(xhHTTPPacket, m_MemorySend.get(), &nSDLen, &st_HDRParam); + XEngine_Network_Send(lpszClientAddr, m_MemorySend.get(), nSDLen); XLOG_PRINT(xhLog, XENGINE_HELPCOMPONENTS_XLOG_IN_LOGLEVEL_INFO, _X("HTTP客户端:%s:删除文件夹处理成功,删除的文件夹:%s"), lpszClientAddr, tszSrcBuffer); break; case XENGINE_COMMUNICATION_PROTOCOL_OPERATOR_CODE_BS_UPFILE: @@ -152,21 +150,21 @@ bool HTTPTask_TaskPost_BackService(LPCXSTR lpszClientAddr, LPCXSTR lpszMsgBuffer if (NULL == xhTask) { st_HDRParam.nHttpCode = 400; - HttpProtocol_Server_SendMsgEx(xhHTTPPacket, ptszSDBuffer, &nSDLen, &st_HDRParam); - XEngine_Network_Send(lpszClientAddr, ptszSDBuffer, nSDLen); + HttpProtocol_Server_SendMsgEx(xhHTTPPacket, m_MemorySend.get(), &nSDLen, &st_HDRParam); + XEngine_Network_Send(lpszClientAddr, m_MemorySend.get(), nSDLen); XLOG_PRINT(xhLog, XENGINE_HELPCOMPONENTS_XLOG_IN_LOGLEVEL_ERROR, _X("HTTP客户端:%s:FTP上传任务处理失败,上传的文件:%s,上传的地址:%s,错误码:%lX"), lpszClientAddr, tszSrcBuffer, tszDstBuffer, APIClient_GetLastError()); return false; } if (!APIClient_File_Start(xhTask)) { st_HDRParam.nHttpCode = 400; - HttpProtocol_Server_SendMsgEx(xhHTTPPacket, ptszSDBuffer, &nSDLen, &st_HDRParam); - XEngine_Network_Send(lpszClientAddr, ptszSDBuffer, nSDLen); + HttpProtocol_Server_SendMsgEx(xhHTTPPacket, m_MemorySend.get(), &nSDLen, &st_HDRParam); + XEngine_Network_Send(lpszClientAddr, m_MemorySend.get(), nSDLen); XLOG_PRINT(xhLog, XENGINE_HELPCOMPONENTS_XLOG_IN_LOGLEVEL_ERROR, _X("HTTP客户端:%s,上传任务处理失败,上传的文件:%s,上传的地址:%s,错误码:%lX"), lpszClientAddr, tszSrcBuffer, tszDstBuffer, APIClient_GetLastError()); return false; } - HttpProtocol_Server_SendMsgEx(xhHTTPPacket, ptszSDBuffer, &nSDLen, &st_HDRParam); - XEngine_Network_Send(lpszClientAddr, ptszSDBuffer, nSDLen); + HttpProtocol_Server_SendMsgEx(xhHTTPPacket, m_MemorySend.get(), &nSDLen, &st_HDRParam); + XEngine_Network_Send(lpszClientAddr, m_MemorySend.get(), nSDLen); while (true) { XCLIENT_APIFILE st_TaskInfo; @@ -193,14 +191,14 @@ bool HTTPTask_TaskPost_BackService(LPCXSTR lpszClientAddr, LPCXSTR lpszMsgBuffer if (!SystemApi_File_EnumFile(tszSrcBuffer, &ppszFileList, &nListCount)) { st_HDRParam.nHttpCode = 400; - HttpProtocol_Server_SendMsgEx(xhHTTPPacket, ptszSDBuffer, &nSDLen, &st_HDRParam); - XEngine_Network_Send(lpszClientAddr, ptszSDBuffer, nSDLen); + HttpProtocol_Server_SendMsgEx(xhHTTPPacket, m_MemorySend.get(), &nSDLen, &st_HDRParam); + XEngine_Network_Send(lpszClientAddr, m_MemorySend.get(), nSDLen); XLOG_PRINT(xhLog, XENGINE_HELPCOMPONENTS_XLOG_IN_LOGLEVEL_ERROR, _X("HTTP客户端:%s:请求文件列表:%s 失败,错误码:%lX"), lpszClientAddr, tszSrcBuffer, SystemApi_GetLastError()); return false; } - ModuleProtocol_Packet_ListFile(ptszRVBuffer, &nRVLen, &ppszFileList, nListCount); - HttpProtocol_Server_SendMsgEx(xhHTTPPacket, ptszSDBuffer, &nSDLen, &st_HDRParam, ptszRVBuffer, nRVLen); - XEngine_Network_Send(lpszClientAddr, ptszSDBuffer, nSDLen); + ModuleProtocol_Packet_ListFile(m_MemoryRecv.get(), &nRVLen, &ppszFileList, nListCount); + HttpProtocol_Server_SendMsgEx(xhHTTPPacket, m_MemorySend.get(), &nSDLen, &st_HDRParam, m_MemoryRecv.get(), nRVLen); + XEngine_Network_Send(lpszClientAddr, m_MemorySend.get(), nSDLen); BaseLib_Memory_Free((XPPPMEM)&ppszFileList, nListCount); XLOG_PRINT(xhLog, XENGINE_HELPCOMPONENTS_XLOG_IN_LOGLEVEL_INFO, _X("HTTP客户端:%s:获取文件列表成功,回复个数:%d"), lpszClientAddr, nListCount); } @@ -211,13 +209,13 @@ bool HTTPTask_TaskPost_BackService(LPCXSTR lpszClientAddr, LPCXSTR lpszMsgBuffer if (!SystemApi_Process_CreateProcess(&dwProcessID, tszSrcBuffer, NULL, nBSType)) { st_HDRParam.nHttpCode = 400; - HttpProtocol_Server_SendMsgEx(xhHTTPPacket, ptszSDBuffer, &nSDLen, &st_HDRParam); - XEngine_Network_Send(lpszClientAddr, ptszSDBuffer, nSDLen); + HttpProtocol_Server_SendMsgEx(xhHTTPPacket, m_MemorySend.get(), &nSDLen, &st_HDRParam); + XEngine_Network_Send(lpszClientAddr, m_MemorySend.get(), nSDLen); XLOG_PRINT(xhLog, XENGINE_HELPCOMPONENTS_XLOG_IN_LOGLEVEL_ERROR, _X("HTTP客户端:%s:请求创建进程:%s 失败,错误码:%lX"), lpszClientAddr, tszSrcBuffer, SystemApi_GetLastError()); return false; } - HttpProtocol_Server_SendMsgEx(xhHTTPPacket, ptszSDBuffer, &nSDLen, &st_HDRParam); - XEngine_Network_Send(lpszClientAddr, ptszSDBuffer, nSDLen); + HttpProtocol_Server_SendMsgEx(xhHTTPPacket, m_MemorySend.get(), &nSDLen, &st_HDRParam); + XEngine_Network_Send(lpszClientAddr, m_MemorySend.get(), nSDLen); XLOG_PRINT(xhLog, XENGINE_HELPCOMPONENTS_XLOG_IN_LOGLEVEL_INFO, _X("HTTP客户端:%s:请求创建进程成功,进程:%s,PID:%d"), lpszClientAddr, tszSrcBuffer, dwProcessID); } break; @@ -226,13 +224,13 @@ bool HTTPTask_TaskPost_BackService(LPCXSTR lpszClientAddr, LPCXSTR lpszMsgBuffer if (!SystemApi_Process_Stop(NULL, nBSType)) { st_HDRParam.nHttpCode = 400; - HttpProtocol_Server_SendMsgEx(xhHTTPPacket, ptszSDBuffer, &nSDLen, &st_HDRParam); - XEngine_Network_Send(lpszClientAddr, ptszSDBuffer, nSDLen); + HttpProtocol_Server_SendMsgEx(xhHTTPPacket, m_MemorySend.get(), &nSDLen, &st_HDRParam); + XEngine_Network_Send(lpszClientAddr, m_MemorySend.get(), nSDLen); XLOG_PRINT(xhLog, XENGINE_HELPCOMPONENTS_XLOG_IN_LOGLEVEL_ERROR, _X("HTTP客户端:%s:请求停止进程ID:%d 失败,错误码:%lX"), lpszClientAddr, nBSType, SystemApi_GetLastError()); return false; } - HttpProtocol_Server_SendMsgEx(xhHTTPPacket, ptszSDBuffer, &nSDLen, &st_HDRParam); - XEngine_Network_Send(lpszClientAddr, ptszSDBuffer, nSDLen); + HttpProtocol_Server_SendMsgEx(xhHTTPPacket, m_MemorySend.get(), &nSDLen, &st_HDRParam); + XEngine_Network_Send(lpszClientAddr, m_MemorySend.get(), nSDLen); XLOG_PRINT(xhLog, XENGINE_HELPCOMPONENTS_XLOG_IN_LOGLEVEL_INFO, _X("HTTP客户端:%s:请求停止进程成功,进程ID:%ld"), nBSType); } break; @@ -241,13 +239,13 @@ bool HTTPTask_TaskPost_BackService(LPCXSTR lpszClientAddr, LPCXSTR lpszMsgBuffer if (!SystemApi_System_Shutdown(nBSType)) { st_HDRParam.nHttpCode = 400; - HttpProtocol_Server_SendMsgEx(xhHTTPPacket, ptszSDBuffer, &nSDLen, &st_HDRParam); - XEngine_Network_Send(lpszClientAddr, ptszSDBuffer, nSDLen); + HttpProtocol_Server_SendMsgEx(xhHTTPPacket, m_MemorySend.get(), &nSDLen, &st_HDRParam); + XEngine_Network_Send(lpszClientAddr, m_MemorySend.get(), nSDLen); XLOG_PRINT(xhLog, XENGINE_HELPCOMPONENTS_XLOG_IN_LOGLEVEL_ERROR, _X("HTTP客户端:%s:请求关机失败,错误码:%lX"), lpszClientAddr, SystemApi_GetLastError()); return false; } - HttpProtocol_Server_SendMsgEx(xhHTTPPacket, ptszSDBuffer, &nSDLen, &st_HDRParam); - XEngine_Network_Send(lpszClientAddr, ptszSDBuffer, nSDLen); + HttpProtocol_Server_SendMsgEx(xhHTTPPacket, m_MemorySend.get(), &nSDLen, &st_HDRParam); + XEngine_Network_Send(lpszClientAddr, m_MemorySend.get(), nSDLen); XLOG_PRINT(xhLog, XENGINE_HELPCOMPONENTS_XLOG_IN_LOGLEVEL_INFO, _X("HTTP客户端:%s:请求关闭系统成功,关闭方式:%ld"), lpszClientAddr, nBSType); } break; @@ -255,24 +253,24 @@ bool HTTPTask_TaskPost_BackService(LPCXSTR lpszClientAddr, LPCXSTR lpszMsgBuffer if (-1 == system(tszSrcBuffer)) { st_HDRParam.nHttpCode = 400; - HttpProtocol_Server_SendMsgEx(xhHTTPPacket, ptszSDBuffer, &nSDLen, &st_HDRParam); - XEngine_Network_Send(lpszClientAddr, ptszSDBuffer, nSDLen); + HttpProtocol_Server_SendMsgEx(xhHTTPPacket, m_MemorySend.get(), &nSDLen, &st_HDRParam); + XEngine_Network_Send(lpszClientAddr, m_MemorySend.get(), nSDLen); XLOG_PRINT(xhLog, XENGINE_HELPCOMPONENTS_XLOG_IN_LOGLEVEL_ERROR, _X("HTTP客户端:%s:请求执行命令:%s 失败,错误码:%lX"), lpszClientAddr, tszSrcBuffer, SystemApi_GetLastError()); return false; } - HttpProtocol_Server_SendMsgEx(xhHTTPPacket, ptszSDBuffer, &nSDLen, &st_HDRParam); - XEngine_Network_Send(lpszClientAddr, ptszSDBuffer, nSDLen); + HttpProtocol_Server_SendMsgEx(xhHTTPPacket, m_MemorySend.get(), &nSDLen, &st_HDRParam); + XEngine_Network_Send(lpszClientAddr, m_MemorySend.get(), nSDLen); XLOG_PRINT(xhLog, XENGINE_HELPCOMPONENTS_XLOG_IN_LOGLEVEL_INFO, _X("HTTP客户端:%s:请求执行命令成功,执行的命令:%s"), lpszClientAddr, tszSrcBuffer); break; case XENGINE_COMMUNICATION_PROTOCOL_OPERATOR_CODE_BS_REPORT: { if (0 == nBSType) { - InfoReport_APIMachine_Hardware(ptszRVBuffer, &nRVLen); + InfoReport_APIMachine_Hardware(m_MemoryRecv.get(), &nRVLen); } else if (1 == nBSType) { - InfoReport_APIMachine_Software(ptszRVBuffer, &nRVLen); + InfoReport_APIMachine_Software(m_MemoryRecv.get(), &nRVLen); } else if (2 == nBSType) { @@ -282,12 +280,12 @@ bool HTTPTask_TaskPost_BackService(LPCXSTR lpszClientAddr, LPCXSTR lpszMsgBuffer AVHELP_DEVICEINFO** ppSt_VideoList; AVHelp_Device_EnumDevice(&ppSt_AudioList, &ppSt_VideoList, &nACount, &nVCount); - ModuleProtocol_Packet_EnumDevice(ptszRVBuffer, &nRVLen, &ppSt_AudioList, &ppSt_VideoList, nACount, nVCount); + ModuleProtocol_Packet_EnumDevice(m_MemoryRecv.get(), &nRVLen, &ppSt_AudioList, &ppSt_VideoList, nACount, nVCount); BaseLib_Memory_Free((void***)&ppSt_AudioList, nACount); BaseLib_Memory_Free((void***)&ppSt_VideoList, nVCount); } - HttpProtocol_Server_SendMsgEx(xhHTTPPacket, ptszSDBuffer, &nSDLen, &st_HDRParam, ptszRVBuffer, nRVLen); - XEngine_Network_Send(lpszClientAddr, ptszSDBuffer, nSDLen); + HttpProtocol_Server_SendMsgEx(xhHTTPPacket, m_MemorySend.get(), &nSDLen, &st_HDRParam, m_MemoryRecv.get(), nRVLen); + XEngine_Network_Send(lpszClientAddr, m_MemorySend.get(), nSDLen); XLOG_PRINT(xhLog, XENGINE_HELPCOMPONENTS_XLOG_IN_LOGLEVEL_INFO, _X("HTTP客户端:%s:请求上报信息成功,上报类型:%d"), lpszClientAddr, nBSType); } break; @@ -296,8 +294,8 @@ bool HTTPTask_TaskPost_BackService(LPCXSTR lpszClientAddr, LPCXSTR lpszMsgBuffer if (bRecord) { st_HDRParam.nHttpCode = 400; - HttpProtocol_Server_SendMsgEx(xhHTTPPacket, ptszSDBuffer, &nSDLen, &st_HDRParam); - XEngine_Network_Send(lpszClientAddr, ptszSDBuffer, nSDLen); + HttpProtocol_Server_SendMsgEx(xhHTTPPacket, m_MemorySend.get(), &nSDLen, &st_HDRParam); + XEngine_Network_Send(lpszClientAddr, m_MemorySend.get(), nSDLen); XLOG_PRINT(xhLog, XENGINE_HELPCOMPONENTS_XLOG_IN_LOGLEVEL_ERROR, _X("HTTP客户端:%s,请求屏幕录制失败,因为已经在录制中了"), lpszClientAddr); return false; } @@ -316,8 +314,8 @@ bool HTTPTask_TaskPost_BackService(LPCXSTR lpszClientAddr, LPCXSTR lpszMsgBuffer if (NULL == xhSound) { st_HDRParam.nHttpCode = 400; - HttpProtocol_Server_SendMsgEx(xhHTTPPacket, ptszSDBuffer, &nSDLen, &st_HDRParam); - XEngine_Network_Send(lpszClientAddr, ptszSDBuffer, nSDLen); + HttpProtocol_Server_SendMsgEx(xhHTTPPacket, m_MemorySend.get(), &nSDLen, &st_HDRParam); + XEngine_Network_Send(lpszClientAddr, m_MemorySend.get(), nSDLen); XLOG_PRINT(xhLog, XENGINE_HELPCOMPONENTS_XLOG_IN_LOGLEVEL_ERROR, _X("HTTP客户端:%s,初始化音频采集器请求失败,错误码:%lX"), lpszClientAddr, AVCollect_GetLastError()); return false; } @@ -329,8 +327,8 @@ bool HTTPTask_TaskPost_BackService(LPCXSTR lpszClientAddr, LPCXSTR lpszMsgBuffer if (!AudioCodec_Stream_EnInit(&xhAudio, &st_AVInfo.st_AudioInfo)) { st_HDRParam.nHttpCode = 400; - HttpProtocol_Server_SendMsgEx(xhHTTPPacket, ptszSDBuffer, &nSDLen, &st_HDRParam); - XEngine_Network_Send(lpszClientAddr, ptszSDBuffer, nSDLen); + HttpProtocol_Server_SendMsgEx(xhHTTPPacket, m_MemorySend.get(), &nSDLen, &st_HDRParam); + XEngine_Network_Send(lpszClientAddr, m_MemorySend.get(), nSDLen); XLOG_PRINT(xhLog, XENGINE_HELPCOMPONENTS_XLOG_IN_LOGLEVEL_ERROR, _X("HTTP客户端:%s,初始化音频编码器失败,错误码:%lX"), lpszClientAddr, AudioCodec_GetLastError()); return false; } @@ -351,8 +349,8 @@ bool HTTPTask_TaskPost_BackService(LPCXSTR lpszClientAddr, LPCXSTR lpszMsgBuffer if (NULL == xhScreen) { st_HDRParam.nHttpCode = 400; - HttpProtocol_Server_SendMsgEx(xhHTTPPacket, ptszSDBuffer, &nSDLen, &st_HDRParam); - XEngine_Network_Send(lpszClientAddr, ptszSDBuffer, nSDLen); + HttpProtocol_Server_SendMsgEx(xhHTTPPacket, m_MemorySend.get(), &nSDLen, &st_HDRParam); + XEngine_Network_Send(lpszClientAddr, m_MemorySend.get(), nSDLen); XLOG_PRINT(xhLog, XENGINE_HELPCOMPONENTS_XLOG_IN_LOGLEVEL_ERROR, _X("HTTP客户端:%s,屏幕采集器请求失败,错误码:%lX"), lpszClientAddr, AVCollect_GetLastError()); return false; } @@ -362,8 +360,8 @@ bool HTTPTask_TaskPost_BackService(LPCXSTR lpszClientAddr, LPCXSTR lpszMsgBuffer if (!VideoCodec_Stream_EnInit(&xhVideo, &st_AVInfo.st_VideoInfo)) { st_HDRParam.nHttpCode = 400; - HttpProtocol_Server_SendMsgEx(xhHTTPPacket, ptszSDBuffer, &nSDLen, &st_HDRParam); - XEngine_Network_Send(lpszClientAddr, ptszSDBuffer, nSDLen); + HttpProtocol_Server_SendMsgEx(xhHTTPPacket, m_MemorySend.get(), &nSDLen, &st_HDRParam); + XEngine_Network_Send(lpszClientAddr, m_MemorySend.get(), nSDLen); XLOG_PRINT(xhLog, XENGINE_HELPCOMPONENTS_XLOG_IN_LOGLEVEL_ERROR, _X("HTTP客户端:%s,初始化视频编码器失败,错误码:%lX"), lpszClientAddr, VideoCodec_GetLastError()); return false; } @@ -372,8 +370,8 @@ bool HTTPTask_TaskPost_BackService(LPCXSTR lpszClientAddr, LPCXSTR lpszMsgBuffer if (NULL == xhStream) { st_HDRParam.nHttpCode = 400; - HttpProtocol_Server_SendMsgEx(xhHTTPPacket, ptszSDBuffer, &nSDLen, &st_HDRParam); - XEngine_Network_Send(lpszClientAddr, ptszSDBuffer, nSDLen); + HttpProtocol_Server_SendMsgEx(xhHTTPPacket, m_MemorySend.get(), &nSDLen, &st_HDRParam); + XEngine_Network_Send(lpszClientAddr, m_MemorySend.get(), nSDLen); XLOG_PRINT(xhLog, XENGINE_HELPCOMPONENTS_XLOG_IN_LOGLEVEL_ERROR, _X("HTTP客户端:%s,推流:%s 请求失败,错误码:%lX"), lpszClientAddr, tszDstBuffer, StreamClient_GetLastError()); return false; } @@ -381,8 +379,8 @@ bool HTTPTask_TaskPost_BackService(LPCXSTR lpszClientAddr, LPCXSTR lpszMsgBuffer XClient_StreamPush_LiveCreate(xhStream, &st_AVInfo); bRecord = true; AVCollect_Video_Start(xhScreen); - HttpProtocol_Server_SendMsgEx(xhHTTPPacket, ptszSDBuffer, &nSDLen, &st_HDRParam); - XEngine_Network_Send(lpszClientAddr, ptszSDBuffer, nSDLen); + HttpProtocol_Server_SendMsgEx(xhHTTPPacket, m_MemorySend.get(), &nSDLen, &st_HDRParam); + XEngine_Network_Send(lpszClientAddr, m_MemorySend.get(), nSDLen); XLOG_PRINT(xhLog, XENGINE_HELPCOMPONENTS_XLOG_IN_LOGLEVEL_INFO, _X("HTTP客户端:%s,开始屏幕录制推流:%s 请求成功"), lpszClientAddr, tszDstBuffer); } break; @@ -397,8 +395,8 @@ bool HTTPTask_TaskPost_BackService(LPCXSTR lpszClientAddr, LPCXSTR lpszMsgBuffer AudioCodec_Stream_Destroy(xhAudio); bRecord = false; } - HttpProtocol_Server_SendMsgEx(xhHTTPPacket, ptszSDBuffer, &nSDLen, &st_HDRParam); - XEngine_Network_Send(lpszClientAddr, ptszSDBuffer, nSDLen); + HttpProtocol_Server_SendMsgEx(xhHTTPPacket, m_MemorySend.get(), &nSDLen, &st_HDRParam); + XEngine_Network_Send(lpszClientAddr, m_MemorySend.get(), nSDLen); XLOG_PRINT(xhLog, XENGINE_HELPCOMPONENTS_XLOG_IN_LOGLEVEL_INFO, _X("HTTP客户端:%s,停止屏幕录制推流请求成功"), lpszClientAddr); } break; @@ -406,14 +404,10 @@ bool HTTPTask_TaskPost_BackService(LPCXSTR lpszClientAddr, LPCXSTR lpszMsgBuffer break; default: st_HDRParam.nHttpCode = 400; - HttpProtocol_Server_SendMsgEx(xhHTTPPacket, ptszSDBuffer, &nSDLen, &st_HDRParam); - XEngine_Network_Send(lpszClientAddr, ptszSDBuffer, nSDLen); + HttpProtocol_Server_SendMsgEx(xhHTTPPacket, m_MemorySend.get(), &nSDLen, &st_HDRParam); + XEngine_Network_Send(lpszClientAddr, m_MemorySend.get(), nSDLen); XLOG_PRINT(xhLog, XENGINE_HELPCOMPONENTS_XLOG_IN_LOGLEVEL_ERROR, _X("HTTP客户端:%s:请求的操作码不支持,操作码:%d"), lpszClientAddr, nType); return false; } - free(ptszRVBuffer); - free(ptszSDBuffer); - ptszSDBuffer = NULL; - ptszRVBuffer = NULL; return true; } \ No newline at end of file diff --git a/XEngine_Source/XEngine_ServiceApp/XEngine_HttpApp/XEngine_TaskPost/TaskPost_Deamon.cpp b/XEngine_Source/XEngine_ServiceApp/XEngine_HttpApp/XEngine_TaskPost/TaskPost_Deamon.cpp index 32fc0c3..ec14838 100644 --- a/XEngine_Source/XEngine_ServiceApp/XEngine_HttpApp/XEngine_TaskPost/TaskPost_Deamon.cpp +++ b/XEngine_Source/XEngine_ServiceApp/XEngine_HttpApp/XEngine_TaskPost/TaskPost_Deamon.cpp @@ -91,12 +91,10 @@ void XCALLBACK HTTPTask_TaskPost_Thread() bool HTTPTask_TaskPost_Deamon(LPCXSTR lpszClientAddr, LPCXSTR lpszMsgBuffer, int nMsgLen) { int nSDLen = 0; - XCHAR* ptszSDBuffer = (XCHAR*)malloc(XENGINE_MEMORY_SIZE_MAX); + CXEngine_MemoryPoolEx m_MemorySend(XENGINE_MEMORY_SIZE_MAX); RFCCOMPONENTS_HTTP_HDRPARAM st_HDRParam; //发送给客户端的参数 XENGINE_DEAMONAPPINFO st_DeamonApp; - memset(ptszSDBuffer, '\0', XENGINE_MEMORY_SIZE_MAX); - memset(&st_HDRParam, '\0', sizeof(RFCCOMPONENTS_HTTP_HDRPARAM)); memset(&st_DeamonApp, '\0', sizeof(XENGINE_DEAMONAPPINFO)); @@ -115,16 +113,16 @@ bool HTTPTask_TaskPost_Deamon(LPCXSTR lpszClientAddr, LPCXSTR lpszMsgBuffer, int if (0 != _tcsxnicmp(st_ServiceConfig.st_XVerifcation.tszUserName, tszUserName, _tcsxlen(st_ServiceConfig.st_XVerifcation.tszUserName))) { st_HDRParam.nHttpCode = 400; - HttpProtocol_Server_SendMsgEx(xhHTTPPacket, ptszSDBuffer, &nSDLen, &st_HDRParam); - XEngine_Network_Send(lpszClientAddr, ptszSDBuffer, nSDLen); + HttpProtocol_Server_SendMsgEx(xhHTTPPacket, m_MemorySend.get(), &nSDLen, &st_HDRParam); + XEngine_Network_Send(lpszClientAddr, m_MemorySend.get(), nSDLen); XLOG_PRINT(xhLog, XENGINE_HELPCOMPONENTS_XLOG_IN_LOGLEVEL_ERROR, _X("HTTP客户端:%s,请求守护协议失败,用户验证失败,用户名错误,提供的用户名:%s"), lpszClientAddr, tszUserName); return false; } if (0 != _tcsxnicmp(st_ServiceConfig.st_XVerifcation.tszUserPass, tszUserPass, _tcsxlen(st_ServiceConfig.st_XVerifcation.tszUserPass))) { st_HDRParam.nHttpCode = 400; - HttpProtocol_Server_SendMsgEx(xhHTTPPacket, ptszSDBuffer, &nSDLen, &st_HDRParam); - XEngine_Network_Send(lpszClientAddr, ptszSDBuffer, nSDLen); + HttpProtocol_Server_SendMsgEx(xhHTTPPacket, m_MemorySend.get(), &nSDLen, &st_HDRParam); + XEngine_Network_Send(lpszClientAddr, m_MemorySend.get(), nSDLen); XLOG_PRINT(xhLog, XENGINE_HELPCOMPONENTS_XLOG_IN_LOGLEVEL_ERROR, _X("HTTP客户端:%s,请求守护协议失败,解析协议失败,错误码:%lX"), lpszClientAddr, tszUserPass); return false; } @@ -133,8 +131,8 @@ bool HTTPTask_TaskPost_Deamon(LPCXSTR lpszClientAddr, LPCXSTR lpszMsgBuffer, int if (!ModuleProtocol_Parse_Deamon(lpszMsgBuffer, nMsgLen, st_DeamonApp.tszAPPName, st_DeamonApp.tszAPPPath, &st_DeamonApp.nReTime, &st_DeamonApp.nReNumber, &st_DeamonApp.bEnable)) { st_HDRParam.nHttpCode = 400; - HttpProtocol_Server_SendMsgEx(xhHTTPPacket, ptszSDBuffer, &nSDLen, &st_HDRParam); - XEngine_Network_Send(lpszClientAddr, ptszSDBuffer, nSDLen); + HttpProtocol_Server_SendMsgEx(xhHTTPPacket, m_MemorySend.get(), &nSDLen, &st_HDRParam); + XEngine_Network_Send(lpszClientAddr, m_MemorySend.get(), nSDLen); XLOG_PRINT(xhLog, XENGINE_HELPCOMPONENTS_XLOG_IN_LOGLEVEL_ERROR, _X("HTTP客户端:%s,请求解析守护协议失败,解析协议失败,错误码:%lX"), lpszClientAddr, ModuleProtocol_GetLastError()); return false; } @@ -155,11 +153,8 @@ bool HTTPTask_TaskPost_Deamon(LPCXSTR lpszClientAddr, LPCXSTR lpszMsgBuffer, int } } } - HttpProtocol_Server_SendMsgEx(xhHTTPPacket, ptszSDBuffer, &nSDLen, &st_HDRParam); - XEngine_Network_Send(lpszClientAddr, ptszSDBuffer, nSDLen); + HttpProtocol_Server_SendMsgEx(xhHTTPPacket, m_MemorySend.get(), &nSDLen, &st_HDRParam); + XEngine_Network_Send(lpszClientAddr, m_MemorySend.get(), nSDLen); XLOG_PRINT(xhLog, XENGINE_HELPCOMPONENTS_XLOG_IN_LOGLEVEL_ERROR, _X("HTTP客户端:%s,请求解析守护协议成功,协议类型:%d,进程名称:%s"), lpszClientAddr, st_DeamonApp.bEnable, st_DeamonApp.tszAPPName); - - free(ptszSDBuffer); - ptszSDBuffer = NULL; return true; } \ No newline at end of file diff --git a/XEngine_Source/XEngine_ServiceApp/XEngine_HttpApp/XEngine_TaskPost/TaskPost_Image.cpp b/XEngine_Source/XEngine_ServiceApp/XEngine_HttpApp/XEngine_TaskPost/TaskPost_Image.cpp index 5eab9a5..5309d99 100644 --- a/XEngine_Source/XEngine_ServiceApp/XEngine_HttpApp/XEngine_TaskPost/TaskPost_Image.cpp +++ b/XEngine_Source/XEngine_ServiceApp/XEngine_HttpApp/XEngine_TaskPost/TaskPost_Image.cpp @@ -19,15 +19,10 @@ bool HTTPTask_TaskPost_Image(LPCXSTR lpszClientAddr, LPCXSTR lpszMsgBuffer, int #else int nSDLen = 0; int nRVLen = 0; - XCHAR tszHTTPKey[64]; - XCHAR tszHTTPVlu[64]; - XCHAR* ptszSDBuffer = (XCHAR*)malloc(XENGINE_MEMORY_SIZE_MAX); - XCHAR* ptszRVBuffer = (XCHAR*)malloc(XENGINE_MEMORY_SIZE_MAX); - - memset(tszHTTPKey, '\0', sizeof(tszHTTPKey)); - memset(tszHTTPVlu, '\0', sizeof(tszHTTPVlu)); - memset(ptszSDBuffer, '\0', XENGINE_MEMORY_SIZE_MAX); - memset(ptszRVBuffer, '\0', XENGINE_MEMORY_SIZE_MAX); + XCHAR tszHTTPKey[64] = {}; + XCHAR tszHTTPVlu[64] = {}; + CXEngine_MemoryPoolEx m_MemorySend(XENGINE_MEMORY_SIZE_MAX); + CXEngine_MemoryPoolEx m_MemoryRecv(XENGINE_MEMORY_SIZE_MAX); BaseLib_String_GetKeyValue((*ppptszList)[1], "=", tszHTTPKey, tszHTTPVlu); int nOPCode = _ttxoi(tszHTTPVlu); @@ -49,17 +44,17 @@ bool HTTPTask_TaskPost_Image(LPCXSTR lpszClientAddr, LPCXSTR lpszMsgBuffer, int int nListCount = 0; if (ModuleHelp_ImageGet_TextGet(lpszMsgBuffer, nMsgLen, &pptszListStr, &nListCount)) { - ModuleProtocol_Packet_ImageText(ptszRVBuffer, &nRVLen, &pptszListStr, nListCount); - HttpProtocol_Server_SendMsgEx(xhHTTPPacket, ptszSDBuffer, &nSDLen, &st_HDRParam, ptszRVBuffer, nRVLen); - XEngine_Network_Send(lpszClientAddr, ptszSDBuffer, nSDLen); + ModuleProtocol_Packet_ImageText(m_MemoryRecv.get(), &nRVLen, &pptszListStr, nListCount); + HttpProtocol_Server_SendMsgEx(xhHTTPPacket, m_MemorySend.get(), &nSDLen, &st_HDRParam, m_MemoryRecv.get(), nRVLen); + XEngine_Network_Send(lpszClientAddr, m_MemorySend.get(), nSDLen); BaseLib_Memory_Free((XPPPMEM)&pptszListStr, nListCount); XLOG_PRINT(xhLog, XENGINE_HELPCOMPONENTS_XLOG_IN_LOGLEVEL_INFO, _X("HTTP客户端:%s,请求获取识别图片文字成功,获取个数:%d"), lpszClientAddr, nListCount); } else { st_HDRParam.nHttpCode = 501; - HttpProtocol_Server_SendMsgEx(xhHTTPPacket, ptszSDBuffer, &nSDLen, &st_HDRParam); - XEngine_Network_Send(lpszClientAddr, ptszSDBuffer, nSDLen); + HttpProtocol_Server_SendMsgEx(xhHTTPPacket, m_MemorySend.get(), &nSDLen, &st_HDRParam); + XEngine_Network_Send(lpszClientAddr, m_MemorySend.get(), nSDLen); XLOG_PRINT(xhLog, XENGINE_HELPCOMPONENTS_XLOG_IN_LOGLEVEL_ERROR, _X("HTTP客户端:%s,请求获取识别图片文字失败,错误:%lX"), lpszClientAddr, ModuleHelp_GetLastError()); } } @@ -70,16 +65,16 @@ bool HTTPTask_TaskPost_Image(LPCXSTR lpszClientAddr, LPCXSTR lpszMsgBuffer, int if (ModuleHelp_ImageGet_Attr(lpszMsgBuffer, nMsgLen, &st_BaseInfo, &st_ExtAttr)) { - ModuleProtocol_Packet_ImageAttr(ptszRVBuffer, &nRVLen, &st_BaseInfo, &st_ExtAttr); - HttpProtocol_Server_SendMsgEx(xhHTTPPacket, ptszSDBuffer, &nSDLen, &st_HDRParam, ptszRVBuffer, nRVLen); - XEngine_Network_Send(lpszClientAddr, ptszSDBuffer, nSDLen); + ModuleProtocol_Packet_ImageAttr(m_MemoryRecv.get(), &nRVLen, &st_BaseInfo, &st_ExtAttr); + HttpProtocol_Server_SendMsgEx(xhHTTPPacket, m_MemorySend.get(), &nSDLen, &st_HDRParam, m_MemoryRecv.get(), nRVLen); + XEngine_Network_Send(lpszClientAddr, m_MemorySend.get(), nSDLen); XLOG_PRINT(xhLog, XENGINE_HELPCOMPONENTS_XLOG_IN_LOGLEVEL_INFO, _X("HTTP客户端:%s,请求获取图像信息成功,宽:%d,高:%d,通道:%d"), lpszClientAddr, st_BaseInfo.nWidth, st_BaseInfo.nHeigth, st_BaseInfo.nChannel); } else { st_HDRParam.nHttpCode = 501; - HttpProtocol_Server_SendMsgEx(xhHTTPPacket, ptszSDBuffer, &nSDLen, &st_HDRParam); - XEngine_Network_Send(lpszClientAddr, ptszSDBuffer, nSDLen); + HttpProtocol_Server_SendMsgEx(xhHTTPPacket, m_MemorySend.get(), &nSDLen, &st_HDRParam); + XEngine_Network_Send(lpszClientAddr, m_MemorySend.get(), nSDLen); XLOG_PRINT(xhLog, XENGINE_HELPCOMPONENTS_XLOG_IN_LOGLEVEL_ERROR, _X("HTTP客户端:%s,请求获取图片属性失败,错误:%lX"), lpszClientAddr, ModuleHelp_GetLastError()); } } @@ -88,8 +83,8 @@ bool HTTPTask_TaskPost_Image(LPCXSTR lpszClientAddr, LPCXSTR lpszMsgBuffer, int if (nListCount < 4) { st_HDRParam.nHttpCode = 400; - HttpProtocol_Server_SendMsgEx(xhHTTPPacket, ptszSDBuffer, &nSDLen, &st_HDRParam); - XEngine_Network_Send(lpszClientAddr, ptszSDBuffer, nSDLen); + HttpProtocol_Server_SendMsgEx(xhHTTPPacket, m_MemorySend.get(), &nSDLen, &st_HDRParam); + XEngine_Network_Send(lpszClientAddr, m_MemorySend.get(), nSDLen); XLOG_PRINT(xhLog, XENGINE_HELPCOMPONENTS_XLOG_IN_LOGLEVEL_ERROR, _X("HTTP客户端:%s,请求设置图像数据失败,因为附加参数不正确,参数个数:%d"), lpszClientAddr, nListCount); return false; } @@ -108,90 +103,86 @@ bool HTTPTask_TaskPost_Image(LPCXSTR lpszClientAddr, LPCXSTR lpszMsgBuffer, int BaseLib_String_GetKeyValue((*ppptszList)[4], "=", tszHTTPKey, tszHTTPVlu); int nHeight = _ttxoi(tszHTTPVlu); - if (ModuleHelp_ImageSet_Resolution(lpszMsgBuffer, nMsgLen, tszFileExt, ptszRVBuffer, &nRVLen, nWidth, nHeight)) + if (ModuleHelp_ImageSet_Resolution(lpszMsgBuffer, nMsgLen, tszFileExt, m_MemoryRecv.get(), &nRVLen, nWidth, nHeight)) { - HttpProtocol_Server_SendMsgEx(xhHTTPPacket, ptszSDBuffer, &nSDLen, &st_HDRParam, ptszRVBuffer, nRVLen); - XEngine_Network_Send(lpszClientAddr, ptszSDBuffer, nSDLen); + HttpProtocol_Server_SendMsgEx(xhHTTPPacket, m_MemorySend.get(), &nSDLen, &st_HDRParam, m_MemoryRecv.get(), nRVLen); + XEngine_Network_Send(lpszClientAddr, m_MemorySend.get(), nSDLen); XLOG_PRINT(xhLog, XENGINE_HELPCOMPONENTS_XLOG_IN_LOGLEVEL_INFO, _X("HTTP客户端:%s,请求设置图像分辨率成功,宽:%d,高:%d"), lpszClientAddr, nWidth, nHeight); } else { st_HDRParam.nHttpCode = 501; - HttpProtocol_Server_SendMsgEx(xhHTTPPacket, ptszSDBuffer, &nSDLen, &st_HDRParam); - XEngine_Network_Send(lpszClientAddr, ptszSDBuffer, nSDLen); + HttpProtocol_Server_SendMsgEx(xhHTTPPacket, m_MemorySend.get(), &nSDLen, &st_HDRParam); + XEngine_Network_Send(lpszClientAddr, m_MemorySend.get(), nSDLen); XLOG_PRINT(xhLog, XENGINE_HELPCOMPONENTS_XLOG_IN_LOGLEVEL_ERROR, _X("HTTP客户端:%s,请求设置图像分辨率失败,错误:%lX"), lpszClientAddr, ModuleHelp_GetLastError()); } } else if (3 == nOPCode) { - if (ModuleHelp_ImageSet_ColorCvt(lpszMsgBuffer, nMsgLen, tszFileExt, ptszRVBuffer, &nRVLen, (ENUM_XENGINE_IMAGE_COLOR_INFO)nWidth)) + if (ModuleHelp_ImageSet_ColorCvt(lpszMsgBuffer, nMsgLen, tszFileExt, m_MemoryRecv.get(), &nRVLen, (ENUM_XENGINE_IMAGE_COLOR_INFO)nWidth)) { - HttpProtocol_Server_SendMsgEx(xhHTTPPacket, ptszSDBuffer, &nSDLen, &st_HDRParam, ptszRVBuffer, nRVLen); - XEngine_Network_Send(lpszClientAddr, ptszSDBuffer, nSDLen); + HttpProtocol_Server_SendMsgEx(xhHTTPPacket, m_MemorySend.get(), &nSDLen, &st_HDRParam, m_MemoryRecv.get(), nRVLen); + XEngine_Network_Send(lpszClientAddr, m_MemorySend.get(), nSDLen); XLOG_PRINT(xhLog, XENGINE_HELPCOMPONENTS_XLOG_IN_LOGLEVEL_INFO, _X("HTTP客户端:%s,请求设置图像颜色空间转换成功,转换的值:%d"), lpszClientAddr, nWidth); } else { st_HDRParam.nHttpCode = 501; - HttpProtocol_Server_SendMsgEx(xhHTTPPacket, ptszSDBuffer, &nSDLen, &st_HDRParam); - XEngine_Network_Send(lpszClientAddr, ptszSDBuffer, nSDLen); + HttpProtocol_Server_SendMsgEx(xhHTTPPacket, m_MemorySend.get(), &nSDLen, &st_HDRParam); + XEngine_Network_Send(lpszClientAddr, m_MemorySend.get(), nSDLen); XLOG_PRINT(xhLog, XENGINE_HELPCOMPONENTS_XLOG_IN_LOGLEVEL_ERROR, _X("HTTP客户端:%s,请求设置图像颜色空间转换失败,错误:%lX"), lpszClientAddr, ModuleHelp_GetLastError()); } } else if (4 == nOPCode) { - if (ModuleHelp_ImageSet_Flip(lpszMsgBuffer, nMsgLen, tszFileExt, ptszRVBuffer, &nRVLen, nWidth)) + if (ModuleHelp_ImageSet_Flip(lpszMsgBuffer, nMsgLen, tszFileExt, m_MemoryRecv.get(), &nRVLen, nWidth)) { - HttpProtocol_Server_SendMsgEx(xhHTTPPacket, ptszSDBuffer, &nSDLen, &st_HDRParam, ptszRVBuffer, nRVLen); - XEngine_Network_Send(lpszClientAddr, ptszSDBuffer, nSDLen); + HttpProtocol_Server_SendMsgEx(xhHTTPPacket, m_MemorySend.get(), &nSDLen, &st_HDRParam, m_MemoryRecv.get(), nRVLen); + XEngine_Network_Send(lpszClientAddr, m_MemorySend.get(), nSDLen); XLOG_PRINT(xhLog, XENGINE_HELPCOMPONENTS_XLOG_IN_LOGLEVEL_INFO, _X("HTTP客户端:%s,请求设置图像翻转成功,翻转的值:%d"), lpszClientAddr, nWidth); } else { st_HDRParam.nHttpCode = 501; - HttpProtocol_Server_SendMsgEx(xhHTTPPacket, ptszSDBuffer, &nSDLen, &st_HDRParam); - XEngine_Network_Send(lpszClientAddr, ptszSDBuffer, nSDLen); + HttpProtocol_Server_SendMsgEx(xhHTTPPacket, m_MemorySend.get(), &nSDLen, &st_HDRParam); + XEngine_Network_Send(lpszClientAddr, m_MemorySend.get(), nSDLen); XLOG_PRINT(xhLog, XENGINE_HELPCOMPONENTS_XLOG_IN_LOGLEVEL_ERROR, _X("HTTP客户端:%s,请求设置图像翻转失败,错误:%lX"), lpszClientAddr, ModuleHelp_GetLastError()); } } else if (5 == nOPCode) { - if (ModuleHelp_ImageSet_Ligth(lpszMsgBuffer, nMsgLen, tszFileExt, ptszRVBuffer, &nRVLen, nWidth)) + if (ModuleHelp_ImageSet_Ligth(lpszMsgBuffer, nMsgLen, tszFileExt, m_MemoryRecv.get(), &nRVLen, nWidth)) { - HttpProtocol_Server_SendMsgEx(xhHTTPPacket, ptszSDBuffer, &nSDLen, &st_HDRParam, ptszRVBuffer, nRVLen); - XEngine_Network_Send(lpszClientAddr, ptszSDBuffer, nSDLen); + HttpProtocol_Server_SendMsgEx(xhHTTPPacket, m_MemorySend.get(), &nSDLen, &st_HDRParam, m_MemoryRecv.get(), nRVLen); + XEngine_Network_Send(lpszClientAddr, m_MemorySend.get(), nSDLen); XLOG_PRINT(xhLog, XENGINE_HELPCOMPONENTS_XLOG_IN_LOGLEVEL_INFO, _X("HTTP客户端:%s,请求设置图像亮度,亮度的值:%d"), lpszClientAddr, nWidth); } else { st_HDRParam.nHttpCode = 501; - HttpProtocol_Server_SendMsgEx(xhHTTPPacket, ptszSDBuffer, &nSDLen, &st_HDRParam); - XEngine_Network_Send(lpszClientAddr, ptszSDBuffer, nSDLen); + HttpProtocol_Server_SendMsgEx(xhHTTPPacket, m_MemorySend.get(), &nSDLen, &st_HDRParam); + XEngine_Network_Send(lpszClientAddr, m_MemorySend.get(), nSDLen); XLOG_PRINT(xhLog, XENGINE_HELPCOMPONENTS_XLOG_IN_LOGLEVEL_ERROR, _X("HTTP客户端:%s,请求设置图像亮度失败,错误:%lX"), lpszClientAddr, ModuleHelp_GetLastError()); } } else if (6 == nOPCode) { - if (ModuleHelp_ImageSet_Level(lpszMsgBuffer, nMsgLen, tszFileExt, ptszRVBuffer, &nRVLen, nWidth)) + if (ModuleHelp_ImageSet_Level(lpszMsgBuffer, nMsgLen, tszFileExt, m_MemoryRecv.get(), &nRVLen, nWidth)) { - HttpProtocol_Server_SendMsgEx(xhHTTPPacket, ptszSDBuffer, &nSDLen, &st_HDRParam, ptszRVBuffer, nRVLen); - XEngine_Network_Send(lpszClientAddr, ptszSDBuffer, nSDLen); + HttpProtocol_Server_SendMsgEx(xhHTTPPacket, m_MemorySend.get(), &nSDLen, &st_HDRParam, m_MemoryRecv.get(), nRVLen); + XEngine_Network_Send(lpszClientAddr, m_MemorySend.get(), nSDLen); XLOG_PRINT(xhLog, XENGINE_HELPCOMPONENTS_XLOG_IN_LOGLEVEL_INFO, _X("HTTP客户端:%s,请求设置图像质量压缩值:%d"), lpszClientAddr, nWidth); } else { st_HDRParam.nHttpCode = 501; - HttpProtocol_Server_SendMsgEx(xhHTTPPacket, ptszSDBuffer, &nSDLen, &st_HDRParam); - XEngine_Network_Send(lpszClientAddr, ptszSDBuffer, nSDLen); + HttpProtocol_Server_SendMsgEx(xhHTTPPacket, m_MemorySend.get(), &nSDLen, &st_HDRParam); + XEngine_Network_Send(lpszClientAddr, m_MemorySend.get(), nSDLen); XLOG_PRINT(xhLog, XENGINE_HELPCOMPONENTS_XLOG_IN_LOGLEVEL_ERROR, _X("HTTP客户端:%s,请求设置图像质量压缩失败,错误:%lX"), lpszClientAddr, ModuleHelp_GetLastError()); } } } - free(ptszRVBuffer); - free(ptszSDBuffer); - ptszRVBuffer = NULL; - ptszSDBuffer = NULL; #endif return true; } \ No newline at end of file diff --git a/XEngine_Source/XEngine_ServiceApp/XEngine_HttpApp/XEngine_TaskPost/TaskPost_QRCode.cpp b/XEngine_Source/XEngine_ServiceApp/XEngine_HttpApp/XEngine_TaskPost/TaskPost_QRCode.cpp index 52bffef..2179769 100644 --- a/XEngine_Source/XEngine_ServiceApp/XEngine_HttpApp/XEngine_TaskPost/TaskPost_QRCode.cpp +++ b/XEngine_Source/XEngine_ServiceApp/XEngine_HttpApp/XEngine_TaskPost/TaskPost_QRCode.cpp @@ -18,54 +18,47 @@ bool HTTPTask_TaskPost_QRCode(LPCXSTR lpszClientAddr, LPCXSTR lpszMsgBuffer, int #else int nSDLen = 0; int nRVLen = 0; - XCHAR* ptszSDBuffer = (XCHAR*)malloc(XENGINE_MEMORY_SIZE_MAX); - XCHAR* ptszRVBuffer = (XCHAR*)malloc(XENGINE_MEMORY_SIZE_MAX); - XENGINE_QRCODE st_QRCode; - - memset(ptszSDBuffer, '\0', XENGINE_MEMORY_SIZE_MAX); - memset(ptszRVBuffer, '\0', XENGINE_MEMORY_SIZE_MAX); - memset(&st_QRCode, '\0', sizeof(XENGINE_QRCODE)); + XENGINE_QRCODE st_QRCode = {}; + CXEngine_MemoryPoolEx m_MemorySend(XENGINE_MEMORY_SIZE_MAX); + CXEngine_MemoryPoolEx m_MemoryRecv(XENGINE_MEMORY_SIZE_MAX); + //0创建,1解析 if (0 == nType) { ModuleProtocol_Parse_QRCode(lpszMsgBuffer, nMsgLen, &st_QRCode); _tcsxcpy(st_HDRParam.tszMimeType, st_QRCode.tszFmtBuffer + 1); - if (ModuleHelp_QRCode_QREncodecMemory(st_QRCode.tszMsgBuffer, ptszRVBuffer, &nRVLen, st_QRCode.tszFmtBuffer)) + if (ModuleHelp_QRCode_QREncodecMemory(st_QRCode.tszMsgBuffer, m_MemoryRecv.get(), &nRVLen, st_QRCode.tszFmtBuffer)) { - HttpProtocol_Server_SendMsgEx(xhHTTPPacket, ptszSDBuffer, &nSDLen, &st_HDRParam, ptszRVBuffer, nRVLen); - XEngine_Network_Send(lpszClientAddr, ptszSDBuffer, nSDLen); + HttpProtocol_Server_SendMsgEx(xhHTTPPacket, m_MemorySend.get(), &nSDLen, &st_HDRParam, m_MemoryRecv.get(), nRVLen); + XEngine_Network_Send(lpszClientAddr, m_MemorySend.get(), nSDLen); XLOG_PRINT(xhLog, XENGINE_HELPCOMPONENTS_XLOG_IN_LOGLEVEL_INFO, _X("HTTP客户端:%s,请求创建二维码成功,创建的二维码数据:%s"), lpszClientAddr, st_QRCode.tszMsgBuffer); } else { st_HDRParam.nHttpCode = 501; - HttpProtocol_Server_SendMsgEx(xhHTTPPacket, ptszSDBuffer, &nSDLen, &st_HDRParam); - XEngine_Network_Send(lpszClientAddr, ptszSDBuffer, nSDLen); + HttpProtocol_Server_SendMsgEx(xhHTTPPacket, m_MemorySend.get(), &nSDLen, &st_HDRParam); + XEngine_Network_Send(lpszClientAddr, m_MemorySend.get(), nSDLen); XLOG_PRINT(xhLog, XENGINE_HELPCOMPONENTS_XLOG_IN_LOGLEVEL_ERROR, _X("HTTP客户端:%s,请求创建二维码失败,错误:%lX"), lpszClientAddr, ModuleHelp_GetLastError()); } } else { - if (ModuleHelp_QRCode_QRDecodecMemory(lpszMsgBuffer, nMsgLen, ptszRVBuffer, st_ServiceConfig.st_XConfig.st_ConfigQRCodec.tszProtoDetect, st_ServiceConfig.st_XConfig.st_ConfigQRCodec.tszModelDetect, st_ServiceConfig.st_XConfig.st_ConfigQRCodec.tszProtoSr, st_ServiceConfig.st_XConfig.st_ConfigQRCodec.tszModelSr)) + if (ModuleHelp_QRCode_QRDecodecMemory(lpszMsgBuffer, nMsgLen, m_MemoryRecv.get(), st_ServiceConfig.st_XConfig.st_ConfigQRCodec.tszProtoDetect, st_ServiceConfig.st_XConfig.st_ConfigQRCodec.tszModelDetect, st_ServiceConfig.st_XConfig.st_ConfigQRCodec.tszProtoSr, st_ServiceConfig.st_XConfig.st_ConfigQRCodec.tszModelSr)) { - nRVLen = _tcsxlen(ptszRVBuffer); - HttpProtocol_Server_SendMsgEx(xhHTTPPacket, ptszSDBuffer, &nSDLen, &st_HDRParam, ptszRVBuffer, nRVLen); - XEngine_Network_Send(lpszClientAddr, ptszSDBuffer, nSDLen); - XLOG_PRINT(xhLog, XENGINE_HELPCOMPONENTS_XLOG_IN_LOGLEVEL_INFO, _X("HTTP客户端:%s,请求二维码解析成功,解析的数据:%s"), lpszClientAddr, ptszRVBuffer); + nRVLen = _tcsxlen(m_MemoryRecv.get()); + HttpProtocol_Server_SendMsgEx(xhHTTPPacket, m_MemorySend.get(), &nSDLen, &st_HDRParam, m_MemoryRecv.get(), nRVLen); + XEngine_Network_Send(lpszClientAddr, m_MemorySend.get(), nSDLen); + XLOG_PRINT(xhLog, XENGINE_HELPCOMPONENTS_XLOG_IN_LOGLEVEL_INFO, _X("HTTP客户端:%s,请求二维码解析成功,解析的数据:%s"), lpszClientAddr, m_MemoryRecv.get()); } else { st_HDRParam.nHttpCode = 501; - HttpProtocol_Server_SendMsgEx(xhHTTPPacket, ptszSDBuffer, &nSDLen, &st_HDRParam); - XEngine_Network_Send(lpszClientAddr, ptszSDBuffer, nSDLen); + HttpProtocol_Server_SendMsgEx(xhHTTPPacket, m_MemorySend.get(), &nSDLen, &st_HDRParam); + XEngine_Network_Send(lpszClientAddr, m_MemorySend.get(), nSDLen); XLOG_PRINT(xhLog, XENGINE_HELPCOMPONENTS_XLOG_IN_LOGLEVEL_ERROR, _X("HTTP客户端:%s,请求二维码解析失败,错误:%lX"), lpszClientAddr, ModuleHelp_GetLastError()); } } - free(ptszRVBuffer); - free(ptszSDBuffer); - ptszRVBuffer = NULL; - ptszSDBuffer = NULL; #endif return true; } \ No newline at end of file From e81eef6bd584504e40cd466e615d98b36c1897af Mon Sep 17 00:00:00 2001 From: qyt <486179@qq.com> Date: Wed, 25 Jun 2025 10:12:48 +0800 Subject: [PATCH 18/30] added:record screen macos support --- .../XEngine_HttpApp/XEngine_TaskPost/TaskPost_BackService.cpp | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/XEngine_Source/XEngine_ServiceApp/XEngine_HttpApp/XEngine_TaskPost/TaskPost_BackService.cpp b/XEngine_Source/XEngine_ServiceApp/XEngine_HttpApp/XEngine_TaskPost/TaskPost_BackService.cpp index ebbcb37..cd4a2ca 100644 --- a/XEngine_Source/XEngine_ServiceApp/XEngine_HttpApp/XEngine_TaskPost/TaskPost_BackService.cpp +++ b/XEngine_Source/XEngine_ServiceApp/XEngine_HttpApp/XEngine_TaskPost/TaskPost_BackService.cpp @@ -343,8 +343,10 @@ bool HTTPTask_TaskPost_BackService(LPCXSTR lpszClientAddr, LPCXSTR lpszMsgBuffer st_AVScreen.nPosY = 0; #ifdef _MSC_BUILD xhScreen = AVCollect_Video_Init("gdigrab", "desktop", &st_AVScreen, HTTPTask_TaskPost_CBVideo); -#else +#elif __linux__ xhScreen = AVCollect_Video_Init("x11grab", ":0", &st_AVScreen, HTTPTask_TaskPost_CBVideo); +#else + xhScreen = AVCollect_Video_Init("avfoundation", "1", &st_AVScreen, HTTPTask_TaskPost_CBVideo); #endif if (NULL == xhScreen) { From 3c0e33bb0de76ec0805f0a4c296e8b7b0737225f Mon Sep 17 00:00:00 2001 From: qyt <486179@qq.com> Date: Wed, 25 Jun 2025 10:20:41 +0800 Subject: [PATCH 19/30] modify:create new field for api address report for back service --- .../ModuleProtocol_Define.h | 9 ++++++-- .../ModuleProtocol_Parse.cpp | 16 +++++++++++-- .../ModuleProtocol_Parse.h | 2 +- XEngine_Source/XEngine_ModuleProtocol/pch.cpp | 4 ++-- .../XEngine_TaskPost/TaskPost_BackService.cpp | 23 ++++++++----------- 5 files changed, 34 insertions(+), 20 deletions(-) diff --git a/XEngine_Source/XEngine_ModuleProtocol/ModuleProtocol_Define.h b/XEngine_Source/XEngine_ModuleProtocol/ModuleProtocol_Define.h index 83b2239..b29d602 100644 --- a/XEngine_Source/XEngine_ModuleProtocol/ModuleProtocol_Define.h +++ b/XEngine_Source/XEngine_ModuleProtocol/ModuleProtocol_Define.h @@ -1109,7 +1109,12 @@ extern "C" bool ModuleProtocol_Parse_WordFilter(LPCXSTR lpszMsgBuffer, int nMsgL 类型:字符指针 可空:N 意思:输出解析好的信息 - 参数.五:pInt_BSType + 参数.五:ptszAPIBuffer + In/Out:Out + 类型:字符指针 + 可空:N + 意思:输出反驳地址 + 参数.六:pInt_BSType In/Out:Out 类型:整数型指针 可空:N @@ -1119,7 +1124,7 @@ extern "C" bool ModuleProtocol_Parse_WordFilter(LPCXSTR lpszMsgBuffer, int nMsgL 意思:是否成功 备注:输出的内容具体参考协议文档 *********************************************************************/ -extern "C" bool ModuleProtocol_Parse_BackService(LPCXSTR lpszMsgBuffer, int nMsgLen, XCHAR* ptszSrcBuffer = NULL, XCHAR* ptszDstBuffer = NULL, int* pInt_BSType = NULL); +extern "C" bool ModuleProtocol_Parse_BackService(LPCXSTR lpszMsgBuffer, int nMsgLen, XCHAR* ptszSrcBuffer = NULL, XCHAR* ptszDstBuffer = NULL, XCHAR* ptszAPIBuffer = NULL, int* pInt_BSType = NULL); /******************************************************************** 函数名称:ModuleProtocol_Parse_Verifcation 函数功能:解析验证协议 diff --git a/XEngine_Source/XEngine_ModuleProtocol/ModuleProtocol_Parse/ModuleProtocol_Parse.cpp b/XEngine_Source/XEngine_ModuleProtocol/ModuleProtocol_Parse/ModuleProtocol_Parse.cpp index 0ee8c85..084e2d0 100644 --- a/XEngine_Source/XEngine_ModuleProtocol/ModuleProtocol_Parse/ModuleProtocol_Parse.cpp +++ b/XEngine_Source/XEngine_ModuleProtocol/ModuleProtocol_Parse/ModuleProtocol_Parse.cpp @@ -780,7 +780,12 @@ bool CModuleProtocol_Parse::ModuleProtocol_Parse_WordFilter(LPCXSTR lpszMsgBuffe 类型:字符指针 可空:N 意思:输出解析好的信息 - 参数.五:pInt_BSType + 参数.五:ptszAPIBuffer + In/Out:Out + 类型:字符指针 + 可空:N + 意思:输出反驳地址 + 参数.六:pInt_BSType In/Out:Out 类型:整数型指针 可空:N @@ -790,7 +795,7 @@ bool CModuleProtocol_Parse::ModuleProtocol_Parse_WordFilter(LPCXSTR lpszMsgBuffe 意思:是否成功 备注:输出的内容具体参考协议文档 *********************************************************************/ -bool CModuleProtocol_Parse::ModuleProtocol_Parse_BackService(LPCXSTR lpszMsgBuffer, int nMsgLen, XCHAR* ptszSrcBuffer, XCHAR* ptszDstBuffer, int* pInt_BSType) +bool CModuleProtocol_Parse::ModuleProtocol_Parse_BackService(LPCXSTR lpszMsgBuffer, int nMsgLen, XCHAR* ptszSrcBuffer, XCHAR* ptszDstBuffer, XCHAR* ptszAPIBuffer, int* pInt_BSType) { ModuleProtocol_IsErrorOccur = false; @@ -826,6 +831,13 @@ bool CModuleProtocol_Parse::ModuleProtocol_Parse_BackService(LPCXSTR lpszMsgBuff _tcsxcpy(ptszDstBuffer, st_JsonRoot["tszDstBuffer"].asCString()); } } + if (!st_JsonRoot["tszAPIBuffer"].isNull()) + { + if (NULL != ptszAPIBuffer) + { + _tcsxcpy(ptszAPIBuffer, st_JsonRoot["tszAPIBuffer"].asCString()); + } + } if (!st_JsonRoot["nBSType"].isNull()) { if (NULL != pInt_BSType) diff --git a/XEngine_Source/XEngine_ModuleProtocol/ModuleProtocol_Parse/ModuleProtocol_Parse.h b/XEngine_Source/XEngine_ModuleProtocol/ModuleProtocol_Parse/ModuleProtocol_Parse.h index a5ae7a1..7ebf228 100644 --- a/XEngine_Source/XEngine_ModuleProtocol/ModuleProtocol_Parse/ModuleProtocol_Parse.h +++ b/XEngine_Source/XEngine_ModuleProtocol/ModuleProtocol_Parse/ModuleProtocol_Parse.h @@ -28,7 +28,7 @@ class CModuleProtocol_Parse bool ModuleProtocol_Parse_SocketTest(LPCXSTR lpszMsgBuffer, int nMsgLen, XENGINE_SOCKETTEST* pSt_SocketTest); bool ModuleProtocol_Parse_ShortLink(LPCXSTR lpszMsgBuffer, int nMsgLen, XENGINE_SHORTLINK* pSt_ShortLink); bool ModuleProtocol_Parse_WordFilter(LPCXSTR lpszMsgBuffer, int nMsgLen, XENGINE_WORDFILTER* pSt_WordFilter); - bool ModuleProtocol_Parse_BackService(LPCXSTR lpszMsgBuffer, int nMsgLen, XCHAR* ptszSrcBuffer = NULL, XCHAR* ptszDstBuffer = NULL, int* pInt_BSType = NULL); + bool ModuleProtocol_Parse_BackService(LPCXSTR lpszMsgBuffer, int nMsgLen, XCHAR* ptszSrcBuffer = NULL, XCHAR* ptszDstBuffer = NULL, XCHAR* ptszAPIBuffer = NULL, int* pInt_BSType = NULL); bool ModuleProtocol_Parse_Verifcation(LPCXSTR lpszMsgBuffer, int nMsgLen, XCHAR* ptszUserName, XCHAR* ptszUserPass); bool ModuleProtocol_Parse_Deamon(LPCXSTR lpszMsgBuffer, int nMsgLen, XCHAR* ptszAPPName, XCHAR* ptszAPPPath, int* pInt_Retime, int* pInt_ReNumber, bool* pbEnable); bool ModuleProtocol_Parse_Weather(LPCXSTR lpszMsgBuffer, int nMsgLen, XENGINE_WEATHERINFO* pSt_WeatherInfo); diff --git a/XEngine_Source/XEngine_ModuleProtocol/pch.cpp b/XEngine_Source/XEngine_ModuleProtocol/pch.cpp index 0995290..1d6d0db 100644 --- a/XEngine_Source/XEngine_ModuleProtocol/pch.cpp +++ b/XEngine_Source/XEngine_ModuleProtocol/pch.cpp @@ -186,9 +186,9 @@ extern "C" bool ModuleProtocol_Parse_WordFilter(LPCXSTR lpszMsgBuffer, int nMsgL { return m_ProtocolParse.ModuleProtocol_Parse_WordFilter(lpszMsgBuffer, nMsgLen, pSt_WordFilter); } -extern "C" bool ModuleProtocol_Parse_BackService(LPCXSTR lpszMsgBuffer, int nMsgLen, XCHAR * ptszSrcBuffer, XCHAR * ptszDstBuffer, int* pInt_BSType) +extern "C" bool ModuleProtocol_Parse_BackService(LPCXSTR lpszMsgBuffer, int nMsgLen, XCHAR * ptszSrcBuffer, XCHAR * ptszDstBuffer, XCHAR* ptszAPIBuffer, int* pInt_BSType) { - return m_ProtocolParse.ModuleProtocol_Parse_BackService(lpszMsgBuffer, nMsgLen, ptszSrcBuffer, ptszDstBuffer, pInt_BSType); + return m_ProtocolParse.ModuleProtocol_Parse_BackService(lpszMsgBuffer, nMsgLen, ptszSrcBuffer, ptszDstBuffer, ptszAPIBuffer, pInt_BSType); } extern "C" bool ModuleProtocol_Parse_Verifcation(LPCXSTR lpszMsgBuffer, int nMsgLen, XCHAR * ptszUserName, XCHAR * ptszUserPass) { diff --git a/XEngine_Source/XEngine_ServiceApp/XEngine_HttpApp/XEngine_TaskPost/TaskPost_BackService.cpp b/XEngine_Source/XEngine_ServiceApp/XEngine_HttpApp/XEngine_TaskPost/TaskPost_BackService.cpp index cd4a2ca..68bd272 100644 --- a/XEngine_Source/XEngine_ServiceApp/XEngine_HttpApp/XEngine_TaskPost/TaskPost_BackService.cpp +++ b/XEngine_Source/XEngine_ServiceApp/XEngine_HttpApp/XEngine_TaskPost/TaskPost_BackService.cpp @@ -30,13 +30,10 @@ bool HTTPTask_TaskPost_BackService(LPCXSTR lpszClientAddr, LPCXSTR lpszMsgBuffer CXEngine_MemoryPoolEx m_MemorySend(XENGINE_MEMORY_SIZE_MAX); CXEngine_MemoryPoolEx m_MemoryRecv(XENGINE_MEMORY_SIZE_MAX); - XCHAR tszSrcBuffer[XPATH_MAX]; - XCHAR tszDstBuffer[XPATH_MAX]; - RFCCOMPONENTS_HTTP_HDRPARAM st_HDRParam; //发送给客户端的参数 - - memset(tszSrcBuffer, '\0', sizeof(tszSrcBuffer)); - memset(tszDstBuffer, '\0', sizeof(tszDstBuffer)); - memset(&st_HDRParam, '\0', sizeof(RFCCOMPONENTS_HTTP_HDRPARAM)); + XCHAR tszSrcBuffer[XPATH_MAX] = {}; + XCHAR tszDstBuffer[XPATH_MAX] = {}; + XCHAR tszAPIBuffer[XPATH_MAX] = {}; + RFCCOMPONENTS_HTTP_HDRPARAM st_HDRParam = {}; //发送给客户端的参数 st_HDRParam.nHttpCode = 200; //HTTP CODE码 st_HDRParam.bIsClose = true; //收到回复后就关闭 @@ -68,7 +65,7 @@ bool HTTPTask_TaskPost_BackService(LPCXSTR lpszClientAddr, LPCXSTR lpszMsgBuffer return false; } } - if (!ModuleProtocol_Parse_BackService(lpszMsgBuffer, nMsgLen, tszSrcBuffer, tszDstBuffer, &nBSType)) + if (!ModuleProtocol_Parse_BackService(lpszMsgBuffer, nMsgLen, tszSrcBuffer, tszDstBuffer, tszAPIBuffer, &nBSType)) { st_HDRParam.nHttpCode = 400; HttpProtocol_Server_SendMsgEx(xhHTTPPacket, m_MemorySend.get(), &nSDLen, &st_HDRParam); @@ -342,11 +339,11 @@ bool HTTPTask_TaskPost_BackService(LPCXSTR lpszClientAddr, LPCXSTR lpszMsgBuffer st_AVScreen.nPosX = 0; st_AVScreen.nPosY = 0; #ifdef _MSC_BUILD - xhScreen = AVCollect_Video_Init("gdigrab", "desktop", &st_AVScreen, HTTPTask_TaskPost_CBVideo); + xhScreen = AVCollect_Video_Init("gdigrab", tszDstBuffer, &st_AVScreen, HTTPTask_TaskPost_CBVideo); #elif __linux__ - xhScreen = AVCollect_Video_Init("x11grab", ":0", &st_AVScreen, HTTPTask_TaskPost_CBVideo); + xhScreen = AVCollect_Video_Init("x11grab", tszDstBuffer, &st_AVScreen, HTTPTask_TaskPost_CBVideo); #else - xhScreen = AVCollect_Video_Init("avfoundation", "1", &st_AVScreen, HTTPTask_TaskPost_CBVideo); + xhScreen = AVCollect_Video_Init("avfoundation", tszDstBuffer, &st_AVScreen, HTTPTask_TaskPost_CBVideo); #endif if (NULL == xhScreen) { @@ -377,13 +374,13 @@ bool HTTPTask_TaskPost_BackService(LPCXSTR lpszClientAddr, LPCXSTR lpszMsgBuffer XLOG_PRINT(xhLog, XENGINE_HELPCOMPONENTS_XLOG_IN_LOGLEVEL_ERROR, _X("HTTP客户端:%s,推流:%s 请求失败,错误码:%lX"), lpszClientAddr, tszDstBuffer, StreamClient_GetLastError()); return false; } - XClient_StreamPush_LiveOutput(xhStream, tszDstBuffer, _X("flv")); + XClient_StreamPush_LiveOutput(xhStream, tszAPIBuffer, _X("flv")); XClient_StreamPush_LiveCreate(xhStream, &st_AVInfo); bRecord = true; AVCollect_Video_Start(xhScreen); HttpProtocol_Server_SendMsgEx(xhHTTPPacket, m_MemorySend.get(), &nSDLen, &st_HDRParam); XEngine_Network_Send(lpszClientAddr, m_MemorySend.get(), nSDLen); - XLOG_PRINT(xhLog, XENGINE_HELPCOMPONENTS_XLOG_IN_LOGLEVEL_INFO, _X("HTTP客户端:%s,开始屏幕录制推流:%s 请求成功"), lpszClientAddr, tszDstBuffer); + XLOG_PRINT(xhLog, XENGINE_HELPCOMPONENTS_XLOG_IN_LOGLEVEL_INFO, _X("HTTP客户端:%s,开始屏幕录制,音频:%s,视频:%s 推流:%s 请求成功"), lpszClientAddr, tszSrcBuffer, tszDstBuffer, tszAPIBuffer); } break; case XENGINE_COMMUNICATION_PROTOCOL_OPERATOR_CODE_BS_RECORDSTOP: From 6b49d2a57d909c6f898f0179aa388295a0eaa71c Mon Sep 17 00:00:00 2001 From: qyt <486179@qq.com> Date: Thu, 26 Jun 2025 14:37:48 +0800 Subject: [PATCH 20/30] added:completed notify for back service --- .../ModuleProtocol_Define.h | 24 +++++++++ .../ModuleProtocol_Packet.cpp | 51 +++++++++++++++++++ .../ModuleProtocol_Packet.h | 1 + .../XEngine_ModuleProtocol.def | 1 + XEngine_Source/XEngine_ModuleProtocol/pch.cpp | 4 ++ .../XEngine_TaskPost/TaskPost_BackService.cpp | 20 ++++++++ 6 files changed, 101 insertions(+) diff --git a/XEngine_Source/XEngine_ModuleProtocol/ModuleProtocol_Define.h b/XEngine_Source/XEngine_ModuleProtocol/ModuleProtocol_Define.h index b29d602..273e517 100644 --- a/XEngine_Source/XEngine_ModuleProtocol/ModuleProtocol_Define.h +++ b/XEngine_Source/XEngine_ModuleProtocol/ModuleProtocol_Define.h @@ -848,6 +848,30 @@ extern "C" bool ModuleProtocol_Packet_IPAddr(XCHAR* ptszMSGBuffer, int* pInt_MSG 备注: *********************************************************************/ extern "C" bool ModuleProtocol_Packet_MacInfo(XCHAR* ptszMSGBuffer, int* pInt_MSGLen, XENGINE_MACADDRINFO* pSt_MacInfo); +/******************************************************************** +函数名称:ModuleProtocol_Packet_BackNotify +函数功能:后台服务通知协议 + 参数.一:ptszMsgBuffer + In/Out:Out + 类型:字符指针 + 可空:N + 意思:输出打好包的缓冲区 + 参数.二:pInt_MsgLen + In/Out:Out + 类型:整数型指针 + 可空:N + 意思:输出缓冲区大小 + 参数.三:nCode + In/Out:In + 类型:整数型 + 可空:N + 意思:输入返回的值 +返回值 + 类型:逻辑型 + 意思:是否成功 +备注: +*********************************************************************/ +extern "C" bool ModuleProtocol_Packet_BackNotify(XCHAR* ptszMSGBuffer, int* pInt_MSGLen, int nCode, int nOPerator, LPCXSTR lpszSourceStr, LPCXSTR lpszDestStr, LPCXSTR lpszAPIStr); /************************************************************************/ /* 导出的协议解析函数 */ /************************************************************************/ diff --git a/XEngine_Source/XEngine_ModuleProtocol/ModuleProtocol_Packet/ModuleProtocol_Packet.cpp b/XEngine_Source/XEngine_ModuleProtocol/ModuleProtocol_Packet/ModuleProtocol_Packet.cpp index e6fe95f..36f2403 100644 --- a/XEngine_Source/XEngine_ModuleProtocol/ModuleProtocol_Packet/ModuleProtocol_Packet.cpp +++ b/XEngine_Source/XEngine_ModuleProtocol/ModuleProtocol_Packet/ModuleProtocol_Packet.cpp @@ -1574,6 +1574,57 @@ bool CModuleProtocol_Packet::ModuleProtocol_Packet_MacInfo(XCHAR* ptszMSGBuffer, return true; } /******************************************************************** +函数名称:ModuleProtocol_Packet_BackNotify +函数功能:后台服务通知协议 + 参数.一:ptszMsgBuffer + In/Out:Out + 类型:字符指针 + 可空:N + 意思:输出打好包的缓冲区 + 参数.二:pInt_MsgLen + In/Out:Out + 类型:整数型指针 + 可空:N + 意思:输出缓冲区大小 + 参数.三:nCode + In/Out:In + 类型:整数型 + 可空:N + 意思:输入返回的值 +返回值 + 类型:逻辑型 + 意思:是否成功 +备注: +*********************************************************************/ +bool CModuleProtocol_Packet::ModuleProtocol_Packet_BackNotify(XCHAR* ptszMSGBuffer, int* pInt_MSGLen, int nCode, int nOPerator, LPCXSTR lpszSourceStr, LPCXSTR lpszDestStr, LPCXSTR lpszAPIStr) +{ + ModuleProtocol_IsErrorOccur = false; + + if ((NULL == ptszMSGBuffer) || (NULL == pInt_MSGLen)) + { + ModuleProtocol_IsErrorOccur = true; + ModuleProtocol_dwErrorCode = ERROR_XENGINE_APISERVICE_MODULE_PROTOCOL_PACKET_PARAMENT; + return false; + } + Json::Value st_JsonRoot; + Json::Value st_JsonObject; + Json::StreamWriterBuilder st_JsonBuilder; + + st_JsonObject["nOPerator"] = nOPerator; + st_JsonObject["lpszSourceStr"] = lpszSourceStr; + st_JsonObject["lpszDestStr"] = lpszDestStr; + st_JsonObject["lpszAPIStr"] = lpszAPIStr; + + st_JsonRoot["code"] = nCode; + st_JsonRoot["data"] = st_JsonObject; + st_JsonBuilder["emitUTF8"] = true; + + *pInt_MSGLen = Json::writeString(st_JsonBuilder, st_JsonRoot).length(); + memcpy(ptszMSGBuffer, Json::writeString(st_JsonBuilder, st_JsonRoot).c_str(), *pInt_MSGLen); + + return true; +} +/******************************************************************** 函数名称:ModuleProtocol_Packet_P2PLan 函数功能:响应同步局域网地址列表 参数.一:ptszMsgBuffer diff --git a/XEngine_Source/XEngine_ModuleProtocol/ModuleProtocol_Packet/ModuleProtocol_Packet.h b/XEngine_Source/XEngine_ModuleProtocol/ModuleProtocol_Packet/ModuleProtocol_Packet.h index 66060cb..832b66f 100644 --- a/XEngine_Source/XEngine_ModuleProtocol/ModuleProtocol_Packet/ModuleProtocol_Packet.h +++ b/XEngine_Source/XEngine_ModuleProtocol/ModuleProtocol_Packet/ModuleProtocol_Packet.h @@ -47,6 +47,7 @@ class CModuleProtocol_Packet bool ModuleProtocol_Packet_PhoneInfo(XCHAR* ptszMSGBuffer, int* pInt_MSGLen, XENGINE_PHONEINFO* pSt_PhoneInfo); bool ModuleProtocol_Packet_IPAddr(XCHAR* ptszMSGBuffer, int* pInt_MSGLen, XENGINE_IPADDRINFO* pSt_IPAddrInfo); bool ModuleProtocol_Packet_MacInfo(XCHAR* ptszMSGBuffer, int* pInt_MSGLen, XENGINE_MACADDRINFO* pSt_MacInfo); + bool ModuleProtocol_Packet_BackNotify(XCHAR* ptszMSGBuffer, int* pInt_MSGLen, int nCode,int nOPerator, LPCXSTR lpszSourceStr, LPCXSTR lpszDestStr, LPCXSTR lpszAPIStr); public: bool ModuleProtocol_Packet_P2PLan(XCHAR* ptszMsgBuffer, int* pInt_MsgLen, XENGINE_P2XPPEER_PROTOCOL*** pppSt_ListClients, int nListCount); bool ModuleProtocol_Packet_P2PWLan(XCHAR* ptszMsgBuffer, int* pInt_MsgLen, list* pStl_ListClients); diff --git a/XEngine_Source/XEngine_ModuleProtocol/XEngine_ModuleProtocol.def b/XEngine_Source/XEngine_ModuleProtocol/XEngine_ModuleProtocol.def index a3c3296..86952f3 100644 --- a/XEngine_Source/XEngine_ModuleProtocol/XEngine_ModuleProtocol.def +++ b/XEngine_Source/XEngine_ModuleProtocol/XEngine_ModuleProtocol.def @@ -28,6 +28,7 @@ EXPORTS ModuleProtocol_Packet_PhoneInfo ModuleProtocol_Packet_IPAddr ModuleProtocol_Packet_MacInfo + ModuleProtocol_Packet_BackNotify ModuleProtocol_Packet_P2PLan ModuleProtocol_Packet_P2PWLan ModuleProtocol_Packet_P2PWList diff --git a/XEngine_Source/XEngine_ModuleProtocol/pch.cpp b/XEngine_Source/XEngine_ModuleProtocol/pch.cpp index 1d6d0db..925217b 100644 --- a/XEngine_Source/XEngine_ModuleProtocol/pch.cpp +++ b/XEngine_Source/XEngine_ModuleProtocol/pch.cpp @@ -131,6 +131,10 @@ extern "C" bool ModuleProtocol_Packet_MacInfo(XCHAR* ptszMSGBuffer, int* pInt_MS { return m_ProtocolPacket.ModuleProtocol_Packet_MacInfo(ptszMSGBuffer, pInt_MSGLen, pSt_MacInfo); } +extern "C" bool ModuleProtocol_Packet_BackNotify(XCHAR* ptszMSGBuffer, int* pInt_MSGLen, int nCode, int nOPerator, LPCXSTR lpszSourceStr, LPCXSTR lpszDestStr, LPCXSTR lpszAPIStr) +{ + return m_ProtocolPacket.ModuleProtocol_Packet_BackNotify(ptszMSGBuffer, pInt_MSGLen, nCode, nOPerator, lpszSourceStr, lpszDestStr, lpszAPIStr); +} extern "C" bool ModuleProtocol_Packet_P2PLan(XCHAR * ptszMsgBuffer, int* pInt_MsgLen, XENGINE_P2XPPEER_PROTOCOL * **pppSt_ListClients, int nListCount) { return m_ProtocolPacket.ModuleProtocol_Packet_P2PLan(ptszMsgBuffer, pInt_MsgLen, pppSt_ListClients, nListCount); diff --git a/XEngine_Source/XEngine_ServiceApp/XEngine_HttpApp/XEngine_TaskPost/TaskPost_BackService.cpp b/XEngine_Source/XEngine_ServiceApp/XEngine_HttpApp/XEngine_TaskPost/TaskPost_BackService.cpp index 68bd272..8c7692d 100644 --- a/XEngine_Source/XEngine_ServiceApp/XEngine_HttpApp/XEngine_TaskPost/TaskPost_BackService.cpp +++ b/XEngine_Source/XEngine_ServiceApp/XEngine_HttpApp/XEngine_TaskPost/TaskPost_BackService.cpp @@ -97,6 +97,8 @@ bool HTTPTask_TaskPost_BackService(LPCXSTR lpszClientAddr, LPCXSTR lpszMsgBuffer } HttpProtocol_Server_SendMsgEx(xhHTTPPacket, m_MemorySend.get(), &nSDLen, &st_HDRParam); XEngine_Network_Send(lpszClientAddr, m_MemorySend.get(), nSDLen); + + XLONG dwRet = 0; while (true) { XCLIENT_APIFILE st_TaskInfo; @@ -104,14 +106,22 @@ bool HTTPTask_TaskPost_BackService(LPCXSTR lpszClientAddr, LPCXSTR lpszMsgBuffer if (!APIClient_File_Query(xhTask, &st_TaskInfo)) { + dwRet = APIClient_GetLastError(); break; } if ((ENUM_XCLIENT_APIHELP_FILE_STATUS_INIT != st_TaskInfo.en_DownStatus) && (ENUM_XCLIENT_APIHELP_FILE_STATUS_DOWNLOADDING != st_TaskInfo.en_DownStatus)) { + dwRet = APIClient_GetLastError(); break; } } APIClient_File_Delete(xhTask); + //完成通知 + if (_tcsxlen(tszAPIBuffer) > 0) + { + ModuleProtocol_Packet_BackNotify(m_MemorySend.get(), &nSDLen, (int)dwRet, XENGINE_COMMUNICATION_PROTOCOL_OPERATOR_CODE_BS_DOWNFILE, tszSrcBuffer, tszDstBuffer, tszAPIBuffer); + APIClient_Http_Request(_X("POST"), tszAPIBuffer, m_MemorySend.get()); + } XLOG_PRINT(xhLog, XENGINE_HELPCOMPONENTS_XLOG_IN_LOGLEVEL_INFO, _X("HTTP客户端:%s:下载任务处理成功,下载地址:%s,保存地址:%s"),lpszClientAddr, tszSrcBuffer, tszDstBuffer); } break; @@ -162,6 +172,8 @@ bool HTTPTask_TaskPost_BackService(LPCXSTR lpszClientAddr, LPCXSTR lpszMsgBuffer } HttpProtocol_Server_SendMsgEx(xhHTTPPacket, m_MemorySend.get(), &nSDLen, &st_HDRParam); XEngine_Network_Send(lpszClientAddr, m_MemorySend.get(), nSDLen); + + XLONG dwRet = 0; while (true) { XCLIENT_APIFILE st_TaskInfo; @@ -169,14 +181,22 @@ bool HTTPTask_TaskPost_BackService(LPCXSTR lpszClientAddr, LPCXSTR lpszMsgBuffer if (!APIClient_File_Query(xhTask, &st_TaskInfo)) { + dwRet = APIClient_GetLastError(); break; } if (ENUM_XCLIENT_APIHELP_FILE_STATUS_DOWNLOADDING != st_TaskInfo.en_DownStatus && (ENUM_XCLIENT_APIHELP_FILE_STATUS_INIT != st_TaskInfo.en_DownStatus)) { + dwRet = APIClient_GetLastError(); break; } } APIClient_File_Delete(xhTask); + //完成通知 + if (_tcsxlen(tszAPIBuffer) > 0) + { + ModuleProtocol_Packet_BackNotify(m_MemorySend.get(), &nSDLen, (int)dwRet, XENGINE_COMMUNICATION_PROTOCOL_OPERATOR_CODE_BS_UPFILE, tszSrcBuffer, tszDstBuffer, tszAPIBuffer); + APIClient_Http_Request(_X("POST"), tszAPIBuffer, m_MemorySend.get()); + } XLOG_PRINT(xhLog, XENGINE_HELPCOMPONENTS_XLOG_IN_LOGLEVEL_INFO, _X("HTTP客户端:%s:上传文件处理成功,上传的文件:%s,上传的地址:%s"), lpszClientAddr, tszSrcBuffer, tszDstBuffer); } break; From db9c1fc691d8187130d4919f4a77f1bdb647f0ba Mon Sep 17 00:00:00 2001 From: qyt <486179@qq.com> Date: Thu, 26 Jun 2025 15:57:13 +0800 Subject: [PATCH 21/30] delete:audio and video encoder code for back service --- .../XEngine_TaskPost/TaskPost_BackService.cpp | 27 +++---------------- 1 file changed, 4 insertions(+), 23 deletions(-) diff --git a/XEngine_Source/XEngine_ServiceApp/XEngine_HttpApp/XEngine_TaskPost/TaskPost_BackService.cpp b/XEngine_Source/XEngine_ServiceApp/XEngine_HttpApp/XEngine_TaskPost/TaskPost_BackService.cpp index 8c7692d..0d89f38 100644 --- a/XEngine_Source/XEngine_ServiceApp/XEngine_HttpApp/XEngine_TaskPost/TaskPost_BackService.cpp +++ b/XEngine_Source/XEngine_ServiceApp/XEngine_HttpApp/XEngine_TaskPost/TaskPost_BackService.cpp @@ -3,8 +3,6 @@ static bool bRecord = false; static XHANDLE xhSound = NULL; static XHANDLE xhScreen = NULL; -static XNETHANDLE xhAudio = 0; -static XNETHANDLE xhVideo = 0; static XHANDLE xhStream = NULL; void XCALLBACK HTTPTask_TaskPost_CBVideo(uint8_t* ptszAVBuffer, int nAVLen, AVCOLLECT_TIMEINFO* pSt_TimeInfo, XPVOID lParam) @@ -341,14 +339,6 @@ bool HTTPTask_TaskPost_BackService(LPCXSTR lpszClientAddr, LPCXSTR lpszMsgBuffer //音频编码参数 st_AVInfo.st_AudioInfo.enAVCodec = ENUM_XENGINE_AVCODEC_AUDIO_TYPE_AAC; st_AVInfo.st_AudioInfo.nSampleFmt = ENUM_AVCODEC_AUDIO_SAMPLEFMT_S16; - if (!AudioCodec_Stream_EnInit(&xhAudio, &st_AVInfo.st_AudioInfo)) - { - st_HDRParam.nHttpCode = 400; - HttpProtocol_Server_SendMsgEx(xhHTTPPacket, m_MemorySend.get(), &nSDLen, &st_HDRParam); - XEngine_Network_Send(lpszClientAddr, m_MemorySend.get(), nSDLen); - XLOG_PRINT(xhLog, XENGINE_HELPCOMPONENTS_XLOG_IN_LOGLEVEL_ERROR, _X("HTTP客户端:%s,初始化音频编码器失败,错误码:%lX"), lpszClientAddr, AudioCodec_GetLastError()); - return false; - } AVCollect_Audio_Start(xhSound); } //屏幕采集 @@ -358,6 +348,7 @@ bool HTTPTask_TaskPost_BackService(LPCXSTR lpszClientAddr, LPCXSTR lpszMsgBuffer st_AVScreen.nFrameRate = 24; st_AVScreen.nPosX = 0; st_AVScreen.nPosY = 0; + _xstprintf(st_AVScreen.tszVideoSize, _X("%s"), _X("1920x1080")); #ifdef _MSC_BUILD xhScreen = AVCollect_Video_Init("gdigrab", tszDstBuffer, &st_AVScreen, HTTPTask_TaskPost_CBVideo); #elif __linux__ @@ -374,17 +365,7 @@ bool HTTPTask_TaskPost_BackService(LPCXSTR lpszClientAddr, LPCXSTR lpszMsgBuffer return false; } AVCollect_Video_GetInfo(xhScreen, &st_AVInfo); - st_AVInfo.st_VideoInfo.enAVCodec = ENUM_XENGINE_AVCODEC_VIDEO_TYPE_H264; - if (!VideoCodec_Stream_EnInit(&xhVideo, &st_AVInfo.st_VideoInfo)) - { - st_HDRParam.nHttpCode = 400; - HttpProtocol_Server_SendMsgEx(xhHTTPPacket, m_MemorySend.get(), &nSDLen, &st_HDRParam); - XEngine_Network_Send(lpszClientAddr, m_MemorySend.get(), nSDLen); - XLOG_PRINT(xhLog, XENGINE_HELPCOMPONENTS_XLOG_IN_LOGLEVEL_ERROR, _X("HTTP客户端:%s,初始化视频编码器失败,错误码:%lX"), lpszClientAddr, VideoCodec_GetLastError()); - return false; - } - xhStream = XClient_StreamPush_LiveInit(); if (NULL == xhStream) { @@ -394,10 +375,12 @@ bool HTTPTask_TaskPost_BackService(LPCXSTR lpszClientAddr, LPCXSTR lpszMsgBuffer XLOG_PRINT(xhLog, XENGINE_HELPCOMPONENTS_XLOG_IN_LOGLEVEL_ERROR, _X("HTTP客户端:%s,推流:%s 请求失败,错误码:%lX"), lpszClientAddr, tszDstBuffer, StreamClient_GetLastError()); return false; } + bRecord = true; XClient_StreamPush_LiveOutput(xhStream, tszAPIBuffer, _X("flv")); XClient_StreamPush_LiveCreate(xhStream, &st_AVInfo); - bRecord = true; + AVCollect_Video_Start(xhScreen); + XClient_StreamPush_LiveWriteHdr(xhStream); HttpProtocol_Server_SendMsgEx(xhHTTPPacket, m_MemorySend.get(), &nSDLen, &st_HDRParam); XEngine_Network_Send(lpszClientAddr, m_MemorySend.get(), nSDLen); XLOG_PRINT(xhLog, XENGINE_HELPCOMPONENTS_XLOG_IN_LOGLEVEL_INFO, _X("HTTP客户端:%s,开始屏幕录制,音频:%s,视频:%s 推流:%s 请求成功"), lpszClientAddr, tszSrcBuffer, tszDstBuffer, tszAPIBuffer); @@ -410,8 +393,6 @@ bool HTTPTask_TaskPost_BackService(LPCXSTR lpszClientAddr, LPCXSTR lpszMsgBuffer AVCollect_Video_Destory(xhScreen); AVCollect_Audio_Destory(xhSound); XClient_StreamPush_LiveClose(xhStream); - VideoCodec_Stream_Destroy(xhVideo); - AudioCodec_Stream_Destroy(xhAudio); bRecord = false; } HttpProtocol_Server_SendMsgEx(xhHTTPPacket, m_MemorySend.get(), &nSDLen, &st_HDRParam); From 1e958e06f5d1b6adee6a45623932a14136c2c8e0 Mon Sep 17 00:00:00 2001 From: qyt <486179@qq.com> Date: Wed, 2 Jul 2025 15:17:20 +0800 Subject: [PATCH 22/30] fixed:screen stream push not work --- .../XEngine_TaskPost/TaskPost_BackService.cpp | 39 +++++++++++++++++-- 1 file changed, 35 insertions(+), 4 deletions(-) diff --git a/XEngine_Source/XEngine_ServiceApp/XEngine_HttpApp/XEngine_TaskPost/TaskPost_BackService.cpp b/XEngine_Source/XEngine_ServiceApp/XEngine_HttpApp/XEngine_TaskPost/TaskPost_BackService.cpp index 0d89f38..0ecb494 100644 --- a/XEngine_Source/XEngine_ServiceApp/XEngine_HttpApp/XEngine_TaskPost/TaskPost_BackService.cpp +++ b/XEngine_Source/XEngine_ServiceApp/XEngine_HttpApp/XEngine_TaskPost/TaskPost_BackService.cpp @@ -4,6 +4,7 @@ static bool bRecord = false; static XHANDLE xhSound = NULL; static XHANDLE xhScreen = NULL; static XHANDLE xhStream = NULL; +static XHANDLE xhAudioFifo = NULL; void XCALLBACK HTTPTask_TaskPost_CBVideo(uint8_t* ptszAVBuffer, int nAVLen, AVCOLLECT_TIMEINFO* pSt_TimeInfo, XPVOID lParam) { @@ -14,9 +15,21 @@ void XCALLBACK HTTPTask_TaskPost_CBVideo(uint8_t* ptszAVBuffer, int nAVLen, AVCO } void XCALLBACK HTTPTask_TaskPost_CBAudio(uint8_t* ptszAVBuffer, int nAVLen, AVCOLLECT_TIMEINFO* pSt_TimeInfo, XPVOID lParam) { - if (!XClient_StreamPush_LiveAudio(xhStream, ptszAVBuffer, nAVLen)) + if (AudioCodec_Help_FifoSend(xhAudioFifo, (LPCXSTR)ptszAVBuffer, nAVLen)) { - XLOG_PRINT(xhLog, XENGINE_HELPCOMPONENTS_XLOG_IN_LOGLEVEL_ERROR, _X("音频采集器,推流编码失败,需要关闭推流服务,错误码:%lX"), StreamClient_GetLastError()); + while (true) + { + int nALen = 0; + XBYTE tszAVBuffer[8192] = {}; + if (!AudioCodec_Help_FifoRecv(xhAudioFifo, tszAVBuffer, &nAVLen)) + { + break; + } + if (!XClient_StreamPush_LiveAudio(xhStream, tszAVBuffer, nAVLen)) + { + XLOG_PRINT(xhLog, XENGINE_HELPCOMPONENTS_XLOG_IN_LOGLEVEL_ERROR, _X("音频采集器,推流编码失败,需要关闭推流服务,错误码:%lX"), StreamClient_GetLastError()); + } + } } } @@ -334,12 +347,20 @@ bool HTTPTask_TaskPost_BackService(LPCXSTR lpszClientAddr, LPCXSTR lpszMsgBuffer XLOG_PRINT(xhLog, XENGINE_HELPCOMPONENTS_XLOG_IN_LOGLEVEL_ERROR, _X("HTTP客户端:%s,初始化音频采集器请求失败,错误码:%lX"), lpszClientAddr, AVCollect_GetLastError()); return false; } + xhAudioFifo = AudioCodec_Help_FifoInit(ENUM_AVCODEC_AUDIO_SAMPLEFMT_S16, 2); + if (NULL == xhAudioFifo) + { + st_HDRParam.nHttpCode = 400; + HttpProtocol_Server_SendMsgEx(xhHTTPPacket, m_MemorySend.get(), &nSDLen, &st_HDRParam); + XEngine_Network_Send(lpszClientAddr, m_MemorySend.get(), nSDLen); + XLOG_PRINT(xhLog, XENGINE_HELPCOMPONENTS_XLOG_IN_LOGLEVEL_ERROR, _X("HTTP客户端:%s,初始化音频采集器请求失败,错误码:%lX"), lpszClientAddr, AudioCodec_GetLastError()); + return false; + } st_AVInfo.st_AudioInfo.bEnable = true; AVCollect_Audio_GetInfo(xhSound, &st_AVInfo); //音频编码参数 st_AVInfo.st_AudioInfo.enAVCodec = ENUM_XENGINE_AVCODEC_AUDIO_TYPE_AAC; st_AVInfo.st_AudioInfo.nSampleFmt = ENUM_AVCODEC_AUDIO_SAMPLEFMT_S16; - AVCollect_Audio_Start(xhSound); } //屏幕采集 AVCOLLECT_SCREENINFO st_AVScreen; @@ -378,7 +399,14 @@ bool HTTPTask_TaskPost_BackService(LPCXSTR lpszClientAddr, LPCXSTR lpszMsgBuffer bRecord = true; XClient_StreamPush_LiveOutput(xhStream, tszAPIBuffer, _X("flv")); XClient_StreamPush_LiveCreate(xhStream, &st_AVInfo); - + + AVCODEC_TIMEBASE st_VideoTime = {}; + AVCODEC_TIMEBASE st_AudioTime = {}; + AVCollect_Audio_GetTimeBase(xhSound, &st_AudioTime); + AVCollect_Video_GetTimeBase(xhScreen, &st_VideoTime); + XClient_StreamPush_LiveTime(xhStream, &st_VideoTime, &st_AudioTime); + + AVCollect_Audio_Start(xhSound); AVCollect_Video_Start(xhScreen); XClient_StreamPush_LiveWriteHdr(xhStream); HttpProtocol_Server_SendMsgEx(xhHTTPPacket, m_MemorySend.get(), &nSDLen, &st_HDRParam); @@ -393,6 +421,9 @@ bool HTTPTask_TaskPost_BackService(LPCXSTR lpszClientAddr, LPCXSTR lpszMsgBuffer AVCollect_Video_Destory(xhScreen); AVCollect_Audio_Destory(xhSound); XClient_StreamPush_LiveClose(xhStream); + xhScreen = NULL; + xhSound = NULL; + xhStream = NULL; bRecord = false; } HttpProtocol_Server_SendMsgEx(xhHTTPPacket, m_MemorySend.get(), &nSDLen, &st_HDRParam); From 3240a24140a56cc71bd6bbb240347c8f4ac3f4ad Mon Sep 17 00:00:00 2001 From: qyt <486179@qq.com> Date: Wed, 2 Jul 2025 16:16:52 +0800 Subject: [PATCH 23/30] ci:added rocky linux 10 support --- .github/workflows/Rocky_build.yml | 22 +++++++++++++++++----- .github/workflows/release.yml | 14 +++++++------- 2 files changed, 24 insertions(+), 12 deletions(-) diff --git a/.github/workflows/Rocky_build.yml b/.github/workflows/Rocky_build.yml index ada2cae..7f75d5f 100644 --- a/.github/workflows/Rocky_build.yml +++ b/.github/workflows/Rocky_build.yml @@ -16,7 +16,7 @@ jobs: build: runs-on: ${{ matrix.runner }} container: - image: rockylinux/rockylinux:9.5 + image: rockylinux/rockylinux:${{ matrix.os_version }} options: --platform ${{ matrix.platform }} strategy: matrix: @@ -25,10 +25,22 @@ jobs: runner: ubuntu-24.04 platform: linux/amd64 artifact: x86-64 + os_version: 9 + - arch: amd64 + runner: ubuntu-24.04 + platform: linux/amd64 + artifact: x86-64 + os_version: 10 + - arch: arm64 + runner: ubuntu-24.04-arm + platform: linux/arm64 + artifact: Arm64 + os_version: 9 - arch: arm64 runner: ubuntu-24.04-arm platform: linux/arm64 artifact: Arm64 + os_version: 10 steps: - name: Checkout main repository code @@ -69,9 +81,9 @@ jobs: - 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_${{ matrix.artifact }}.zip - unzip ./XEngine_RockyLinux_9_${{ matrix.artifact }}.zip -d ./XEngine_RockyLinux_9_${{ matrix.artifact }} - cd XEngine_RockyLinux_9_${{ matrix.artifact }} + wget https://github.com/libxengine/libxengine/releases/download/$latest_tag/XEngine_RockyLinux_${{ matrix.os_version }}_${{ matrix.artifact }}.zip + unzip ./XEngine_RockyLinux_${{ matrix.os_version }}_${{ matrix.artifact }}.zip -d ./XEngine_RockyLinux_${{ matrix.os_version }}_${{ matrix.artifact }} + cd XEngine_RockyLinux_${{ matrix.os_version }}_${{ matrix.artifact }} chmod 777 * ./XEngine_LINEnv.sh -i 3 @@ -100,6 +112,6 @@ jobs: - name: Upload folder as artifact with RockyLinux uses: actions/upload-artifact@v4 with: - name: XEngine_APIServiceApp-RockyLinux_9_${{ matrix.artifact }} + name: XEngine_APIServiceApp-RockyLinux_${{ matrix.os_version }}_${{ matrix.artifact }} path: XEngine_Release/ retention-days: 1 diff --git a/.github/workflows/release.yml b/.github/workflows/release.yml index 87c7351..bce37d9 100644 --- a/.github/workflows/release.yml +++ b/.github/workflows/release.yml @@ -17,7 +17,7 @@ jobs: fetch-depth: 0 - name: Download ubuntu build - uses: dawidd6/action-download-artifact@v6 + uses: dawidd6/action-download-artifact with: workflow: Ubuntu_build.yml workflow_conclusion: success @@ -26,7 +26,7 @@ jobs: if_no_artifact_found: fail path: ./XRelease/ - name: Download debian build - uses: dawidd6/action-download-artifact@v6 + uses: dawidd6/action-download-artifact with: workflow: debian_build.yml workflow_conclusion: success @@ -35,7 +35,7 @@ jobs: if_no_artifact_found: fail path: ./XRelease/ - name: Download fedora build - uses: dawidd6/action-download-artifact@v6 + uses: dawidd6/action-download-artifact with: workflow: fedora_build.yml workflow_conclusion: success @@ -44,7 +44,7 @@ jobs: if_no_artifact_found: fail path: ./XRelease/ - name: Download Rocky build - uses: dawidd6/action-download-artifact@v6 + uses: dawidd6/action-download-artifact with: workflow: Rocky_build.yml workflow_conclusion: success @@ -53,7 +53,7 @@ jobs: if_no_artifact_found: fail path: ./XRelease/ - name: Download macbuild - uses: dawidd6/action-download-artifact@v6 + uses: dawidd6/action-download-artifact with: workflow: macbuild.yml workflow_conclusion: success @@ -62,7 +62,7 @@ jobs: if_no_artifact_found: fail path: ./XRelease/ - name: Download msbuild - uses: dawidd6/action-download-artifact@v6 + uses: dawidd6/action-download-artifact with: workflow: msbuild.yml workflow_conclusion: success @@ -104,7 +104,7 @@ jobs: echo "$release_notes" > release_notes.txt - name: Release - uses: softprops/action-gh-release@v2 + uses: softprops/action-gh-release env: GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} with: From 69bf7788ff7b05c24e2471ae462753f9afc86b84 Mon Sep 17 00:00:00 2001 From: qyt <486179@qq.com> Date: Wed, 2 Jul 2025 17:07:57 +0800 Subject: [PATCH 24/30] ci:release version Designate --- .github/workflows/release.yml | 14 +++++++------- 1 file changed, 7 insertions(+), 7 deletions(-) diff --git a/.github/workflows/release.yml b/.github/workflows/release.yml index bce37d9..6df2191 100644 --- a/.github/workflows/release.yml +++ b/.github/workflows/release.yml @@ -17,7 +17,7 @@ jobs: fetch-depth: 0 - name: Download ubuntu build - uses: dawidd6/action-download-artifact + uses: dawidd6/action-download-artifact@v11 with: workflow: Ubuntu_build.yml workflow_conclusion: success @@ -26,7 +26,7 @@ jobs: if_no_artifact_found: fail path: ./XRelease/ - name: Download debian build - uses: dawidd6/action-download-artifact + uses: dawidd6/action-download-artifact@v11 with: workflow: debian_build.yml workflow_conclusion: success @@ -35,7 +35,7 @@ jobs: if_no_artifact_found: fail path: ./XRelease/ - name: Download fedora build - uses: dawidd6/action-download-artifact + uses: dawidd6/action-download-artifact@v11 with: workflow: fedora_build.yml workflow_conclusion: success @@ -44,7 +44,7 @@ jobs: if_no_artifact_found: fail path: ./XRelease/ - name: Download Rocky build - uses: dawidd6/action-download-artifact + uses: dawidd6/action-download-artifact@v11 with: workflow: Rocky_build.yml workflow_conclusion: success @@ -53,7 +53,7 @@ jobs: if_no_artifact_found: fail path: ./XRelease/ - name: Download macbuild - uses: dawidd6/action-download-artifact + uses: dawidd6/action-download-artifact@v11 with: workflow: macbuild.yml workflow_conclusion: success @@ -62,7 +62,7 @@ jobs: if_no_artifact_found: fail path: ./XRelease/ - name: Download msbuild - uses: dawidd6/action-download-artifact + uses: dawidd6/action-download-artifact@v11 with: workflow: msbuild.yml workflow_conclusion: success @@ -104,7 +104,7 @@ jobs: echo "$release_notes" > release_notes.txt - name: Release - uses: softprops/action-gh-release + uses: softprops/action-gh-release@v2 env: GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} with: From e934ba256cebbf48d53c743362250350421e70f2 Mon Sep 17 00:00:00 2001 From: qyt <486179@qq.com> Date: Thu, 3 Jul 2025 11:39:08 +0800 Subject: [PATCH 25/30] ci:fixed mirror sync problem --- .github/workflows/Rocky_build.yml | 2 ++ 1 file changed, 2 insertions(+) diff --git a/.github/workflows/Rocky_build.yml b/.github/workflows/Rocky_build.yml index 7f75d5f..50d5fec 100644 --- a/.github/workflows/Rocky_build.yml +++ b/.github/workflows/Rocky_build.yml @@ -75,6 +75,8 @@ jobs: - name: install system package run: | + dnf clean all + dnf makecache dnf update -y dnf install gcc g++ make git jq unzip wget -y From 48b89b1d2676cffbacaa9c865f5417f9cd74fa06 Mon Sep 17 00:00:00 2001 From: qyt <486179@qq.com> Date: Thu, 3 Jul 2025 13:59:16 +0800 Subject: [PATCH 26/30] update:read me --- .github/workflows/Rocky_build.yml | 1 + README.en.md | 1 + README.md | 1 + 3 files changed, 3 insertions(+) diff --git a/.github/workflows/Rocky_build.yml b/.github/workflows/Rocky_build.yml index 50d5fec..24e0388 100644 --- a/.github/workflows/Rocky_build.yml +++ b/.github/workflows/Rocky_build.yml @@ -77,6 +77,7 @@ jobs: run: | dnf clean all dnf makecache + dnf distro-sync -y dnf update -y dnf install gcc g++ make git jq unzip wget -y diff --git a/README.en.md b/README.en.md index f42ef00..ed6f355 100644 --- a/README.en.md +++ b/README.en.md @@ -58,6 +58,7 @@ It allows you to save 90% of information service costs in a year. 35. NTP Time Sync Protocol 36. mac address vendor query 37. ORC Get TEXT With image +38. P2P ## install diff --git a/README.md b/README.md index 3a62321..78a7250 100644 --- a/README.md +++ b/README.md @@ -61,6 +61,7 @@ c c++ interface api service 35. NTP时间同步协议 36. 支持MAC地址厂商查询 37. ORC图像文本提取 +38. P2P ## 安装教程 From 60408fdf2900dad4f516f53d8f9313cda57d7fed Mon Sep 17 00:00:00 2001 From: qyt <486179@qq.com> Date: Thu, 3 Jul 2025 14:52:35 +0800 Subject: [PATCH 27/30] fixed:build warn --- .../ModuleDatabase_Machine/ModuleDatabase_Machine.cpp | 2 +- .../XEngine_HttpApp/XEngine_TaskPost/TaskPost_BackService.cpp | 1 - XEngine_Source/XEngine_UserProtocol.h | 4 ++-- 3 files changed, 3 insertions(+), 4 deletions(-) diff --git a/XEngine_Source/XEngine_ModuleDatabase/ModuleDatabase_Machine/ModuleDatabase_Machine.cpp b/XEngine_Source/XEngine_ModuleDatabase/ModuleDatabase_Machine/ModuleDatabase_Machine.cpp index 28366af..dcf1966 100644 --- a/XEngine_Source/XEngine_ModuleDatabase/ModuleDatabase_Machine/ModuleDatabase_Machine.cpp +++ b/XEngine_Source/XEngine_ModuleDatabase/ModuleDatabase_Machine/ModuleDatabase_Machine.cpp @@ -92,7 +92,7 @@ bool CModuleDatabase_Machine::ModuleDatabase_Machine_Insert(XENGINE_MACHINEINFO* DBModule_dwErrorCode = ERROR_APISERVICE_MODULE_DATABASE_PARAMENT; return false; } - XCHAR tszSQLStatement[4096]; + XCHAR tszSQLStatement[10240]; memset(tszSQLStatement, '\0', sizeof(tszSQLStatement)); _xstprintf(tszSQLStatement, _X("INSERT INTO `XEngine_MachineList` (tszServiceName,tszMachineName,tszMachineUser,tszMachineSystem,tszMachineSoftware,tszMachineHardware,nTimeNumber,tszCreateTime) VALUES('%s','%s','%s','%s','%s','%s',%lld,now())"), pSt_MachineInfo->tszServiceName, pSt_MachineInfo->tszMachineName, pSt_MachineInfo->tszMachineUser, pSt_MachineInfo->tszMachineSystem, pSt_MachineInfo->tszMachineSoftware, pSt_MachineInfo->tszMachineHardware, pSt_MachineInfo->nTimeNumber); diff --git a/XEngine_Source/XEngine_ServiceApp/XEngine_HttpApp/XEngine_TaskPost/TaskPost_BackService.cpp b/XEngine_Source/XEngine_ServiceApp/XEngine_HttpApp/XEngine_TaskPost/TaskPost_BackService.cpp index 0ecb494..a673849 100644 --- a/XEngine_Source/XEngine_ServiceApp/XEngine_HttpApp/XEngine_TaskPost/TaskPost_BackService.cpp +++ b/XEngine_Source/XEngine_ServiceApp/XEngine_HttpApp/XEngine_TaskPost/TaskPost_BackService.cpp @@ -19,7 +19,6 @@ void XCALLBACK HTTPTask_TaskPost_CBAudio(uint8_t* ptszAVBuffer, int nAVLen, AVCO { while (true) { - int nALen = 0; XBYTE tszAVBuffer[8192] = {}; if (!AudioCodec_Help_FifoRecv(xhAudioFifo, tszAVBuffer, &nAVLen)) { diff --git a/XEngine_Source/XEngine_UserProtocol.h b/XEngine_Source/XEngine_UserProtocol.h index 06d468d..dddaa05 100644 --- a/XEngine_Source/XEngine_UserProtocol.h +++ b/XEngine_Source/XEngine_UserProtocol.h @@ -223,8 +223,8 @@ typedef struct //机器收集 typedef struct { - XCHAR tszMachineSoftware[8192]; - XCHAR tszMachineHardware[8192]; + XCHAR tszMachineSoftware[4096]; + XCHAR tszMachineHardware[4096]; XCHAR tszServiceName[256]; XCHAR tszMachineName[256]; XCHAR tszMachineUser[256]; From 925f26f7856355431734615df41e29a4cf459df1 Mon Sep 17 00:00:00 2001 From: qyt <486179@qq.com> Date: Thu, 3 Jul 2025 15:15:03 +0800 Subject: [PATCH 28/30] update:sql and document and configure --- CHANGELOG | 28 ++++++++++++++++++ XEngine_Docment/Docment_en.docx | Bin 155673 -> 161327 bytes XEngine_Docment/Docment_zh.docx | Bin 168620 -> 171090 bytes .../XEngine_Config/XEngine_VersionConfig.json | 1 + XEngine_SQL/XEngine_APIMachine.sql | 17 ++++++----- 5 files changed, 38 insertions(+), 8 deletions(-) diff --git a/CHANGELOG b/CHANGELOG index 0bce777..b12f369 100644 --- a/CHANGELOG +++ b/CHANGELOG @@ -1,3 +1,31 @@ +XEngine_APIService V3.12.0.1001 + +增加:rockylinux 10 支持 +增加:后台服务完成通知 +增加:macos屏幕录像 +优化:大内存操作统一采用内存池 +修改:内存缓冲警告和优化 +修改:调整信息获取和存储方法 +修改:git的子模块目录修改 +修改:可以为后台服务报告api完成信息了 +修正:后台服务下载操作问题 +修正:后台服务上传文件无效 +修正:屏幕推流不工作 +删除:不需要的后台编码句柄 + +added:rocky linux 10 support +added:completed notify for back service +added:record screen macos support +improved:All large memory operations use memory pool instead +modify:memory buffer warn and improved +modify:Adjust the information acquisition and storage method +modify:git submodule move to new dir +modify:create new field for api address report for back service +fixed:download operator not work for back service protocol +fixed:upload file not work for back service +fixed:screen stream push not work +delete:audio and video encoder code for back service +====================================================================================== XEngine_APIService V3.11.0.1001 增加:更多发布系统支持 diff --git a/XEngine_Docment/Docment_en.docx b/XEngine_Docment/Docment_en.docx index aab35b39e8bb0bb036b72284814460bdb9bf9457..712e0a64cd177455c3ea7daf9a5379a9894482d0 100644 GIT binary patch delta 131845 zcmXta6B67B?(PHv!QI_m1}C_?26xvD8+X}QaCdk2kLNwt`QI~B z-Ce!bT{SbQok&&3NY!KrC_ReDKS6CDK9Js`#M2?*0ot}(gK2ALFxxyB-idmq|88{p zy5t$dY*}@j#_#Jrb*j0#{FBVmi@qs}D4v|Qa3f-n3f(dc$wB1W1#chqV!=ZaQV=1A zD;y;;sYcNeo77y{%liYU{zjeBu)ZRnoAZ)A-J3b!%AUoApW=actWdY36Xv>Gs<6i@ zL7uS#@VV$|-IuxPPQ|@&!j7&pzq|=o7<%qoYkN$7+pMbU_+s4CN0ItDirRqt?a+h$ z`LRz$akSmz!GXU``ul|!lT?U1`#3{b7gKuMC&-mbSvhet}D+rMS0Iyq**b zO>R_iMK)+aW~l)E!mLuAiVDZNktTPQiMx@`b(K-Nkp>yc$G5^~jm4F?Uy+Yc+UviL zGV022KED{;7Err=#yxQ7mJe4bl%<&M>pi&kj{KZzyOO~4H%}s&R9C)Mk)<%tnR;Ok zVEp`WT{d&q(e}`8{ir%}R^_wo^%eh2wW0*#o$5u`e`WBp;+5U5>BFbyS8&{r?9Rge zk|MXKdT<&<*1qs@^UMN;g{_{8rL2_&k{M|uZJ61veR7WAJbiF9dcW^43X(I zi*7X!Z+__Kmz%G2T!{;KJ^NsRdEv`6$Dk@hw#PM>bCO8+Yap zmZP5JRzrz6`>i$-GZ~&863oF{XZ$_-h|TBMdeKlnUxqd@`_GP{y1wJa`s?Z`K;9;fBP3Hay(h%$<(fqy=-GS58{~NIBMyM+}0e@GV@%ld^}) zF@1K(<&7tz)OOy^)0OUA6-%Q}U$$+>t%J(wNID2ocMQ%P9!K7SNkP|SBV8Ib=Vd0k zyF07>+hE!M%_X@YtrEh}z1;Zso{cp-bv*8(`T4c>;CP z{l%H!%AA=>cAMZE7MhRRnz0AV1Oy(PYQOI~HS{0;RtN>bxhA?C2nAT&Kra2o`wj<6 z^O6MmFRmTDGdpy=4}d1XyW}&*2uBA6Udysu5`+3@vn)h~G5Y)0XIBEi8!LK1>ec+E z!1Xh)yvxS@Ze}>)gP-T z>b;2QymPjAsvQKCj2>pCa+fz1+CRLLL;J7vExu<8ylnxG(*kdRspiO{28V9z)bzti z2#w1<@OB;zyzae$jDuUpLP7I;WMoUYa-3Lc2(yDWjNE$4u(tuxCfBWJ-feANVqW~Z zFIpX`Mail`^v)T*dA+=(5w(}&>L!KUVp=tz#v9c;{PF4Ie^KSb7~g4ORtUR|xXQ;G zqNhii)$q;}_!NQm7F74`yeT98&*5%uo=H@1uFS*_yHb-a4=37Ox#L(pt2c8t{2B6l zVy}<{ck~qcDcFU*oh+J4qRjm!c&S$ENvaREok{oi|*97dm=qV!Bz4%92-ka4vnb)P(wX_ zxYqKZStysyHit7HtUYbw_)IB!k2ied(3!7Iwk>vFQx5xNn)0cJFVSG2wddv6 zLH`WjNC|Mw>WD>6(tetr9>xDDb9Yz%W0``|$QzMiFc&EH>{fm;Xh$3cErSZtLoav# zUl2Ph9N~(V%jK)$U76drC=QP_axMdgIqBb$5bUXWtfpvhgm^Ew$vr8DWtyS2q!(n; zGo(RgUqZoGw-_1Sd;bYDf^FVw;qmDw@um;k=m9|6as8~|>k9$_hIA#=4xbPgR07N} zNwh=Pr>^;%Mn!oT3UUsrJZRs`07V`7(2BoW<9iECKMIfAhQz~}1J!R!Yhfgde4PY6 zB7IvZ*^>3uE+9Y9$Z4D%B?rdw56V^Y-wvWXsunkX&3La3d$6>n752Ct<0;VvH_k^q%Y$!cB*QkYmpkJqh1f-2p?5t>Z0{lWoE&IuhW-!Z17xi;ggNScbH5|! zw%b1vm8GWxgpv)du&AM}W2HKG3L5mm9M9@Q1> z#{d>IRQ|^c;_m`*G%J1~YJ_PJbv#Y7=F#T%)8DY?x zN##|28myi89tpE(M`UMP5aOthii__NX#-s4+y>~3MmLEzKV63hi7I)OzLyNz5pixQ zaWM|c*++|bW2a5dM?K%&!26CX2TW;(;B0v}Q3;B6*}&>7J5DG7SJU; zTMvH++(NlP_{YMHYE5|cz?5nT1+;o#_}PM6X0#EtF8En4tgJA*fTv78%kri&rv^1j zh`NiS)_^;--WmS9&?T~76;>D$Z@yD1q&c;lLAwWkl63yU5#DnoZcgBJpp=MTW##VY zW^Wd+X*7fVsB4%NkP;cq@l!9&+$jxeg;ti;xe$LRd~ha_mxzKKKM)ndWNwmXu6kz? zAWZ3JTiJ8&?Vi>6@%7Clc02pS8DAFT#6u5>qa5q)9?(vNlcZB4X+ z1qB$h3_IT)W7rc~G6KW1UkX-SP}J8|R*`-l9k0yf;@#oZu_iS3Je9k}WJ z-c2bPlr3Aj-+JykZ+z@B{jM84wOm`ro%Iu4^k)<(MT6SiiJq^;n^!BZ6O$aM&!?aI z9Ai45$1TqZAB0OJ)fF6APsydWWo*V%;j%~|S1vnMNqfELUhKhCk2>$$woB>?mo^s) z!hm>F)3k5`TIL)M$pdW2sH1aa>G zZbS{J!-iQ=7>>A4m4cai1(P~-n`hBL9XM&cGbj_yvzU_>A3myk^?`) z=NSKqV*L6hdcqx;Q?K-1cl)efxaMQ;O@Mn}f@jcq(Yq2Qxm8voktw2+EmtTW>2RD2 zCb)^76h~f`2T`cLlrm`*pe#Wyp+U-FCKFXN(A% zujOF3U5VSRHpVCmHy5}HB7CC$0RG(`UWSNU?~xPREo^SXVFsH+f_B{~mXFEqaexmI z5=7>#!m&}rt`pQy@N(o*78k+;;^6c4#<`cL8hw?ys_JC+j;GrszYAVxVGv#C5m9iT z@lUqI@aFEMrlcbs#A3vfbTcrHVSue)iodMK9r$G7#lsig1s>#(z!lEvb7LZ!Yx9js z-e*`IieQ636^1w7LO>rK$J+= z_gLyyG`@3ZmVFx|A0kV6-$^1tZZmP7KTeb0`2@PlS9zt4h@PXW^-il$2O(d<)?>wA zsxc3QSma5s|JxQl?tL+yL8k@pLRJdsWXYo#+u-S!!2+QV2s1x=t{ZQ1EjnciJHp51 zLQPc{e%OI2wGbAl>;UlRxuBz9n&SJzKpEn|owAsF2hO>rq(~6NcGZ8hSb_~<#tgx{ z5~SdGOhf#r|MM@`RbVSJbU?BX)7aAQND$1iSG+8i<-~_uAHVk{`*5pa!;MBx@f^1N z$NZFKNUychq;s{==N}Qq9vfs&@Fq)91zM15^fqUo3OvFG>9DT?<`e1J;vLsl< zy_tm&^6v-ib>okGJRTvfUJS7_tVto^MWNiSQ!FB84orrc<5g17Ie9WITxi69d4fdU zU#;(P_6H4GiPVEAS7y^7^yQGBG2zQ-fNwonZWBOH`a_hm+R&rQ4Xs;o-Mu0O2s8Ufh*J?%3g!{S5h#gB*G09DL5${LT>D45ZyX2$gK$Vody;c zjGy0BLEHzcg!=^V^fU6mz_pw8*B>i)u1!Y82AN{MDB-3Yu#S6lESJChY z0**h!U1E0gpV;=Yj${~%L3^_Hy#;b6uxTXnSFe#0X~o0m zgq^$=tb#4_A*e$>Kkh$bJc!P--o*fGX*2GlE6XJFRnLy!$Mt*?|)zTC5IHb_~#`^wKswjx3be^&kc&J&XlS{0QZDut%gca6tK77x%3)MME+1?>$BG z0`!B!F+H%eA~k_sYl!NQlPRh>v*+&xsLFs!>}H)2?Kv$)S=uh=?iOUW5HLQ$251RX zneegKqE36j%OGX6OMk6w__piRzr8*{Pjv->$J9TVvzRc#FXmPxTf_^DU)@y6Xbf|Z zfwO>Gy~(HWog%&s$DHB*kt)d;zYxm`pWmU7)HXeo_=4#czhETO;ardcg zjtabk8MNCO(yEXXvRhRmjtJ9@mNwFWo;1uj$}k~c=Tn!Pt+vxJd?l6-Aw!sx#{p{H zP_Gv5|G*E5CI|d^Q9JwVr-hiVU1XZy#23tNr(-}4*c19IF{tdWg`1(C?#&Gr?03I0B9{n(~C0W)%h-dBZYNApog-=x=zgQSyml?+! z;FDkM%9|J@abVI(uSUrIz=pT)3n_{~PlEwQn=EijlqrdPv*AAcdqlGvpjLvP3p7=V z;lLQg&kta@EtCzTofGyJbzW%*IS;3vjaaOI3lsi^537^5;eNFF%iPSzJW-0$&yZnP z1o|-lrS$m2f{-V&QI&`b1GUH(6?T|BSfqSrBQAE4+u4R9Oan&nSMGf|zx{^X15r%e zi(#K*atD}kbRpYC)Je^`bm>3fYan8el=XykTngPSs`|2~^7!ZvmudS{fhkf=a)A3P zXjGZYcJuE;Kg(bH1~JrXFr^hjBy~0T_ch!@8jbeC1Ikw$y^mj}gXdR4{mLJ!|2`6S zAN+S-astZVb&K{wEQlD(uj!-HX$!9swC^hFgl2MLDU`iWoumU|`>~2K@XqBHQ)rhN zx4wIX=9q_i>3hnEr-$D{eD@Hp+MIuseECT!*)Ik4^xt3vUo^}qH0VrclKsGaLHA}5 zpWrsNaN4LW0GV`J1_l0eZdVw9m}jA3+5LO!bw>T7wC+JKq3s5xFJzpk>=9d)VB5pI zUQ7bHnf;N^u+4lMwGZTw!R5|r5cK_<7Evh!rJ1XVQT~2@99`;=*KLF%%zkb@B2uMga`STwp zU=VFGylisqOZe?I@H#~rQ%LSSn}3no2yW|2oHQkJHP;l7E(h9ITT#dvy*Ihd{)5*^ z?@F2e`deX{tg#zKqUJwAb`y%MTDF=z(oCW{9uiI%(a@7e7}}!5E__O#2#}~T;%mDy zb+Ud;E`5#$zT}E*7wGc73-@^&+IZ~Vq2$r9d<4byAI$t~y7xIUy&G_}h3EZ#H?|A6 z4jwYMY4)xd3smD>;7QI`xW+kso+289_RiDpKaj);bUDj%jLsU>bDzD|faZ?>-K z1LB`m^jxf;G5-aT>7f)P3*5^g zc~8lA7?juA+>BA4m1xPKBX1T0PuA_aFFh*q;AA%f28!>XE^F49gWZ% ztT^g08c4bwe47^%f3JCAT#m(|On3e|5$Ks_VJc0)$Kz)=bgVW;{3FoYlhe}T^5G?B z=(j^O&mMdSc~Z}cd63=L@klFdZ&o0Y`6sj|DyD84nddw6+X@cPgRbPDg;K!pr+ZRJ z^8cY#CM^+*O0Xt-027@3$0g>RkFyi|NwL^TZOB)&{WBFJSpyiqyQxCx zV@6Z#S;}3QRZ67a0iQm1@lU@4=M)AnVK4RFUaNi+wk>W{XGhtA@zjHp(w}e7Ap*)L z=Ou^j2v~&zj8ihxbMi5xA@1A(Y)`~;KXM|1N(v#$0nqZW6+q<`c^?iIHe|!nq|{s$ ze*}J>ixq~A=zCKPLiHW&aZUtW^&Aw>g?EK>OI$0I%V^6v46J4s2h6QYVh#K;{K?)0 zFA=xM2hZ_NwC;H{e=q{2sf?eO?22?}w#85?3fJ97Kd`obIUJAuYA;Eb?itan5D|)6 zRe*D0Gn-ZuEfATmrb_10g7WI|ZuzQ2mNoLpPedQ)p8B0*2BGIHD|SGYd*q6tJvpQX zQ=0wgzDEd-VC~TI9d1V*(`4V9RehrC8s8gkwE;x39gkV&HK)0+I~FAbvaMbaHPe$r zL;Bektlqud4zA{7uptkOIo-Q>2l7qDUOIil7Qqt(V#fu)ETJwfCH8AHqO?{;IvOy1 z?f65+Q5fQjpkjppwH6@K5L@*u37aUQ7K#leR`C1t2Y_>ZNu^JtbL2*!RPeSvmgrx# z;H`!}{wL(_HfiowWqn^`SWi?Akz1FU>ZD@}kqW2SG=p$d7E(_H_m~0b?IR&#PvP)k zb00ib;2Wa9oOPO?SL>x3iu)WFYXwclTx0Bd_g&;^jwBpt?k|sV`^D^;l@BSRb1DiF z>(~U?S?oVxL12~4B#Gw*ONQ7L>t@fR`p@bBlvo^BizRvrt+0toWf)nt~`IlQWj!D$2A0WkooPy0-MY zOvzK}F6_KYj@9>&?=QEcvfp7t(ys;r=>yffWTa4%%bczq<>!o&)k@JDg|}y6I6)SU8@H<9`2W$J$ zkznlIki*yB#UGPKoscf9oW^H9$RdAI#&t|Zg}WfY9^kjEZK93ZfdK(67eWa;bGvE2 z$9!Zwl7@cA4Y|x|`nq913X*Q)>Kr1W!rc={WLP5p{U;|1}5nc+3o2 z2V9~+<1Qr$xRM35I<1!!o5tOI`TK;BTbG8K;FI^-+%^p_9UgB~;rnjw|DIrG;CJji zC~uVGRrzkC_~thmPLhQ~f&K=#+ z5lkT^;}v6L8LKZF#evZZE9jR`h$3UCf1fxhcd^4e(|vZ}ii6%5?y8ByEEsZFb9S@i zOxZsvb=X=MO%Z$iq_&Ec6!46rrW3NGEJ}tX>Kp<$grth8bdav^-g>DDHfRYTvZROt zTI>(7+x}-C3qr5|W63B)1Dl_*9S+$B9EjEvB!fPj3rmR|t1+4L)|3Ae;M12}9!WhO zN!Mj>(AQ%)4Q7-Rxeh*5VSlLro;*HFP!p{m_%Dz1>du9ePn{9S$SbuLCgTigPY44g zqpHVUNMvnC=i6*lLKP132#{d6{@j&etBT>-u8#`to^e$jkaFgpA;E+H1W za8Ro`mhD=FbQD7sRhoWY^?KqiSLQm5Qe4g>k+RiU;iPWZ2cQIbi#dHGX{^}{y@ZL@ zFH7f?-a{1oc1OF>zN>M@I#zFc)exn~>x}eE(XCu_q&~z;ng+UW_fh9p^x&mi^H#l% z-R?u8oMKvQ1F=i2DzZn^G}m7{#nAdK?D71gkVLrAU2X|`B6l69_p1x0ig_{4sCsCo zY;v}1f)jhm0GF4o3mwc8@oTkU^OUWJ$xODw!Z6%HL#;oC>S*2m?hFl~*%HjMMzX9_ zJ1Aq=x*5@`0>5<@AMPoy5-qP#Tc-Zt7ThsEHaqle^^O_?DS6*_G zcXlV89=6j`QPe@a3%MzjJ9UT8s*VD~x=C4%_@qQ8fZ-D<9%Go5`UGbS)uGQFFKw8W z(%sSys|%P>Q^K_s1~O2!rBE1?o&}N=_+BeIr?B0x5i68j~Z&5&iGF|&}=4flugTh;Mj|?4o+xEnHZ(N%& zouG@x)G^^LE0wuG;-TY6iQ&we?t6oo;F(rWevLJL=cKRmyoTT1S-2w^u^1IL?_>hp zjdx%m>Ys4KA1W#DH)r0Svfr$aB3H&|B@I54+t0@@8}b;Kz#!<`NZdF?XzgBXAG>e@ z<(2De|4`(t0y$2Rpc0vLTKR5mX&KL~Oq#v6b%6sv(rF=j0B8H6@3zFc)s__N6PmZz zJeC5zjLjxI_;Kw`e@Xfbj32r3+!X3J?8S3pxX^H$h%=e|R^^b%kQ`nnkJH%--{x)f zRu*o{arwtcL8ju%thVrDt6MGW&^|vP3P4b~lyMBNruCIFzeL;D2(f3Rcs`|s zuYB>i9jK*x+CU)T%|CnmRCI?wSR13#N`p?URXT&=9fyFPBXrVo=!@{NGB5!s^)Old z3RUY-ME7#_0m`&c7lLX+lN)Q(6#x*bfO{t)(S??$QiU);;nOQB?(og>R4KcaoMblb z(C`<6x`rcde5J-Y>sVuP?0y^fU)Gi*(Zohs0#iaWG#rc)feDAk26J1(eMZSO0+kU^ zU-SYSf6*U$5T=0W1Yf;bhiictPhPZo18g@!poJLWqQId6g&4t&@Gk9-yU8T%LgW$m ziG8`SGmmQ@f^FW@Dm+@krt5F@W{Ku1v5DeLzW#a|cJ(&$A3sXd8>R1UXkTg{FLzbu zT%=>XrWW^KV8&k6e5}eUwX;yR6pIsGbq$tlV~jIhI1f<_b&p!L7=(dzs5YO;2qTaq zdr32I1Y_N1x}!U`dKTd&zHd3lI)X1DrcY#b(yHHr{}c4KYfmP9nSl2Kt4sW|UA;0T zh&yPx3G;EJNIN`Y$#Cgat&l>6_TXm88s-N`lls$)N_N~EFn$@&=k?2VfB zAQbB^I8;;bB&4kjsK$i0sJxMc^{*cG>xsm%Jtl5>c3U`8iWzi{{$WuPB1{DDvdSxc z0fj4?ly$=#MhR7LiwZKt84vg)x)Yl&;U_GazjyJjZhNw<=m1G17nzvfZB#+?MuOrR z&te4*_ceyfKw1T7_#gKXP|g6=Dh551yMz$(Ue_ zJ8Z6`ujGN)X$OWa)%|7(GWRv#MRKWT>LW~v3LG(Z|AY+CWa;64Iv^f_Dhf0o+tKd> zP8VuWWtRCVvH;VCC#j4M#%a}2QzafjtCnfEI4k6XZ|Z$EBrgg=s?r0pXnuP(>>d2{2E~;-hq7?a& z>FI1mh1*qp!A>#lW+LHp(R52ZF;AWm|LAn;ii5>z?=EQihB{}r z;>JXI2}p}vS@FXQt)B{M$^1Bvykt#V_QCa|=H!(-yX?s+y>0E}CWIQ#)w&RMQilc?pFiB| z`*#j+TDl|yAex5NOpD)OWdt@3;?A}~T#?qdMN>;nTg0Xj{LA{7DIPkSf499Z(YuB- zhQNUlyL>rMV#MnluyzwWu;RN(GyXYQ6>@Hji}$1o+;Fzd7H@?wSWq6h^iP30s=^G| z=PkNz!u$EJFp$z9j#X;)D;btH&x;OaiQ@zw7l(4Z?}osmum_qk9k= z`WI#gq1T1L!}qHjXy}nV6Nmr(az~~ROcFJg>KXi&Zp7aNW6DQovd~7w_{2h;A*G~c zoChxUWr}P&uXe7350-2ZI$j}Df=v7fL9{Qw=<8|iDrw!yPk=r>CEM^AbwytWDl6S> zvXWX_AZ)a8RT(6OhK6YJCed{5@?#_Y`@sidX%X#A@Nt|y&Jro6E8Rm3gjII^?TY$t@;ufjA9ITbZ7}+ z@44gOJX`;mS_NLF1(YKyYCgRI>R)v#dj6R;WXrwR>02y38}-QbtvBlg;cb=(Y{LA8 zhl4ueU#ACX9V;M9JEWZVSto;-y#0Z!4{UEcb+5azCK)r+y&Kv$fX~}m6q|T`Ky={A?oH^na zN5M{m4k-7nlU69$c{^*R7vcH{`L6BU#)mym2Fh3XESXFMZ{7W8bkEm3Kr&ZWAVb$e zBAlcnh1N5w-O5|OMJK(R&XhsEc6D}Q(>Y_jd|p>0X06@ee0CsT%Tb_Qgv#};|IdY4 z9G$jj!12bITwR5%jqS2t>rkt04C1%Hm!06X<(47x89QL|Qo?X#%}Z2Q;Zk3luwia>%U6 zQ=5n85oS{U4)}o8`F?L~|EM{h!bxAU9|8gKsW8JB9YZDj0$s_M2h+#x&?Ga}_+CB! zECz4^-(aM@WcMJCtmy9nW9!3G1qOCg+E&3DS(-!N1`7AAodAuWKIGw2dkUB@YN#PY zE0Nk3u-7U5Y=8d6;>JdsRj}V1mGCzx4EI>wnjiSmTMYsm)IDXbjeS1c^#nkjY^U1C z$bkW*C?+)tbN-Ys0f*b1nYcscVvgoRvf`n9Z_}v>=3B0j{i`(f&X92imEqC?EnrAkbv!7<4zF_eiO)+JuN7!549<5&}Aldy)qJ1=3;IfM{z_u-7 z!73P5)~v>NTfX(lc%X5?nS{qS^66)cVyMJT2EKOztwBoy!UQfHY@)!i%IPd6%r-BkZTQi3pa`C{)-WrsgAej z*7mYuw)&wyib4RNx#*1$Nl?wHD;o}{57TRv+p=QCklq>){Z=~Fp84_5UJu*LW1qT1 z>Ng00PI((#rCIlKn3x5jB_V`xytebq=o$a19(K)qJ6u{!Le-6RI|G~NU9Rb58YW{$ zIy%|3nC7MWEa2-#P2Xj6M0#hPdn{>J?PiaDT{YTUu!&}U1NiVzZx4nMdg%Oz2A$ED z53BsBZCjS^`x7Y7A4i8WN!Bty3R^N7uL=M=d_xZMPqgQ@cWMyzXkVf;-k2kQ;cnPS zv?Xhkx1!5k(}pFLQ_AYV8}gqcBg_iU1r-a=hK%Qk_Jj5Nr_jG*x8t3@yaBiEw@tAW z;4@uwL`i5^$3>4S3w%~_XV)8zi{o;eAD*6jJ^F%D^r21IC0|QYCt(pN-m4GJtr(#5 z{Gn%|`ic*CiG)F&0uk*z8}qnw?oF&TE#E|vz3Vbr^^|Hf1&K#3AFs!HC^$Rb+`!`m8XU&Y zWSG)q8{JR`JTB}F9Wyu3*L3VocI5mKO1<&byX~nSBJza|Us>VMR&=oDT$AQJ%IA1V zj2_^0=nHi8$1TUuIv(dPZ(WEo&2gkD!xZo_m4wl>l6B-H)U7%>OgEtLv7>?O<(y4! zXIUDh+lwp$-c+H~CP?EGm;b0$hE?q-x-dGcN(YG-rS2Yd)Cd1q&(XL``>F*N6Kl(8 z!{{J^_MC_o?)8wuCo)v|tDJ3rvK+VsZM8WbU4=M{bZKc(X&|5}?#dfiGLJx@>PrCwC@ zE#-=0h^Z3tF?Up4TKH5BhF=U!5uiv@mIln?{fPFTUfnsD8zHaICMp7q{K6XA)rqOc zKak1!&12$gU-0`$(HRJ8ZOQ$%J5s${9N4{{L^o+ZTcid0(Q7{DVxYmPgjKSu7^N!t zewNlR91RJT;?bB?h%O|D90lTF1hqeovl807EJu^%)F_1gMMaT+?Uqjaq!Q*ngh7E_ z&I#K$#AQzUd~?~z$4LXAxGn!YJ`&;FE?;5^BGI^OU|ibE`=VYZHYd}*R71s&uVZUA zJBDHJAHNK0Mr5EQ>OT>(TYzwL*=VRs|IYcRfZ(X=oH)Uzr#6X$z&z^`@-h3R1Gt;} zIN`wQcGt3dhEma-IifX5OhaeCNNWFd%mcpbT-IEph`LjPhv_inYt$iA|sVXMO0;&V_>#H{v>oPkS`gp)cqlM zY|n3Q1JNrkK#jz^Tqo(5YV=ATN@W_;-%w=jyq)rI5stZcMw_Y+ySvEq=@&72=WLw( zNZWm4Yn@7(gg$r!WH~iQf*L!&)4$-c7WT)c&e>g0N?-sNA~|pV5(&`vibstvPsy$; zgz1OoPn)`pHa385uh4yha4|X`>J4zM>mM@Bd_#jdu7>=RunM8A2;T!pT5&mz1{Ezh z8T7s2yScyyq$jl-3Z9E8kbp%{+$HG55P4h^XIC|T>phik9q#w{^KuQp@in)WJiT`Q zae(|eN&rIkc2m+R!SYYMJn~WEZ(C8BXj0A@YJ{Hfc&I_euKf7wDtHb7Gxf?lH2(}V znS@bke%lTW&TD%tfKFHHM`2cZWX=Q#TBXkfn4+fc%QDt}*@ICWH_J@czhj6g@q{ab^#v_)Llori_$O~QFrwyN?{Rk3_s zla9m#6G&B2N6fl7ENua3v8m!Co%ktG$ERg1Iz=o!sk3Sypx?0qwn(c}6Hgd?- zehsmG+pukaIE;2p7j)00M33DKXAh*o|E2{ICsEPHjUuAx2LWiv*k_kPks$f zAbW8|qR-6L7b!S~HGg&ZC!{XmMtq{uNH$-%pH5_0Sm@uO4}JtWSZK9}x#tY}&m02Y zqPxbVvZ!eA4H{X!Ul)BAjbwi}@GJ7Sv7Q}?-srA*Z@eUC0{H;jqAQ+Ol4O+Ow>gDb z>wvDYPqqRRFrT?&*F`DF9r*HWWIoxBvz-(&*^c$*csYLKY!X!WRTjep^^Y=C{WLZC zBaeO9EDg#PriV7CQ!aX-n}EaKO!@kW3nq_#dH8nWp19qf#LEqRjdQmm1h8EuhCH5c z@)v)Pw%T{>Z6zBDGTd3l$f^92k|s5^;uy;Wxs*BSbf30Vm1B%{-DG6Q-dK6r{GKP27Gar*4sL^7xSKz;FA`K0&uTDi2_db*_h{FvTx zKMlNIy*;b|PprVfgN*GFpfV#`@}#q}@>{DRPESUY88>mk?O|TA;Ed;2+t)oJuC>(K z>9l3n!h72BN>(^&SaXWrE)dVJ6!&v4dpjM~HecqEumGv^+O`PXz&G)GqV0N+1ia=mF03FN;tDrmXPX3pOiZXqBe7cM#Ky z$aI9inUiDr-G_|Z@ocS8^9Y>$j$s=ACXUR!F6$#Lfy2h^kF~Ey$Ls1$W2?q8TA7~< zBaVj3H4k3zQM0|10Bw^OiIXM#^qnQ$mzSsJQO`Q#!>yVfmKSxQ2$Nx7=5C%^o(L$` z2khW@1%4*;@759Mtv?z0-+F_oqfz?5pPkR3&xA)u>lUkCZr>|=-v(@{fju5lz3d;g z+Ie5E`^u69xD}1%eErqPNQx##bSr<q)EpujB^LmD2|ZnrZ*cNdyf@eTin0I{F>R)rf06?T~3KAqC06G`DOiv=W| zmqxynBaPDa@oq#(V*DzTt-+M|S}128!Zw-OuAiP64VEhbc>$rU32@0Tt8y4ex)bSW z!C*n>D(;i68^6eV7{qwCpu!L!`yt5!lfAbIp8fh10KG=eBjTFc4;%ft)oK=xEx!4q z8Wi%+=z6i_YY^NM2!Tx#pWV9fb_RJ$4Bpwe=Q-WuaSv8w`a$X8(n_ zO%4(lOTkA8G^O=Z(XbIwMe+=>LmIm2@3;{-D$Eu5RKwqKGX(CzBV!mrUth6b*oLqu zuFyQP07!)>t(Rl~)^$((dj1;0EyObupNz(CdO&~U;VdEtC;UK8D&fOEA(SN zk3AYvl!N3h)-MC5%%5N0P}4?O$NF5g5B#X7;7`(*?!)4S8kN&?A+=Po-p z0$#2f_t>lFgascC)}<3T*T=eoC2P{C)l;2Yz~(aLIR4g{D{}#L(*J2y`@C?5D5~W1 za&A*ox?syv4XMB+%CcnlO8sd-UAZ5tb1WFb4K6TG@o-rH5$N1Kp17*#09;49hi3@M zV4rjDqbA0)rIj)Z3G0G9WqCrHwnMwak0dxt#7sN-8XU^U_n*5Qn-F`po;TbkQ5?#F zcJcvv5sZv=3+lWb8Tm)U{Auy!Z|B#3374xDg78?6h4oAV!-|DuKb%)BaxrAmxddh?UHQ^D zIV4*b&gH7!3L=M%d2KLzUi4ooZPyDF*b>~#m3#9ezD>LV(-s6c2C{74X^ud6yDPp{ zy|bE2H&`~L@fFROY?4;mzWv|H?GXaQRz%RJ5d&TlhzUSw%=2d!t$ zvp*z+NoKNF8lGCxAGQOsUpi4x7N-%4QcM#ZqWnr-qhQokjH4N9;EY#L*uQtHefy{G zVoMO#q`=Qt0rntpz#NtY5t{&tR^FPub{09iB0G%>j;sOj{NS-i`U+zIW>;owBy2~h z513-o&FoEH1>3pFsnSCjM8e-Ah=qAH=-k6?ip1GTPdv^sFLmk4Gbo^$jvu4&8zJyp zZ}QtSuz_QYYqzp7oZImlbwkm!8}ht7sjxnIt9@V<`lq~c%go3QonpW*(FI|eSL&zk zsqquY=*0?Q4X#6U=M*7hVQ&$*vNJLMW-d{mGk|qzyevj$c)QZ>Rk;~bnm^+bFhXv!%n%~Y;9@m2y5|8=A4JN+8 z)q@`|KR@1DjcD$#3ImK{q=tXjGMyLqRt497@$G+fvdzK$w8O57vWj|X62lSD_<9I( z!@2{l9DChgu0{urrMAU?)hEeh*>FynQ%tYOldmm5!%0y6x#Sk-Y9SF#X1+wqXD5yk zo?4eXsPTjsR*f0n)Q2f7N+_(lwD<|UYsq)F;Q{$e_tJOFxC>ZsmfsP2#SKupKQpll zL{!XnN1u@XM;O0t)KfY!Xx*x9us;V7aeXX45vo2M?y9Q#df8t=RMyXzi$R%{YMY z2U!T{u#p=b5b*K3q%d>-7^Cxf|3nsWyez+q#{VeEGEYdt%WdY&9iGMS9_;g$8Ok5w z`+0Zu`V|2^K$)ao=tU)8&_T$`^E}WKH4%lj>t)c1`?V>t*-jNf1{G?rbQnq?FdvRq#`j){D^26NWH& zv>Je9IM+u+*lABs9jm$UhZ`mm76I)S)*rumfqx@zf9JvRXCpyTUM(>lrOzr2JgPHe z>%${~9VNH9hei6Ne=Bk(*CDtuCslFh;^X{UcJ};j)Tb-XA+NPdDov>FA9sHIYqX$h z3SK<@WR~A$+_9Dhsi6BYBR%8eZfa|J)v}cBZUqMMW3!s6(@2#bz>-Z&6?k zHL}Y6EwB