From 1065d706099324110f1f4b48f8f075a0d2d31f88 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Benjamin=20H=C3=B6glinger-Stelzer?= Date: Sat, 28 Oct 2023 20:25:17 +0200 Subject: [PATCH 01/36] Upgraded to VS 2022 and Windows 11 SDK --- HidHide/HidHide.vcxproj | 1 - HidHideCLI/HidHideCLI.vcxproj | 6 +++--- HidHideClient/HidHideClient.vcxproj | 6 +++--- 3 files changed, 6 insertions(+), 7 deletions(-) diff --git a/HidHide/HidHide.vcxproj b/HidHide/HidHide.vcxproj index 2cea093..fbb42c8 100644 --- a/HidHide/HidHide.vcxproj +++ b/HidHide/HidHide.vcxproj @@ -23,7 +23,6 @@ Release x64 HidHide - 10.0.19041.0 Nefarius Software Solutions e.U. HidHide 1.0.0.0 diff --git a/HidHideCLI/HidHideCLI.vcxproj b/HidHideCLI/HidHideCLI.vcxproj index 5dc7bc5..1f671d8 100644 --- a/HidHideCLI/HidHideCLI.vcxproj +++ b/HidHideCLI/HidHideCLI.vcxproj @@ -38,21 +38,21 @@ Unicode Dynamic Spectre - v142 + v143 Application Unicode Dynamic Spectre - v142 + v143 Application Unicode Dynamic Spectre - v142 + v143 diff --git a/HidHideClient/HidHideClient.vcxproj b/HidHideClient/HidHideClient.vcxproj index e02ad00..32613d7 100644 --- a/HidHideClient/HidHideClient.vcxproj +++ b/HidHideClient/HidHideClient.vcxproj @@ -38,21 +38,21 @@ Unicode Dynamic Spectre - v142 + v143 Application Unicode Dynamic Spectre - v142 + v143 Application Unicode Dynamic Spectre - v142 + v143 From 0802a34413fec70e09c695cdf970a11d068cf97b Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Benjamin=20H=C3=B6glinger-Stelzer?= Date: Sat, 28 Oct 2023 20:28:35 +0200 Subject: [PATCH 02/36] Update appveyor.yml --- appveyor.yml | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/appveyor.yml b/appveyor.yml index 25f04e7..afe53c2 100644 --- a/appveyor.yml +++ b/appveyor.yml @@ -1,5 +1,6 @@ version: 1.2.{build}.0 -image: Visual Studio 2019 +build_cloud: WIN-LKR467JS4GL +image: Windows configuration: Release skip_commits: files: From 05f8d0301ab614de7ca15b838d7307c27966bfde Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Benjamin=20H=C3=B6glinger-Stelzer?= Date: Sat, 28 Oct 2023 20:29:41 +0200 Subject: [PATCH 03/36] Update appveyor.yml --- appveyor.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/appveyor.yml b/appveyor.yml index afe53c2..c42aa8d 100644 --- a/appveyor.yml +++ b/appveyor.yml @@ -1,4 +1,4 @@ -version: 1.2.{build}.0 +version: 1.3.{build}.0 build_cloud: WIN-LKR467JS4GL image: Windows configuration: Release From 2b9990c2b36f2ee7ba7d2c93fde8f6337a5f2db4 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Benjamin=20H=C3=B6glinger-Stelzer?= Date: Sat, 28 Oct 2023 20:30:24 +0200 Subject: [PATCH 04/36] Update appveyor.yml --- appveyor.yml | 2 ++ 1 file changed, 2 insertions(+) diff --git a/appveyor.yml b/appveyor.yml index c42aa8d..46f2c0f 100644 --- a/appveyor.yml +++ b/appveyor.yml @@ -7,6 +7,8 @@ skip_commits: - '**/*.md' platform: - x64 +install: +- ps: Setup-VS2022 build: project: $(APPVEYOR_BUILD_FOLDER)\$(APPVEYOR_PROJECT_NAME).sln after_build: From 804fe8930dc4ac46750c3797eefade286c1378fb Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Benjamin=20H=C3=B6glinger-Stelzer?= Date: Sat, 28 Oct 2023 20:41:25 +0200 Subject: [PATCH 05/36] Update HidHide.vcxproj --- HidHide/HidHide.vcxproj | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/HidHide/HidHide.vcxproj b/HidHide/HidHide.vcxproj index fbb42c8..4a53953 100644 --- a/HidHide/HidHide.vcxproj +++ b/HidHide/HidHide.vcxproj @@ -215,7 +215,7 @@ true true - + true true true From 32e1b6a76c3ef201501b514d900bb4ddd1348af5 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Benjamin=20H=C3=B6glinger-Stelzer?= Date: Sat, 28 Oct 2023 20:45:37 +0200 Subject: [PATCH 06/36] Update HidHide.sln --- HidHide.sln | 13 +++++++++++-- 1 file changed, 11 insertions(+), 2 deletions(-) diff --git a/HidHide.sln b/HidHide.sln index 8d20a7f..a854d49 100644 --- a/HidHide.sln +++ b/HidHide.sln @@ -1,7 +1,7 @@  Microsoft Visual Studio Solution File, Format Version 12.00 -# Visual Studio Version 16 -VisualStudioVersion = 16.0.30330.147 +# Visual Studio Version 17 +VisualStudioVersion = 17.7.34202.233 MinimumVisualStudioVersion = 10.0.40219.1 Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "HidHide", "HidHide\HidHide.vcxproj", "{37AA280C-34D7-44BA-AC90-2D38F88ECB26}" EndProject @@ -11,6 +11,10 @@ Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "HidHideClient", "HidHideCli EndProject Project("{930C7802-8A8C-48F9-8165-68863BCCD9DD}") = "HidHideMSI", "HidHide\HidHideMSI.wixproj", "{912E13E7-684B-4B88-8A79-F76288895389}" EndProject +Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "Driver", "Driver", "{E00AC103-79D7-4860-A340-71E39D593812}" +EndProject +Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "Apps", "Apps", "{FD0CCC62-DADB-444B-8537-DB24E05B7438}" +EndProject Global GlobalSection(SolutionConfigurationPlatforms) = preSolution Debug|x64 = Debug|x64 @@ -47,6 +51,11 @@ Global GlobalSection(SolutionProperties) = preSolution HideSolutionNode = FALSE EndGlobalSection + GlobalSection(NestedProjects) = preSolution + {37AA280C-34D7-44BA-AC90-2D38F88ECB26} = {E00AC103-79D7-4860-A340-71E39D593812} + {4986DCD6-73E0-4B0E-91DE-C91204F313D6} = {FD0CCC62-DADB-444B-8537-DB24E05B7438} + {44CE58CD-7B06-4585-8F46-CC7564481912} = {FD0CCC62-DADB-444B-8537-DB24E05B7438} + EndGlobalSection GlobalSection(ExtensibilityGlobals) = postSolution SolutionGuid = {9BF879AE-7AFD-476A-8B94-F1C666D3F789} EndGlobalSection From 7170ec64fd4b2aebc39c45d8f37811ae39f1ed36 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Benjamin=20H=C3=B6glinger-Stelzer?= Date: Sat, 28 Oct 2023 20:55:54 +0200 Subject: [PATCH 07/36] Added HidHideWatchdog --- .gitignore | 1 + HidHide.sln | 47 +++++++++ Watchdog/.editorconfig | 17 +++ Watchdog/App.cpp | 19 ++++ Watchdog/App.hpp | 25 +++++ Watchdog/Main.cpp | 4 + Watchdog/Watchdog.vcxproj | 166 ++++++++++++++++++++++++++++++ Watchdog/Watchdog.vcxproj.filters | 33 ++++++ Watchdog/vcpkg.json | 11 ++ 9 files changed, 323 insertions(+) create mode 100644 Watchdog/.editorconfig create mode 100644 Watchdog/App.cpp create mode 100644 Watchdog/App.hpp create mode 100644 Watchdog/Main.cpp create mode 100644 Watchdog/Watchdog.vcxproj create mode 100644 Watchdog/Watchdog.vcxproj.filters create mode 100644 Watchdog/vcpkg.json diff --git a/.gitignore b/.gitignore index b7ba1f9..fb7dfe9 100644 --- a/.gitignore +++ b/.gitignore @@ -366,3 +366,4 @@ HidHideClient/RC* *.opendb *.aps /Setup +vcpkg_installed diff --git a/HidHide.sln b/HidHide.sln index a854d49..53a5645 100644 --- a/HidHide.sln +++ b/HidHide.sln @@ -15,38 +15,84 @@ Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "Driver", "Driver", "{E00AC1 EndProject Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "Apps", "Apps", "{FD0CCC62-DADB-444B-8537-DB24E05B7438}" EndProject +Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "Service", "Service", "{70F1DF4F-9AC5-47DB-BEB9-BB40D294B0EE}" +EndProject +Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "Watchdog", "Watchdog\Watchdog.vcxproj", "{186B407F-E3ED-47AB-A0E6-4A74FBAF015A}" +EndProject Global GlobalSection(SolutionConfigurationPlatforms) = preSolution Debug|x64 = Debug|x64 + Debug|x86 = Debug|x86 Production Release|x64 = Production Release|x64 + Production Release|x86 = Production Release|x86 Release|x64 = Release|x64 + Release|x86 = Release|x86 EndGlobalSection GlobalSection(ProjectConfigurationPlatforms) = postSolution {37AA280C-34D7-44BA-AC90-2D38F88ECB26}.Debug|x64.ActiveCfg = Debug|x64 {37AA280C-34D7-44BA-AC90-2D38F88ECB26}.Debug|x64.Build.0 = Debug|x64 {37AA280C-34D7-44BA-AC90-2D38F88ECB26}.Debug|x64.Deploy.0 = Debug|x64 + {37AA280C-34D7-44BA-AC90-2D38F88ECB26}.Debug|x86.ActiveCfg = Debug|x64 + {37AA280C-34D7-44BA-AC90-2D38F88ECB26}.Debug|x86.Build.0 = Debug|x64 + {37AA280C-34D7-44BA-AC90-2D38F88ECB26}.Debug|x86.Deploy.0 = Debug|x64 {37AA280C-34D7-44BA-AC90-2D38F88ECB26}.Production Release|x64.ActiveCfg = Release|x64 {37AA280C-34D7-44BA-AC90-2D38F88ECB26}.Production Release|x64.Build.0 = Release|x64 {37AA280C-34D7-44BA-AC90-2D38F88ECB26}.Production Release|x64.Deploy.0 = Release|x64 + {37AA280C-34D7-44BA-AC90-2D38F88ECB26}.Production Release|x86.ActiveCfg = Production Release|x64 + {37AA280C-34D7-44BA-AC90-2D38F88ECB26}.Production Release|x86.Build.0 = Production Release|x64 + {37AA280C-34D7-44BA-AC90-2D38F88ECB26}.Production Release|x86.Deploy.0 = Production Release|x64 {37AA280C-34D7-44BA-AC90-2D38F88ECB26}.Release|x64.ActiveCfg = Release|x64 {37AA280C-34D7-44BA-AC90-2D38F88ECB26}.Release|x64.Build.0 = Release|x64 + {37AA280C-34D7-44BA-AC90-2D38F88ECB26}.Release|x86.ActiveCfg = Release|x64 + {37AA280C-34D7-44BA-AC90-2D38F88ECB26}.Release|x86.Build.0 = Release|x64 + {37AA280C-34D7-44BA-AC90-2D38F88ECB26}.Release|x86.Deploy.0 = Release|x64 {4986DCD6-73E0-4B0E-91DE-C91204F313D6}.Debug|x64.ActiveCfg = Debug|x64 {4986DCD6-73E0-4B0E-91DE-C91204F313D6}.Debug|x64.Build.0 = Debug|x64 + {4986DCD6-73E0-4B0E-91DE-C91204F313D6}.Debug|x86.ActiveCfg = Debug|x64 + {4986DCD6-73E0-4B0E-91DE-C91204F313D6}.Debug|x86.Build.0 = Debug|x64 {4986DCD6-73E0-4B0E-91DE-C91204F313D6}.Production Release|x64.ActiveCfg = Release|x64 {4986DCD6-73E0-4B0E-91DE-C91204F313D6}.Production Release|x64.Build.0 = Release|x64 + {4986DCD6-73E0-4B0E-91DE-C91204F313D6}.Production Release|x86.ActiveCfg = Production Release|x64 + {4986DCD6-73E0-4B0E-91DE-C91204F313D6}.Production Release|x86.Build.0 = Production Release|x64 {4986DCD6-73E0-4B0E-91DE-C91204F313D6}.Release|x64.ActiveCfg = Release|x64 {4986DCD6-73E0-4B0E-91DE-C91204F313D6}.Release|x64.Build.0 = Release|x64 + {4986DCD6-73E0-4B0E-91DE-C91204F313D6}.Release|x86.ActiveCfg = Release|x64 + {4986DCD6-73E0-4B0E-91DE-C91204F313D6}.Release|x86.Build.0 = Release|x64 {44CE58CD-7B06-4585-8F46-CC7564481912}.Debug|x64.ActiveCfg = Debug|x64 {44CE58CD-7B06-4585-8F46-CC7564481912}.Debug|x64.Build.0 = Debug|x64 + {44CE58CD-7B06-4585-8F46-CC7564481912}.Debug|x86.ActiveCfg = Debug|x64 + {44CE58CD-7B06-4585-8F46-CC7564481912}.Debug|x86.Build.0 = Debug|x64 {44CE58CD-7B06-4585-8F46-CC7564481912}.Production Release|x64.ActiveCfg = Release|x64 {44CE58CD-7B06-4585-8F46-CC7564481912}.Production Release|x64.Build.0 = Release|x64 + {44CE58CD-7B06-4585-8F46-CC7564481912}.Production Release|x86.ActiveCfg = Production Release|x64 + {44CE58CD-7B06-4585-8F46-CC7564481912}.Production Release|x86.Build.0 = Production Release|x64 {44CE58CD-7B06-4585-8F46-CC7564481912}.Release|x64.ActiveCfg = Release|x64 {44CE58CD-7B06-4585-8F46-CC7564481912}.Release|x64.Build.0 = Release|x64 + {44CE58CD-7B06-4585-8F46-CC7564481912}.Release|x86.ActiveCfg = Release|x64 + {44CE58CD-7B06-4585-8F46-CC7564481912}.Release|x86.Build.0 = Release|x64 {912E13E7-684B-4B88-8A79-F76288895389}.Debug|x64.ActiveCfg = Release|x64 {912E13E7-684B-4B88-8A79-F76288895389}.Debug|x64.Build.0 = Release|x64 + {912E13E7-684B-4B88-8A79-F76288895389}.Debug|x86.ActiveCfg = Debug|x64 + {912E13E7-684B-4B88-8A79-F76288895389}.Debug|x86.Build.0 = Debug|x64 {912E13E7-684B-4B88-8A79-F76288895389}.Production Release|x64.ActiveCfg = Production Release|x64 {912E13E7-684B-4B88-8A79-F76288895389}.Production Release|x64.Build.0 = Production Release|x64 + {912E13E7-684B-4B88-8A79-F76288895389}.Production Release|x86.ActiveCfg = Production Release|x64 + {912E13E7-684B-4B88-8A79-F76288895389}.Production Release|x86.Build.0 = Production Release|x64 {912E13E7-684B-4B88-8A79-F76288895389}.Release|x64.ActiveCfg = Release|x64 + {912E13E7-684B-4B88-8A79-F76288895389}.Release|x86.ActiveCfg = Release|x64 + {912E13E7-684B-4B88-8A79-F76288895389}.Release|x86.Build.0 = Release|x64 + {186B407F-E3ED-47AB-A0E6-4A74FBAF015A}.Debug|x64.ActiveCfg = Debug|x64 + {186B407F-E3ED-47AB-A0E6-4A74FBAF015A}.Debug|x64.Build.0 = Debug|x64 + {186B407F-E3ED-47AB-A0E6-4A74FBAF015A}.Debug|x86.ActiveCfg = Debug|Win32 + {186B407F-E3ED-47AB-A0E6-4A74FBAF015A}.Debug|x86.Build.0 = Debug|Win32 + {186B407F-E3ED-47AB-A0E6-4A74FBAF015A}.Production Release|x64.ActiveCfg = Release|x64 + {186B407F-E3ED-47AB-A0E6-4A74FBAF015A}.Production Release|x64.Build.0 = Release|x64 + {186B407F-E3ED-47AB-A0E6-4A74FBAF015A}.Production Release|x86.ActiveCfg = Release|Win32 + {186B407F-E3ED-47AB-A0E6-4A74FBAF015A}.Production Release|x86.Build.0 = Release|Win32 + {186B407F-E3ED-47AB-A0E6-4A74FBAF015A}.Release|x64.ActiveCfg = Release|x64 + {186B407F-E3ED-47AB-A0E6-4A74FBAF015A}.Release|x64.Build.0 = Release|x64 + {186B407F-E3ED-47AB-A0E6-4A74FBAF015A}.Release|x86.ActiveCfg = Release|Win32 + {186B407F-E3ED-47AB-A0E6-4A74FBAF015A}.Release|x86.Build.0 = Release|Win32 EndGlobalSection GlobalSection(SolutionProperties) = preSolution HideSolutionNode = FALSE @@ -55,6 +101,7 @@ Global {37AA280C-34D7-44BA-AC90-2D38F88ECB26} = {E00AC103-79D7-4860-A340-71E39D593812} {4986DCD6-73E0-4B0E-91DE-C91204F313D6} = {FD0CCC62-DADB-444B-8537-DB24E05B7438} {44CE58CD-7B06-4585-8F46-CC7564481912} = {FD0CCC62-DADB-444B-8537-DB24E05B7438} + {186B407F-E3ED-47AB-A0E6-4A74FBAF015A} = {70F1DF4F-9AC5-47DB-BEB9-BB40D294B0EE} EndGlobalSection GlobalSection(ExtensibilityGlobals) = postSolution SolutionGuid = {9BF879AE-7AFD-476A-8B94-F1C666D3F789} diff --git a/Watchdog/.editorconfig b/Watchdog/.editorconfig new file mode 100644 index 0000000..8538812 --- /dev/null +++ b/Watchdog/.editorconfig @@ -0,0 +1,17 @@ +# top-most EditorConfig file +root = true + +# Unix-style newlines with a newline ending every file +[*] +charset = utf-8 +trim_trailing_whitespace = true +end_of_line = crlf +insert_final_newline = true + +# Tab indentation (no size specified) +[Makefile] +indent_style = tab + +[*.{c,h,cpp,hpp}] +indent_style = space +indent_size = 4 diff --git a/Watchdog/App.cpp b/Watchdog/App.cpp new file mode 100644 index 0000000..097d17f --- /dev/null +++ b/Watchdog/App.cpp @@ -0,0 +1,19 @@ +#include "App.hpp" +#include + +void App::initialize(Poco::Util::Application &self) { + Application::initialize(self); +} + +void App::uninitialize() { + Application::uninitialize(); +} + +int App::main(const std::vector &args) { + std::ofstream file(R"(D:\StartUp_Skaner\Projekty\poco-windows-service\log.txt)"); + file << "The service is running"; + file.flush(); + file.close(); + + while(true) {} +} \ No newline at end of file diff --git a/Watchdog/App.hpp b/Watchdog/App.hpp new file mode 100644 index 0000000..83aa36a --- /dev/null +++ b/Watchdog/App.hpp @@ -0,0 +1,25 @@ +#ifndef POCO_WINDOWS_SERVICE_APP_H +#define POCO_WINDOWS_SERVICE_APP_H + + +#include + +class App : public Poco::Util::ServerApplication { + +public: + App() = default; + + ~App() = default; + +protected: + void initialize(Application &self); + + void uninitialize(); + + int main(const std::vector &args); + + +}; + + +#endif //POCO_WINDOWS_SERVICE_APP_H \ No newline at end of file diff --git a/Watchdog/Main.cpp b/Watchdog/Main.cpp new file mode 100644 index 0000000..ef89a71 --- /dev/null +++ b/Watchdog/Main.cpp @@ -0,0 +1,4 @@ +#include +#include "App.hpp" + +POCO_SERVER_MAIN(App) diff --git a/Watchdog/Watchdog.vcxproj b/Watchdog/Watchdog.vcxproj new file mode 100644 index 0000000..74e2259 --- /dev/null +++ b/Watchdog/Watchdog.vcxproj @@ -0,0 +1,166 @@ + + + + + Debug + Win32 + + + Release + Win32 + + + Debug + x64 + + + Release + x64 + + + + 17.0 + Win32Proj + {186b407f-e3ed-47ab-a0e6-4a74fbaf015a} + Watchdog + 10.0 + HidHideWatchdog + + + + Application + true + v143 + Unicode + + + Application + false + v143 + true + Unicode + + + Application + true + v143 + Unicode + + + Application + false + v143 + true + Unicode + + + + + + + + + + + + + + + + + + + + + true + + + true + + + true + + + true + + + true + + + + Level3 + true + WIN32;_DEBUG;_CONSOLE;%(PreprocessorDefinitions) + true + MultiThreadedDebug + + + Console + true + Iphlpapi.lib;$(CoreLibraryDependencies);%(AdditionalDependencies) + + + + + Level3 + true + true + true + WIN32;NDEBUG;_CONSOLE;%(PreprocessorDefinitions) + true + MultiThreaded + + + Console + true + true + true + Iphlpapi.lib;$(CoreLibraryDependencies);%(AdditionalDependencies) + + + + + Level3 + true + _DEBUG;_CONSOLE;%(PreprocessorDefinitions) + true + MultiThreadedDebug + + + Console + true + Iphlpapi.lib;$(CoreLibraryDependencies);%(AdditionalDependencies) + + + + + Level3 + true + true + true + NDEBUG;_CONSOLE;%(PreprocessorDefinitions) + true + MultiThreaded + + + Console + true + true + true + Iphlpapi.lib;$(CoreLibraryDependencies);%(AdditionalDependencies) + + + + + + + + + + + + + + + + \ No newline at end of file diff --git a/Watchdog/Watchdog.vcxproj.filters b/Watchdog/Watchdog.vcxproj.filters new file mode 100644 index 0000000..a94cb2f --- /dev/null +++ b/Watchdog/Watchdog.vcxproj.filters @@ -0,0 +1,33 @@ + + + + + {4FC737F1-C7A5-4376-A066-2A32D752A2FF} + cpp;c;cc;cxx;c++;cppm;ixx;def;odl;idl;hpj;bat;asm;asmx + + + {93995380-89BD-4b04-88EB-625FBE52EBFB} + h;hh;hpp;hxx;h++;hm;inl;inc;ipp;xsd + + + {67DA6AB6-F800-4c08-8B7A-83BB121AAD01} + rc;ico;cur;bmp;dlg;rc2;rct;bin;rgs;gif;jpg;jpeg;jpe;resx;tiff;tif;png;wav;mfcribbon-ms + + + + + + + + Header Files + + + + + Source Files + + + Source Files + + + \ No newline at end of file diff --git a/Watchdog/vcpkg.json b/Watchdog/vcpkg.json new file mode 100644 index 0000000..5382a86 --- /dev/null +++ b/Watchdog/vcpkg.json @@ -0,0 +1,11 @@ +{ + "name": "hidhide-watchdog", + "version": "1.0.0", + "description": "hidhide-watchdog", + "license": "BSD-3-Clause", + "supports": "!(arm | uwp)", + "dependencies": [ + "poco", + "spdlog" + ] +} From a9f809b57640fae772c5153978d48046284716ee Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Benjamin=20H=C3=B6glinger-Stelzer?= Date: Sat, 28 Oct 2023 21:14:47 +0200 Subject: [PATCH 08/36] Fixed building --- HidHide.sln | 31 +++++++++++++++++-------------- Watchdog/Watchdog.vcxproj | 25 ++++++++++++------------- Watchdog/Watchdog.vcxproj.filters | 14 +++++++------- 3 files changed, 36 insertions(+), 34 deletions(-) diff --git a/HidHide.sln b/HidHide.sln index 53a5645..7174d01 100644 --- a/HidHide.sln +++ b/HidHide.sln @@ -17,7 +17,9 @@ Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "Apps", "Apps", "{FD0CCC62-D EndProject Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "Service", "Service", "{70F1DF4F-9AC5-47DB-BEB9-BB40D294B0EE}" EndProject -Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "Watchdog", "Watchdog\Watchdog.vcxproj", "{186B407F-E3ED-47AB-A0E6-4A74FBAF015A}" +Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "Setup", "Setup", "{17DC743D-7643-4120-B5B3-DEBC37D54934}" +EndProject +Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "Watchdog", "Watchdog\Watchdog.vcxproj", "{7123D882-1C64-45F7-AE84-D43202121E7E}" EndProject Global GlobalSection(SolutionConfigurationPlatforms) = preSolution @@ -81,18 +83,18 @@ Global {912E13E7-684B-4B88-8A79-F76288895389}.Release|x64.ActiveCfg = Release|x64 {912E13E7-684B-4B88-8A79-F76288895389}.Release|x86.ActiveCfg = Release|x64 {912E13E7-684B-4B88-8A79-F76288895389}.Release|x86.Build.0 = Release|x64 - {186B407F-E3ED-47AB-A0E6-4A74FBAF015A}.Debug|x64.ActiveCfg = Debug|x64 - {186B407F-E3ED-47AB-A0E6-4A74FBAF015A}.Debug|x64.Build.0 = Debug|x64 - {186B407F-E3ED-47AB-A0E6-4A74FBAF015A}.Debug|x86.ActiveCfg = Debug|Win32 - {186B407F-E3ED-47AB-A0E6-4A74FBAF015A}.Debug|x86.Build.0 = Debug|Win32 - {186B407F-E3ED-47AB-A0E6-4A74FBAF015A}.Production Release|x64.ActiveCfg = Release|x64 - {186B407F-E3ED-47AB-A0E6-4A74FBAF015A}.Production Release|x64.Build.0 = Release|x64 - {186B407F-E3ED-47AB-A0E6-4A74FBAF015A}.Production Release|x86.ActiveCfg = Release|Win32 - {186B407F-E3ED-47AB-A0E6-4A74FBAF015A}.Production Release|x86.Build.0 = Release|Win32 - {186B407F-E3ED-47AB-A0E6-4A74FBAF015A}.Release|x64.ActiveCfg = Release|x64 - {186B407F-E3ED-47AB-A0E6-4A74FBAF015A}.Release|x64.Build.0 = Release|x64 - {186B407F-E3ED-47AB-A0E6-4A74FBAF015A}.Release|x86.ActiveCfg = Release|Win32 - {186B407F-E3ED-47AB-A0E6-4A74FBAF015A}.Release|x86.Build.0 = Release|Win32 + {7123D882-1C64-45F7-AE84-D43202121E7E}.Debug|x64.ActiveCfg = Debug|x64 + {7123D882-1C64-45F7-AE84-D43202121E7E}.Debug|x64.Build.0 = Debug|x64 + {7123D882-1C64-45F7-AE84-D43202121E7E}.Debug|x86.ActiveCfg = Debug|Win32 + {7123D882-1C64-45F7-AE84-D43202121E7E}.Debug|x86.Build.0 = Debug|Win32 + {7123D882-1C64-45F7-AE84-D43202121E7E}.Production Release|x64.ActiveCfg = Release|x64 + {7123D882-1C64-45F7-AE84-D43202121E7E}.Production Release|x64.Build.0 = Release|x64 + {7123D882-1C64-45F7-AE84-D43202121E7E}.Production Release|x86.ActiveCfg = Release|Win32 + {7123D882-1C64-45F7-AE84-D43202121E7E}.Production Release|x86.Build.0 = Release|Win32 + {7123D882-1C64-45F7-AE84-D43202121E7E}.Release|x64.ActiveCfg = Release|x64 + {7123D882-1C64-45F7-AE84-D43202121E7E}.Release|x64.Build.0 = Release|x64 + {7123D882-1C64-45F7-AE84-D43202121E7E}.Release|x86.ActiveCfg = Release|Win32 + {7123D882-1C64-45F7-AE84-D43202121E7E}.Release|x86.Build.0 = Release|Win32 EndGlobalSection GlobalSection(SolutionProperties) = preSolution HideSolutionNode = FALSE @@ -101,7 +103,8 @@ Global {37AA280C-34D7-44BA-AC90-2D38F88ECB26} = {E00AC103-79D7-4860-A340-71E39D593812} {4986DCD6-73E0-4B0E-91DE-C91204F313D6} = {FD0CCC62-DADB-444B-8537-DB24E05B7438} {44CE58CD-7B06-4585-8F46-CC7564481912} = {FD0CCC62-DADB-444B-8537-DB24E05B7438} - {186B407F-E3ED-47AB-A0E6-4A74FBAF015A} = {70F1DF4F-9AC5-47DB-BEB9-BB40D294B0EE} + {912E13E7-684B-4B88-8A79-F76288895389} = {17DC743D-7643-4120-B5B3-DEBC37D54934} + {7123D882-1C64-45F7-AE84-D43202121E7E} = {70F1DF4F-9AC5-47DB-BEB9-BB40D294B0EE} EndGlobalSection GlobalSection(ExtensibilityGlobals) = postSolution SolutionGuid = {9BF879AE-7AFD-476A-8B94-F1C666D3F789} diff --git a/Watchdog/Watchdog.vcxproj b/Watchdog/Watchdog.vcxproj index 74e2259..4f3b918 100644 --- a/Watchdog/Watchdog.vcxproj +++ b/Watchdog/Watchdog.vcxproj @@ -21,10 +21,9 @@ 17.0 Win32Proj - {186b407f-e3ed-47ab-a0e6-4a74fbaf015a} + {7123d882-1c64-45f7-ae84-d43202121e7e} Watchdog 10.0 - HidHideWatchdog @@ -74,23 +73,23 @@ true - + true - + true - + true - + true Level3 true - WIN32;_DEBUG;_CONSOLE;%(PreprocessorDefinitions) + WIN32;_DEBUG;_WINDOWS;%(PreprocessorDefinitions) true MultiThreadedDebug @@ -106,7 +105,7 @@ true true true - WIN32;NDEBUG;_CONSOLE;%(PreprocessorDefinitions) + WIN32;NDEBUG;_WINDOWS;%(PreprocessorDefinitions) true MultiThreaded @@ -122,7 +121,7 @@ Level3 true - _DEBUG;_CONSOLE;%(PreprocessorDefinitions) + _DEBUG;_WINDOWS;%(PreprocessorDefinitions) true MultiThreadedDebug @@ -138,7 +137,7 @@ true true true - NDEBUG;_CONSOLE;%(PreprocessorDefinitions) + NDEBUG;_WINDOWS;%(PreprocessorDefinitions) true MultiThreaded @@ -151,14 +150,14 @@ - + + - - + diff --git a/Watchdog/Watchdog.vcxproj.filters b/Watchdog/Watchdog.vcxproj.filters index a94cb2f..ac39469 100644 --- a/Watchdog/Watchdog.vcxproj.filters +++ b/Watchdog/Watchdog.vcxproj.filters @@ -15,7 +15,12 @@ - + + Source Files + + + Source Files + @@ -23,11 +28,6 @@ - - Source Files - - - Source Files - + \ No newline at end of file From c779a953589ecf1a240dd5e58ba6d27461b2898d Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Benjamin=20H=C3=B6glinger-Stelzer?= Date: Sat, 28 Oct 2023 21:17:06 +0200 Subject: [PATCH 09/36] Style fixes --- HidHide.sln.DotSettings | 3 +++ Watchdog/App.cpp | 15 ++++++++++----- Watchdog/App.hpp | 16 +++++++--------- 3 files changed, 20 insertions(+), 14 deletions(-) create mode 100644 HidHide.sln.DotSettings diff --git a/HidHide.sln.DotSettings b/HidHide.sln.DotSettings new file mode 100644 index 0000000..c103422 --- /dev/null +++ b/HidHide.sln.DotSettings @@ -0,0 +1,3 @@ + + True + True \ No newline at end of file diff --git a/Watchdog/App.cpp b/Watchdog/App.cpp index 097d17f..0dd5f99 100644 --- a/Watchdog/App.cpp +++ b/Watchdog/App.cpp @@ -1,19 +1,24 @@ #include "App.hpp" #include -void App::initialize(Poco::Util::Application &self) { +void App::initialize(Application& self) +{ Application::initialize(self); } -void App::uninitialize() { +void App::uninitialize() +{ Application::uninitialize(); } -int App::main(const std::vector &args) { +int App::main(const std::vector& args) +{ std::ofstream file(R"(D:\StartUp_Skaner\Projekty\poco-windows-service\log.txt)"); file << "The service is running"; file.flush(); file.close(); - while(true) {} -} \ No newline at end of file + while (true) + { + } +} diff --git a/Watchdog/App.hpp b/Watchdog/App.hpp index 83aa36a..cc35206 100644 --- a/Watchdog/App.hpp +++ b/Watchdog/App.hpp @@ -4,22 +4,20 @@ #include -class App : public Poco::Util::ServerApplication { - +class App : public Poco::Util::ServerApplication +{ public: App() = default; - ~App() = default; + ~App() override = default; protected: - void initialize(Application &self); - - void uninitialize(); - - int main(const std::vector &args); + void initialize(Application& self) override; + void uninitialize() override; + int main(const std::vector& args) override; }; -#endif //POCO_WINDOWS_SERVICE_APP_H \ No newline at end of file +#endif //POCO_WINDOWS_SERVICE_APP_H From 08a74d3030d0e665dbab7817e25649ff31f805cd Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Benjamin=20H=C3=B6glinger-Stelzer?= Date: Sat, 28 Oct 2023 21:27:34 +0200 Subject: [PATCH 10/36] Update vcpkg.json --- Watchdog/vcpkg.json | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/Watchdog/vcpkg.json b/Watchdog/vcpkg.json index 5382a86..c765098 100644 --- a/Watchdog/vcpkg.json +++ b/Watchdog/vcpkg.json @@ -6,6 +6,7 @@ "supports": "!(arm | uwp)", "dependencies": [ "poco", - "spdlog" + "spdlog", + "winreg" ] } From f0785f630791f533ef0e15aa5090f65c7c55f51d Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Benjamin=20H=C3=B6glinger-Stelzer?= Date: Sat, 28 Oct 2023 22:48:16 +0200 Subject: [PATCH 11/36] Added utility functions --- Watchdog/App.cpp | 1 + Watchdog/Util.cpp | 231 ++++++++++++++++++++++++++++++++++++++ Watchdog/Util.h | 20 ++++ Watchdog/Watchdog.vcxproj | 14 ++- 4 files changed, 262 insertions(+), 4 deletions(-) create mode 100644 Watchdog/Util.cpp create mode 100644 Watchdog/Util.h diff --git a/Watchdog/App.cpp b/Watchdog/App.cpp index 0dd5f99..3b75284 100644 --- a/Watchdog/App.cpp +++ b/Watchdog/App.cpp @@ -1,5 +1,6 @@ #include "App.hpp" #include +#include "Util.h" void App::initialize(Application& self) { diff --git a/Watchdog/Util.cpp b/Watchdog/Util.cpp new file mode 100644 index 0000000..e61df33 --- /dev/null +++ b/Watchdog/Util.cpp @@ -0,0 +1,231 @@ +#include "Util.h" +#define WIN32_LEAN_AND_MEAN +#include +#include +#include +#include + +bool util::add_device_class_filter(const GUID* classGuid, const std::wstring& filterName, + DeviceClassFilterPosition::Value position) +{ + auto key = SetupDiOpenClassRegKey(classGuid, KEY_ALL_ACCESS); + + if (INVALID_HANDLE_VALUE == key) + { + spdlog::error("SetupDiOpenClassRegKey failed with error code %v", GetLastError()); + return false; + } + + LPCWSTR filterValue = (position == DeviceClassFilterPosition::Lower) ? L"LowerFilters" : L"UpperFilters"; + DWORD type, size; + std::vector filters; + + auto status = RegQueryValueExW( + key, + filterValue, + nullptr, + &type, + nullptr, + &size + ); + + // + // Value exists already, read it with returned buffer size + // + if (status == ERROR_SUCCESS) + { + std::vector temp(size / sizeof(wchar_t)); + + status = RegQueryValueExW( + key, + filterValue, + nullptr, + &type, + reinterpret_cast(&temp[0]), + &size + ); + + if (status != ERROR_SUCCESS) + { + spdlog::error("RegQueryValueExW failed with status %v", status); + RegCloseKey(key); + SetLastError(status); + return false; + } + + size_t index = 0; + size_t len = wcslen(&temp[0]); + while (len > 0) + { + filters.emplace_back(&temp[index]); + index += len + 1; + len = wcslen(&temp[index]); + } + + // + // Filter not there yet, add + // + if (std::find(filters.begin(), filters.end(), filterName) == filters.end()) + { + filters.emplace_back(filterName); + } + + const std::vector multiString = winreg::detail::BuildMultiString(filters); + + const DWORD dataSize = static_cast(multiString.size() * sizeof(wchar_t)); + + status = RegSetValueExW( + key, + filterValue, + 0, // reserved + REG_MULTI_SZ, + reinterpret_cast(&multiString[0]), + dataSize + ); + + if (status != ERROR_SUCCESS) + { + spdlog::error("RegSetValueExW failed with status %v", status); + RegCloseKey(key); + SetLastError(status); + return false; + } + + RegCloseKey(key); + return true; + } + // + // Value doesn't exist, create and populate + // + if (status == ERROR_FILE_NOT_FOUND) + { + filters.emplace_back(filterName); + + const std::vector multiString = winreg::detail::BuildMultiString(filters); + + const DWORD dataSize = static_cast(multiString.size() * sizeof(wchar_t)); + + status = RegSetValueExW( + key, + filterValue, + 0, // reserved + REG_MULTI_SZ, + reinterpret_cast(&multiString[0]), + dataSize + ); + + if (status != ERROR_SUCCESS) + { + spdlog::error("RegSetValueExW failed with status %v", status); + RegCloseKey(key); + SetLastError(status); + return false; + } + + RegCloseKey(key); + return true; + } + + RegCloseKey(key); + return false; +} + +bool util::remove_device_class_filter(const GUID* classGuid, const std::wstring& filterName, + DeviceClassFilterPosition::Value position) +{ + auto key = SetupDiOpenClassRegKey(classGuid, KEY_ALL_ACCESS); + + if (INVALID_HANDLE_VALUE == key) + { + spdlog::error("SetupDiOpenClassRegKey failed with error code %v", GetLastError()); + return false; + } + + LPCWSTR filterValue = (position == DeviceClassFilterPosition::Lower) ? L"LowerFilters" : L"UpperFilters"; + DWORD type, size; + std::vector filters; + + auto status = RegQueryValueExW( + key, + filterValue, + nullptr, + &type, + nullptr, + &size + ); + + // + // Value exists already, read it with returned buffer size + // + if (status == ERROR_SUCCESS) + { + std::vector temp(size / sizeof(wchar_t)); + + status = RegQueryValueExW( + key, + filterValue, + nullptr, + &type, + reinterpret_cast(&temp[0]), + &size + ); + + if (status != ERROR_SUCCESS) + { + spdlog::error("RegQueryValueExW failed with status %v", status); + RegCloseKey(key); + SetLastError(status); + return false; + } + + // + // Remove value, if found + // + size_t index = 0; + size_t len = wcslen(&temp[0]); + while (len > 0) + { + if (filterName != &temp[index]) + { + filters.emplace_back(&temp[index]); + } + index += len + 1; + len = wcslen(&temp[index]); + } + + const std::vector multiString = winreg::detail::BuildMultiString(filters); + + const DWORD dataSize = static_cast(multiString.size() * sizeof(wchar_t)); + + status = RegSetValueExW( + key, + filterValue, + 0, // reserved + REG_MULTI_SZ, + reinterpret_cast(&multiString[0]), + dataSize + ); + + if (status != ERROR_SUCCESS) + { + spdlog::error("RegSetValueExW failed with status %v", status); + RegCloseKey(key); + SetLastError(status); + return false; + } + + RegCloseKey(key); + return true; + } + // + // Value doesn't exist, return + // + if (status == ERROR_FILE_NOT_FOUND) + { + RegCloseKey(key); + return true; + } + + RegCloseKey(key); + return false; +} diff --git a/Watchdog/Util.h b/Watchdog/Util.h new file mode 100644 index 0000000..2be3a56 --- /dev/null +++ b/Watchdog/Util.h @@ -0,0 +1,20 @@ +#pragma once + +#include +#include + +namespace util +{ + struct DeviceClassFilterPosition + { + enum Value + { + Upper, + Lower + }; + }; + + bool add_device_class_filter(const GUID* classGuid, const std::wstring& filterName, DeviceClassFilterPosition::Value position); + + bool remove_device_class_filter(const GUID* classGuid, const std::wstring& filterName, DeviceClassFilterPosition::Value position); +}; diff --git a/Watchdog/Watchdog.vcxproj b/Watchdog/Watchdog.vcxproj index 4f3b918..16310d2 100644 --- a/Watchdog/Watchdog.vcxproj +++ b/Watchdog/Watchdog.vcxproj @@ -92,11 +92,12 @@ WIN32;_DEBUG;_WINDOWS;%(PreprocessorDefinitions) true MultiThreadedDebug + stdcpp20 Console true - Iphlpapi.lib;$(CoreLibraryDependencies);%(AdditionalDependencies) + setupapi.lib;Iphlpapi.lib;$(CoreLibraryDependencies);%(AdditionalDependencies) @@ -108,13 +109,14 @@ WIN32;NDEBUG;_WINDOWS;%(PreprocessorDefinitions) true MultiThreaded + stdcpp20 Console true true true - Iphlpapi.lib;$(CoreLibraryDependencies);%(AdditionalDependencies) + setupapi.lib;Iphlpapi.lib;$(CoreLibraryDependencies);%(AdditionalDependencies) @@ -124,11 +126,12 @@ _DEBUG;_WINDOWS;%(PreprocessorDefinitions) true MultiThreadedDebug + stdcpp20 Console true - Iphlpapi.lib;$(CoreLibraryDependencies);%(AdditionalDependencies) + setupapi.lib;Iphlpapi.lib;$(CoreLibraryDependencies);%(AdditionalDependencies) @@ -140,21 +143,24 @@ NDEBUG;_WINDOWS;%(PreprocessorDefinitions) true MultiThreaded + stdcpp20 Console true true true - Iphlpapi.lib;$(CoreLibraryDependencies);%(AdditionalDependencies) + setupapi.lib;Iphlpapi.lib;$(CoreLibraryDependencies);%(AdditionalDependencies) + + From b01c37aac64c333f1f0b4d5c387b559195cc9e03 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Benjamin=20H=C3=B6glinger-Stelzer?= Date: Sat, 28 Oct 2023 22:57:02 +0200 Subject: [PATCH 12/36] Added has_device_class_filter --- Watchdog/Util.cpp | 95 ++++++++++++++++++++++++++++++++++++++++++++--- Watchdog/Util.h | 26 ++++++++----- 2 files changed, 106 insertions(+), 15 deletions(-) diff --git a/Watchdog/Util.cpp b/Watchdog/Util.cpp index e61df33..7a4cc75 100644 --- a/Watchdog/Util.cpp +++ b/Watchdog/Util.cpp @@ -4,9 +4,11 @@ #include #include #include +#include + bool util::add_device_class_filter(const GUID* classGuid, const std::wstring& filterName, - DeviceClassFilterPosition::Value position) + DeviceClassFilterPosition::Value position) { auto key = SetupDiOpenClassRegKey(classGuid, KEY_ALL_ACCESS); @@ -72,7 +74,7 @@ bool util::add_device_class_filter(const GUID* classGuid, const std::wstring& fi const std::vector multiString = winreg::detail::BuildMultiString(filters); - const DWORD dataSize = static_cast(multiString.size() * sizeof(wchar_t)); + const DWORD dataSize = multiString.size() * sizeof(wchar_t); status = RegSetValueExW( key, @@ -103,7 +105,7 @@ bool util::add_device_class_filter(const GUID* classGuid, const std::wstring& fi const std::vector multiString = winreg::detail::BuildMultiString(filters); - const DWORD dataSize = static_cast(multiString.size() * sizeof(wchar_t)); + const DWORD dataSize = multiString.size() * sizeof(wchar_t); status = RegSetValueExW( key, @@ -131,7 +133,7 @@ bool util::add_device_class_filter(const GUID* classGuid, const std::wstring& fi } bool util::remove_device_class_filter(const GUID* classGuid, const std::wstring& filterName, - DeviceClassFilterPosition::Value position) + DeviceClassFilterPosition::Value position) { auto key = SetupDiOpenClassRegKey(classGuid, KEY_ALL_ACCESS); @@ -195,7 +197,7 @@ bool util::remove_device_class_filter(const GUID* classGuid, const std::wstring& const std::vector multiString = winreg::detail::BuildMultiString(filters); - const DWORD dataSize = static_cast(multiString.size() * sizeof(wchar_t)); + const DWORD dataSize = multiString.size() * sizeof(wchar_t); status = RegSetValueExW( key, @@ -229,3 +231,86 @@ bool util::remove_device_class_filter(const GUID* classGuid, const std::wstring& RegCloseKey(key); return false; } + +bool util::has_device_class_filter(const GUID* classGuid, const std::wstring& filterName, + DeviceClassFilterPosition::Value position, const std::wstring& serviceName, + bool& found) +{ + auto key = SetupDiOpenClassRegKey(classGuid, KEY_READ); + + if (INVALID_HANDLE_VALUE == key) + { + spdlog::error("SetupDiOpenClassRegKey failed with error code %v", GetLastError()); + return false; + } + + LPCWSTR filterValue = (position == DeviceClassFilterPosition::Lower) ? L"LowerFilters" : L"UpperFilters"; + DWORD type, size; + std::vector filters; + + auto status = RegQueryValueExW( + key, + filterValue, + nullptr, + &type, + nullptr, + &size + ); + + // + // Value exists already, read it with returned buffer size + // + if (status == ERROR_SUCCESS) + { + std::vector temp(size / sizeof(wchar_t)); + + status = RegQueryValueExW( + key, + filterValue, + nullptr, + &type, + reinterpret_cast(&temp[0]), + &size + ); + + if (status != ERROR_SUCCESS) + { + spdlog::error("RegQueryValueExW failed with status %v", status); + RegCloseKey(key); + SetLastError(status); + return false; + } + + // + // Remove value, if found + // + size_t index = 0; + size_t len = wcslen(&temp[0]); + while (len > 0) + { + if (filterName != &temp[index]) + { + filters.emplace_back(&temp[index]); + } + index += len + 1; + len = wcslen(&temp[index]); + } + + // check if it contains our desired service + found = std::ranges::find(filters, serviceName) != filters.end(); + + RegCloseKey(key); + return true; + } + // + // Value doesn't exist, return + // + if (status == ERROR_FILE_NOT_FOUND) + { + RegCloseKey(key); + return true; + } + + RegCloseKey(key); + return false; +} diff --git a/Watchdog/Util.h b/Watchdog/Util.h index 2be3a56..a12327f 100644 --- a/Watchdog/Util.h +++ b/Watchdog/Util.h @@ -5,16 +5,22 @@ namespace util { - struct DeviceClassFilterPosition - { - enum Value - { - Upper, - Lower - }; - }; + struct DeviceClassFilterPosition + { + enum Value + { + Upper, + Lower + }; + }; - bool add_device_class_filter(const GUID* classGuid, const std::wstring& filterName, DeviceClassFilterPosition::Value position); + bool add_device_class_filter(const GUID* classGuid, const std::wstring& filterName, + DeviceClassFilterPosition::Value position); - bool remove_device_class_filter(const GUID* classGuid, const std::wstring& filterName, DeviceClassFilterPosition::Value position); + bool remove_device_class_filter(const GUID* classGuid, const std::wstring& filterName, + DeviceClassFilterPosition::Value position); + + bool has_device_class_filter(const GUID* classGuid, const std::wstring& filterName, + DeviceClassFilterPosition::Value position, const std::wstring& serviceName, + bool& found); }; From 27a6e8684c9f7221c18f4d32e469dcda3a6e0da6 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Benjamin=20H=C3=B6glinger-Stelzer?= Date: Sat, 28 Oct 2023 22:58:51 +0200 Subject: [PATCH 13/36] Update Util.cpp --- Watchdog/Util.cpp | 12 ++++++------ 1 file changed, 6 insertions(+), 6 deletions(-) diff --git a/Watchdog/Util.cpp b/Watchdog/Util.cpp index 7a4cc75..be0d3a4 100644 --- a/Watchdog/Util.cpp +++ b/Watchdog/Util.cpp @@ -74,7 +74,7 @@ bool util::add_device_class_filter(const GUID* classGuid, const std::wstring& fi const std::vector multiString = winreg::detail::BuildMultiString(filters); - const DWORD dataSize = multiString.size() * sizeof(wchar_t); + const auto& dataSize = multiString.size() * sizeof(wchar_t); status = RegSetValueExW( key, @@ -82,7 +82,7 @@ bool util::add_device_class_filter(const GUID* classGuid, const std::wstring& fi 0, // reserved REG_MULTI_SZ, reinterpret_cast(&multiString[0]), - dataSize + static_cast(dataSize) ); if (status != ERROR_SUCCESS) @@ -105,7 +105,7 @@ bool util::add_device_class_filter(const GUID* classGuid, const std::wstring& fi const std::vector multiString = winreg::detail::BuildMultiString(filters); - const DWORD dataSize = multiString.size() * sizeof(wchar_t); + const auto dataSize = multiString.size() * sizeof(wchar_t); status = RegSetValueExW( key, @@ -113,7 +113,7 @@ bool util::add_device_class_filter(const GUID* classGuid, const std::wstring& fi 0, // reserved REG_MULTI_SZ, reinterpret_cast(&multiString[0]), - dataSize + static_cast(dataSize) ); if (status != ERROR_SUCCESS) @@ -197,7 +197,7 @@ bool util::remove_device_class_filter(const GUID* classGuid, const std::wstring& const std::vector multiString = winreg::detail::BuildMultiString(filters); - const DWORD dataSize = multiString.size() * sizeof(wchar_t); + const auto dataSize = multiString.size() * sizeof(wchar_t); status = RegSetValueExW( key, @@ -205,7 +205,7 @@ bool util::remove_device_class_filter(const GUID* classGuid, const std::wstring& 0, // reserved REG_MULTI_SZ, reinterpret_cast(&multiString[0]), - dataSize + static_cast(dataSize) ); if (status != ERROR_SUCCESS) From e6e726dac19c196dd24f88ccfa37b76dc4056355 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Benjamin=20H=C3=B6glinger-Stelzer?= Date: Sat, 28 Oct 2023 23:03:41 +0200 Subject: [PATCH 14/36] Update App.cpp --- Watchdog/App.cpp | 23 +++++++++++++++++++---- 1 file changed, 19 insertions(+), 4 deletions(-) diff --git a/Watchdog/App.cpp b/Watchdog/App.cpp index 3b75284..ac12862 100644 --- a/Watchdog/App.cpp +++ b/Watchdog/App.cpp @@ -1,6 +1,8 @@ #include "App.hpp" #include #include "Util.h" +#include +#include void App::initialize(Application& self) { @@ -14,10 +16,23 @@ void App::uninitialize() int App::main(const std::vector& args) { - std::ofstream file(R"(D:\StartUp_Skaner\Projekty\poco-windows-service\log.txt)"); - file << "The service is running"; - file.flush(); - file.close(); + auto debugSink = std::make_shared(false); +#if _DEBUG + debugSink->set_level(spdlog::level::debug); +#else + debugSink->set_level(spdlog::level::info); +#endif + + auto logger = std::make_shared("HidHideWatchdog", debugSink); + +#if _DEBUG + spdlog::set_level(spdlog::level::debug); + logger->flush_on(spdlog::level::debug); +#else + logger->flush_on(spdlog::level::info); +#endif + + spdlog::set_default_logger(logger); while (true) { From 17f7f31e7be2e63b1f99bb35c4e56bcaa8557436 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Benjamin=20H=C3=B6glinger-Stelzer?= Date: Sat, 28 Oct 2023 23:37:33 +0200 Subject: [PATCH 15/36] Added device class GUIDs --- HidHide.sln.DotSettings | 3 ++- Watchdog/App.cpp | 57 +++++++++++++++++++++++++++++------------ Watchdog/Util.cpp | 19 ++++++-------- Watchdog/Util.h | 3 +-- 4 files changed, 51 insertions(+), 31 deletions(-) diff --git a/HidHide.sln.DotSettings b/HidHide.sln.DotSettings index c103422..1d7e4b0 100644 --- a/HidHide.sln.DotSettings +++ b/HidHide.sln.DotSettings @@ -1,3 +1,4 @@  True - True \ No newline at end of file + True + True \ No newline at end of file diff --git a/Watchdog/App.cpp b/Watchdog/App.cpp index ac12862..73da602 100644 --- a/Watchdog/App.cpp +++ b/Watchdog/App.cpp @@ -1,8 +1,17 @@ #include "App.hpp" -#include #include "Util.h" +#include +#include #include -#include +#include + +// XnaComposite +DEFINE_GUID(GUID_DEVCLASS_XNACOMPOSITE, + 0xd61ca365L, 0x5af4, 0x4486, 0x99, 0x8b, 0x9d, 0xb4, 0x73, 0x4c, 0x6c, 0xa3); + +// XboxComposite +DEFINE_GUID(GUID_DEVCLASS_XBOXCOMPOSITE, + 0x05f5cfe2L, 0x4733, 0x4950, 0xa6, 0xbb, 0x07, 0xaa, 0xd0, 0x1a, 0x3a, 0x84); void App::initialize(Application& self) { @@ -16,25 +25,39 @@ void App::uninitialize() int App::main(const std::vector& args) { - auto debugSink = std::make_shared(false); -#if _DEBUG - debugSink->set_level(spdlog::level::debug); -#else - debugSink->set_level(spdlog::level::info); -#endif + const auto console = spdlog::stdout_color_mt("console"); + const auto err_logger = spdlog::stderr_color_mt("stderr"); + + set_default_logger(err_logger); - auto logger = std::make_shared("HidHideWatchdog", debugSink); + console->info("Application started"); -#if _DEBUG - spdlog::set_level(spdlog::level::debug); - logger->flush_on(spdlog::level::debug); -#else - logger->flush_on(spdlog::level::info); -#endif + const auto serviceName = L"HidHide"; - spdlog::set_default_logger(logger); + // filter value or entry not present + if (bool found = false; !has_device_class_filter(&GUID_DEVCLASS_HIDCLASS, serviceName, + util::DeviceClassFilterPosition::Upper, found) || !found) + { + // TODO: implement me + } - while (true) + // filter value or entry not present + if (bool found = false; !has_device_class_filter(&GUID_DEVCLASS_XNACOMPOSITE, serviceName, + util::DeviceClassFilterPosition::Upper, found) || !found) { + // TODO: implement me } + + // filter value or entry not present + if (bool found = false; !has_device_class_filter(&GUID_DEVCLASS_XBOXCOMPOSITE, serviceName, + util::DeviceClassFilterPosition::Upper, found) || !found) + { + // TODO: implement me + } + + waitForTerminationRequest(); + + console->info("Exiting application"); + + return EXIT_OK; } diff --git a/Watchdog/Util.cpp b/Watchdog/Util.cpp index be0d3a4..cd53f16 100644 --- a/Watchdog/Util.cpp +++ b/Watchdog/Util.cpp @@ -113,7 +113,7 @@ bool util::add_device_class_filter(const GUID* classGuid, const std::wstring& fi 0, // reserved REG_MULTI_SZ, reinterpret_cast(&multiString[0]), - static_cast(dataSize) + (DWORD)dataSize ); if (status != ERROR_SUCCESS) @@ -205,7 +205,7 @@ bool util::remove_device_class_filter(const GUID* classGuid, const std::wstring& 0, // reserved REG_MULTI_SZ, reinterpret_cast(&multiString[0]), - static_cast(dataSize) + (DWORD)dataSize ); if (status != ERROR_SUCCESS) @@ -233,10 +233,9 @@ bool util::remove_device_class_filter(const GUID* classGuid, const std::wstring& } bool util::has_device_class_filter(const GUID* classGuid, const std::wstring& filterName, - DeviceClassFilterPosition::Value position, const std::wstring& serviceName, - bool& found) + DeviceClassFilterPosition::Value position, bool& found) { - auto key = SetupDiOpenClassRegKey(classGuid, KEY_READ); + const auto key = SetupDiOpenClassRegKey(classGuid, KEY_READ); if (INVALID_HANDLE_VALUE == key) { @@ -282,23 +281,21 @@ bool util::has_device_class_filter(const GUID* classGuid, const std::wstring& fi } // - // Remove value, if found + // Enumerate values // size_t index = 0; size_t len = wcslen(&temp[0]); while (len > 0) { - if (filterName != &temp[index]) + if (filterName == &temp[index]) { - filters.emplace_back(&temp[index]); + found = true; + break; } index += len + 1; len = wcslen(&temp[index]); } - // check if it contains our desired service - found = std::ranges::find(filters, serviceName) != filters.end(); - RegCloseKey(key); return true; } diff --git a/Watchdog/Util.h b/Watchdog/Util.h index a12327f..448034f 100644 --- a/Watchdog/Util.h +++ b/Watchdog/Util.h @@ -21,6 +21,5 @@ namespace util DeviceClassFilterPosition::Value position); bool has_device_class_filter(const GUID* classGuid, const std::wstring& filterName, - DeviceClassFilterPosition::Value position, const std::wstring& serviceName, - bool& found); + DeviceClassFilterPosition::Value position, bool& found); }; From 6f309c76fc3b68c3b28a7fc3db5b8fc660328224 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Benjamin=20H=C3=B6glinger-Stelzer?= Date: Sat, 28 Oct 2023 23:39:44 +0200 Subject: [PATCH 16/36] Update App.cpp --- Watchdog/App.cpp | 19 ++++++++++++++----- 1 file changed, 14 insertions(+), 5 deletions(-) diff --git a/Watchdog/App.cpp b/Watchdog/App.cpp index 73da602..75ad853 100644 --- a/Watchdog/App.cpp +++ b/Watchdog/App.cpp @@ -38,21 +38,30 @@ int App::main(const std::vector& args) if (bool found = false; !has_device_class_filter(&GUID_DEVCLASS_HIDCLASS, serviceName, util::DeviceClassFilterPosition::Upper, found) || !found) { - // TODO: implement me + if (!add_device_class_filter(&GUID_DEVCLASS_HIDCLASS, serviceName, util::DeviceClassFilterPosition::Upper)) + { + err_logger->error("Failed to add upper filters entry for HIDClass"); + } } - // filter value or entry not present + // filter value or entry not present if (bool found = false; !has_device_class_filter(&GUID_DEVCLASS_XNACOMPOSITE, serviceName, util::DeviceClassFilterPosition::Upper, found) || !found) { - // TODO: implement me + if (!add_device_class_filter(&GUID_DEVCLASS_XNACOMPOSITE, serviceName, util::DeviceClassFilterPosition::Upper)) + { + err_logger->error("Failed to add upper filters entry for XnaComposite"); + } } - // filter value or entry not present + // filter value or entry not present if (bool found = false; !has_device_class_filter(&GUID_DEVCLASS_XBOXCOMPOSITE, serviceName, util::DeviceClassFilterPosition::Upper, found) || !found) { - // TODO: implement me + if (!add_device_class_filter(&GUID_DEVCLASS_XBOXCOMPOSITE, serviceName, util::DeviceClassFilterPosition::Upper)) + { + err_logger->error("Failed to add upper filters entry for XboxComposite"); + } } waitForTerminationRequest(); From ef8c019021ac09cfade19f9794746dc0be51c3ac Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Benjamin=20H=C3=B6glinger-Stelzer?= Date: Sat, 28 Oct 2023 23:43:59 +0200 Subject: [PATCH 17/36] Finished implementation --- Watchdog/App.cpp | 6 ++++++ Watchdog/Util.cpp | 18 +++++++++--------- 2 files changed, 15 insertions(+), 9 deletions(-) diff --git a/Watchdog/App.cpp b/Watchdog/App.cpp index 75ad853..98ca580 100644 --- a/Watchdog/App.cpp +++ b/Watchdog/App.cpp @@ -38,6 +38,8 @@ int App::main(const std::vector& args) if (bool found = false; !has_device_class_filter(&GUID_DEVCLASS_HIDCLASS, serviceName, util::DeviceClassFilterPosition::Upper, found) || !found) { + console->warn("Filter missing for HIDClass, adding"); + if (!add_device_class_filter(&GUID_DEVCLASS_HIDCLASS, serviceName, util::DeviceClassFilterPosition::Upper)) { err_logger->error("Failed to add upper filters entry for HIDClass"); @@ -48,6 +50,8 @@ int App::main(const std::vector& args) if (bool found = false; !has_device_class_filter(&GUID_DEVCLASS_XNACOMPOSITE, serviceName, util::DeviceClassFilterPosition::Upper, found) || !found) { + console->warn("Filter missing for XnaComposite, adding"); + if (!add_device_class_filter(&GUID_DEVCLASS_XNACOMPOSITE, serviceName, util::DeviceClassFilterPosition::Upper)) { err_logger->error("Failed to add upper filters entry for XnaComposite"); @@ -58,6 +62,8 @@ int App::main(const std::vector& args) if (bool found = false; !has_device_class_filter(&GUID_DEVCLASS_XBOXCOMPOSITE, serviceName, util::DeviceClassFilterPosition::Upper, found) || !found) { + console->warn("Filter missing for XboxComposite, adding"); + if (!add_device_class_filter(&GUID_DEVCLASS_XBOXCOMPOSITE, serviceName, util::DeviceClassFilterPosition::Upper)) { err_logger->error("Failed to add upper filters entry for XboxComposite"); diff --git a/Watchdog/Util.cpp b/Watchdog/Util.cpp index cd53f16..d6c813d 100644 --- a/Watchdog/Util.cpp +++ b/Watchdog/Util.cpp @@ -14,7 +14,7 @@ bool util::add_device_class_filter(const GUID* classGuid, const std::wstring& fi if (INVALID_HANDLE_VALUE == key) { - spdlog::error("SetupDiOpenClassRegKey failed with error code %v", GetLastError()); + spdlog::error("SetupDiOpenClassRegKey failed with error code {}", GetLastError()); return false; } @@ -49,7 +49,7 @@ bool util::add_device_class_filter(const GUID* classGuid, const std::wstring& fi if (status != ERROR_SUCCESS) { - spdlog::error("RegQueryValueExW failed with status %v", status); + spdlog::error("RegQueryValueExW failed with status {}", status); RegCloseKey(key); SetLastError(status); return false; @@ -87,7 +87,7 @@ bool util::add_device_class_filter(const GUID* classGuid, const std::wstring& fi if (status != ERROR_SUCCESS) { - spdlog::error("RegSetValueExW failed with status %v", status); + spdlog::error("RegSetValueExW failed with status {}", status); RegCloseKey(key); SetLastError(status); return false; @@ -118,7 +118,7 @@ bool util::add_device_class_filter(const GUID* classGuid, const std::wstring& fi if (status != ERROR_SUCCESS) { - spdlog::error("RegSetValueExW failed with status %v", status); + spdlog::error("RegSetValueExW failed with status {}", status); RegCloseKey(key); SetLastError(status); return false; @@ -139,7 +139,7 @@ bool util::remove_device_class_filter(const GUID* classGuid, const std::wstring& if (INVALID_HANDLE_VALUE == key) { - spdlog::error("SetupDiOpenClassRegKey failed with error code %v", GetLastError()); + spdlog::error("SetupDiOpenClassRegKey failed with error code {}", GetLastError()); return false; } @@ -174,7 +174,7 @@ bool util::remove_device_class_filter(const GUID* classGuid, const std::wstring& if (status != ERROR_SUCCESS) { - spdlog::error("RegQueryValueExW failed with status %v", status); + spdlog::error("RegQueryValueExW failed with status {}", status); RegCloseKey(key); SetLastError(status); return false; @@ -210,7 +210,7 @@ bool util::remove_device_class_filter(const GUID* classGuid, const std::wstring& if (status != ERROR_SUCCESS) { - spdlog::error("RegSetValueExW failed with status %v", status); + spdlog::error("RegSetValueExW failed with status {}", status); RegCloseKey(key); SetLastError(status); return false; @@ -239,7 +239,7 @@ bool util::has_device_class_filter(const GUID* classGuid, const std::wstring& fi if (INVALID_HANDLE_VALUE == key) { - spdlog::error("SetupDiOpenClassRegKey failed with error code %v", GetLastError()); + spdlog::error("SetupDiOpenClassRegKey failed with error code {}", GetLastError()); return false; } @@ -274,7 +274,7 @@ bool util::has_device_class_filter(const GUID* classGuid, const std::wstring& fi if (status != ERROR_SUCCESS) { - spdlog::error("RegQueryValueExW failed with status %v", status); + spdlog::error("RegQueryValueExW failed with status {}", status); RegCloseKey(key); SetLastError(status); return false; From 17324a8cf819b8ada0e633341cdb89410d662710 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Benjamin=20H=C3=B6glinger-Stelzer?= Date: Sat, 28 Oct 2023 23:46:38 +0200 Subject: [PATCH 18/36] Create README.md --- Watchdog/README.md | 9 +++++++++ 1 file changed, 9 insertions(+) create mode 100644 Watchdog/README.md diff --git a/Watchdog/README.md b/Watchdog/README.md new file mode 100644 index 0000000..9c9db08 --- /dev/null +++ b/Watchdog/README.md @@ -0,0 +1,9 @@ +# HidHide Watchdog + +TBD + +## 3rd party credits + +- [POCO C++ Libraries](https://pocoproject.org/) +- [WinReg](https://github.com/GiovanniDicanio/WinReg) +- [Fast C++ logging library](https://github.com/gabime/spdlog) From 65be14699c28ffb26aac56e3967d3cb1c2025509 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Benjamin=20H=C3=B6glinger-Stelzer?= Date: Sat, 28 Oct 2023 23:49:28 +0200 Subject: [PATCH 19/36] Added version resource --- Watchdog/Watchdog.rc | Bin 0 -> 4866 bytes Watchdog/Watchdog.vcxproj | 16 ++++++++++++++++ Watchdog/resource.h | 14 ++++++++++++++ 3 files changed, 30 insertions(+) create mode 100644 Watchdog/Watchdog.rc create mode 100644 Watchdog/resource.h diff --git a/Watchdog/Watchdog.rc b/Watchdog/Watchdog.rc new file mode 100644 index 0000000000000000000000000000000000000000..f23d2a8b23391e381008ef923aefbdb6fb1f680d GIT binary patch literal 4866 zcmdUzTTdE66vxkVlYWOSzSPvHs1NO<0-`BiBA2#_39*8g#DamP+N7Vo?e9OsxVx}u zq^6hyDF)&DJck1G~0!8(80lj0=l_wSWz6WM_86s$}nYBD=J%^%w)- zF>?plfLU}S-p+ZCSc%)U-GZ}fuk975thsp!Xph|+usaU7Fh##=S5|P?qFi!#7miN6 zx9!;K*083PZQqWpZ6{U%TIT)GYW4+4o!S^X9X1Xv;ZKFihptwX@foOm21HxNW;cmCva< z`O_r3N}Sv#x@tV)`;#Y{N!ftM2{GJ;>Ja*6cWMpjA#uFq;80n%l51SmgRX!4O$%l}<1$j|Z+6Ph)O*eoA2a{D{zUUij1*wOgO zue_(WKCZsfrTH#-ChGJ~ zfQvc;W1qaPOyERB@CtF~N70=aanGN?uS~X=h`cPg0X|_j}vK zgEhxpQJGW?RksQir%9G%TQzX0gJ_`MIy^dW2nNnF12T_*A!~mk8}qq^tjKa* zxA$oC!D;lB-)vqdG + + HidHideWatchdog + + + HidHideWatchdog + + + HidHideWatchdog + + + HidHideWatchdog + true @@ -160,11 +172,15 @@ + + + + diff --git a/Watchdog/resource.h b/Watchdog/resource.h new file mode 100644 index 0000000..7eefed3 --- /dev/null +++ b/Watchdog/resource.h @@ -0,0 +1,14 @@ +//{{NO_DEPENDENCIES}} +// Microsoft Visual C++ generated include file. +// Used by Watchdog.rc + +// Next default values for new objects +// +#ifdef APSTUDIO_INVOKED +#ifndef APSTUDIO_READONLY_SYMBOLS +#define _APS_NEXT_RESOURCE_VALUE 101 +#define _APS_NEXT_COMMAND_VALUE 40001 +#define _APS_NEXT_CONTROL_VALUE 1001 +#define _APS_NEXT_SYMED_VALUE 101 +#endif +#endif From eb7646af69af36d3ed6bf9225875e02e86a259b8 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Benjamin=20H=C3=B6glinger-Stelzer?= Date: Sat, 28 Oct 2023 23:50:07 +0200 Subject: [PATCH 20/36] Update README.md --- Watchdog/README.md | 1 + 1 file changed, 1 insertion(+) diff --git a/Watchdog/README.md b/Watchdog/README.md index 9c9db08..4b03616 100644 --- a/Watchdog/README.md +++ b/Watchdog/README.md @@ -7,3 +7,4 @@ TBD - [POCO C++ Libraries](https://pocoproject.org/) - [WinReg](https://github.com/GiovanniDicanio/WinReg) - [Fast C++ logging library](https://github.com/gabime/spdlog) +- [nefcon](https://github.com/nefarius/nefcon) From d928ad006a2bbcf07bbcd8d0fcde96833343e6e5 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Benjamin=20H=C3=B6glinger-Stelzer?= Date: Sun, 29 Oct 2023 00:22:03 +0200 Subject: [PATCH 21/36] Added more logging --- Watchdog/App.cpp | 12 ++++++++++++ Watchdog/README.md | 10 +++++++++- 2 files changed, 21 insertions(+), 1 deletion(-) diff --git a/Watchdog/App.cpp b/Watchdog/App.cpp index 98ca580..9883fb6 100644 --- a/Watchdog/App.cpp +++ b/Watchdog/App.cpp @@ -45,6 +45,10 @@ int App::main(const std::vector& args) err_logger->error("Failed to add upper filters entry for HIDClass"); } } + else + { + console->info("HIDClass is configured properly"); + } // filter value or entry not present if (bool found = false; !has_device_class_filter(&GUID_DEVCLASS_XNACOMPOSITE, serviceName, @@ -57,6 +61,10 @@ int App::main(const std::vector& args) err_logger->error("Failed to add upper filters entry for XnaComposite"); } } + else + { + console->info("XnaComposite is configured properly"); + } // filter value or entry not present if (bool found = false; !has_device_class_filter(&GUID_DEVCLASS_XBOXCOMPOSITE, serviceName, @@ -69,6 +77,10 @@ int App::main(const std::vector& args) err_logger->error("Failed to add upper filters entry for XboxComposite"); } } + else + { + console->info("XboxComposite is configured properly"); + } waitForTerminationRequest(); diff --git a/Watchdog/README.md b/Watchdog/README.md index 4b03616..a3c293b 100644 --- a/Watchdog/README.md +++ b/Watchdog/README.md @@ -1,6 +1,14 @@ # HidHide Watchdog -TBD +Small Windows service checking and rectifying missing device class filter entries. + +## How to install + +Elevated terminal: + +```PowerShell +.\HidHideWatchdog.exe /registerService /displayName "HidHide Watchdog" +``` ## 3rd party credits From cb12c60d20aca8af2b9ca5852730698cd1f0e36f Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Benjamin=20H=C3=B6glinger-Stelzer?= Date: Sun, 29 Oct 2023 14:42:59 +0100 Subject: [PATCH 22/36] Update App.cpp --- Watchdog/App.cpp | 120 +++++++++++++++++++++++++++-------------------- 1 file changed, 70 insertions(+), 50 deletions(-) diff --git a/Watchdog/App.cpp b/Watchdog/App.cpp index 9883fb6..2729e81 100644 --- a/Watchdog/App.cpp +++ b/Watchdog/App.cpp @@ -5,6 +5,9 @@ #include #include +#include +#include + // XnaComposite DEFINE_GUID(GUID_DEVCLASS_XNACOMPOSITE, 0xd61ca365L, 0x5af4, 0x4486, 0x99, 0x8b, 0x9d, 0xb4, 0x73, 0x4c, 0x6c, 0xa3); @@ -13,6 +16,66 @@ DEFINE_GUID(GUID_DEVCLASS_XNACOMPOSITE, DEFINE_GUID(GUID_DEVCLASS_XBOXCOMPOSITE, 0x05f5cfe2L, 0x4733, 0x4950, 0xa6, 0xbb, 0x07, 0xaa, 0xd0, 0x1a, 0x3a, 0x84); +// +// Background task running as long as the service is running +// +class WatchdogTask : public Poco::Task +{ +public: + explicit WatchdogTask(const std::string& name) + : Task(name) + { + } + + void runTask() override + { + // sleep breaks on app termination + while (!sleep(3000)) + { + const auto serviceName = L"HidHide"; + + // filter value or entry not present + if (bool found = false; !has_device_class_filter(&GUID_DEVCLASS_HIDCLASS, serviceName, + util::DeviceClassFilterPosition::Upper, found) || !found) + { + spdlog::warn("Filter missing for HIDClass, adding"); + + if (!add_device_class_filter(&GUID_DEVCLASS_HIDCLASS, serviceName, + util::DeviceClassFilterPosition::Upper)) + { + spdlog::error("Failed to add upper filters entry for HIDClass"); + } + } + + // filter value or entry not present + if (bool found = false; !has_device_class_filter(&GUID_DEVCLASS_XNACOMPOSITE, serviceName, + util::DeviceClassFilterPosition::Upper, found) || !found) + { + spdlog::warn("Filter missing for XnaComposite, adding"); + + if (!add_device_class_filter(&GUID_DEVCLASS_XNACOMPOSITE, serviceName, + util::DeviceClassFilterPosition::Upper)) + { + spdlog::error("Failed to add upper filters entry for XnaComposite"); + } + } + + // filter value or entry not present + if (bool found = false; !has_device_class_filter(&GUID_DEVCLASS_XBOXCOMPOSITE, serviceName, + util::DeviceClassFilterPosition::Upper, found) || !found) + { + spdlog::warn("Filter missing for XboxComposite, adding"); + + if (!add_device_class_filter(&GUID_DEVCLASS_XBOXCOMPOSITE, serviceName, + util::DeviceClassFilterPosition::Upper)) + { + spdlog::error("Failed to add upper filters entry for XboxComposite"); + } + } + } + } +}; + void App::initialize(Application& self) { Application::initialize(self); @@ -23,6 +86,9 @@ void App::uninitialize() Application::uninitialize(); } +// +// Main service routine +// int App::main(const std::vector& args) { const auto console = spdlog::stdout_color_mt("console"); @@ -32,57 +98,11 @@ int App::main(const std::vector& args) console->info("Application started"); - const auto serviceName = L"HidHide"; - - // filter value or entry not present - if (bool found = false; !has_device_class_filter(&GUID_DEVCLASS_HIDCLASS, serviceName, - util::DeviceClassFilterPosition::Upper, found) || !found) - { - console->warn("Filter missing for HIDClass, adding"); - - if (!add_device_class_filter(&GUID_DEVCLASS_HIDCLASS, serviceName, util::DeviceClassFilterPosition::Upper)) - { - err_logger->error("Failed to add upper filters entry for HIDClass"); - } - } - else - { - console->info("HIDClass is configured properly"); - } - - // filter value or entry not present - if (bool found = false; !has_device_class_filter(&GUID_DEVCLASS_XNACOMPOSITE, serviceName, - util::DeviceClassFilterPosition::Upper, found) || !found) - { - console->warn("Filter missing for XnaComposite, adding"); - - if (!add_device_class_filter(&GUID_DEVCLASS_XNACOMPOSITE, serviceName, util::DeviceClassFilterPosition::Upper)) - { - err_logger->error("Failed to add upper filters entry for XnaComposite"); - } - } - else - { - console->info("XnaComposite is configured properly"); - } - - // filter value or entry not present - if (bool found = false; !has_device_class_filter(&GUID_DEVCLASS_XBOXCOMPOSITE, serviceName, - util::DeviceClassFilterPosition::Upper, found) || !found) - { - console->warn("Filter missing for XboxComposite, adding"); - - if (!add_device_class_filter(&GUID_DEVCLASS_XBOXCOMPOSITE, serviceName, util::DeviceClassFilterPosition::Upper)) - { - err_logger->error("Failed to add upper filters entry for XboxComposite"); - } - } - else - { - console->info("XboxComposite is configured properly"); - } - + Poco::TaskManager tm; + tm.start(new WatchdogTask("HidHideWatchdog")); waitForTerminationRequest(); + tm.cancelAll(); + tm.joinAll(); console->info("Exiting application"); From bd2490b3e713eedd5de2fbde11fb56c0c5987488 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Benjamin=20H=C3=B6glinger-Stelzer?= Date: Sun, 29 Oct 2023 14:55:51 +0100 Subject: [PATCH 23/36] Added admin check --- Watchdog/App.cpp | 21 +++++++++++----- Watchdog/Util.cpp | 63 +++++++++++++++++++++++++++++++++++++++++++++-- Watchdog/Util.h | 4 +++ 3 files changed, 80 insertions(+), 8 deletions(-) diff --git a/Watchdog/App.cpp b/Watchdog/App.cpp index 2729e81..3440c8c 100644 --- a/Watchdog/App.cpp +++ b/Watchdog/App.cpp @@ -98,13 +98,22 @@ int App::main(const std::vector& args) console->info("Application started"); - Poco::TaskManager tm; - tm.start(new WatchdogTask("HidHideWatchdog")); - waitForTerminationRequest(); - tm.cancelAll(); - tm.joinAll(); + const bool is_admin = util::is_admin(); + + if (is_admin) + { + Poco::TaskManager tm; + tm.start(new WatchdogTask("HidHideWatchdog")); + waitForTerminationRequest(); + tm.cancelAll(); + tm.joinAll(); + } + else + { + err_logger->error("App need administrative permissions to run"); + } console->info("Exiting application"); - return EXIT_OK; + return is_admin ? EXIT_OK : EXIT_TEMPFAIL; } diff --git a/Watchdog/Util.cpp b/Watchdog/Util.cpp index d6c813d..d420963 100644 --- a/Watchdog/Util.cpp +++ b/Watchdog/Util.cpp @@ -113,7 +113,8 @@ bool util::add_device_class_filter(const GUID* classGuid, const std::wstring& fi 0, // reserved REG_MULTI_SZ, reinterpret_cast(&multiString[0]), - (DWORD)dataSize + // ReSharper disable once CppRedundantCastExpression + static_cast(dataSize) ); if (status != ERROR_SUCCESS) @@ -205,7 +206,8 @@ bool util::remove_device_class_filter(const GUID* classGuid, const std::wstring& 0, // reserved REG_MULTI_SZ, reinterpret_cast(&multiString[0]), - (DWORD)dataSize + // ReSharper disable once CppRedundantCastExpression + static_cast(dataSize) ); if (status != ERROR_SUCCESS) @@ -311,3 +313,60 @@ bool util::has_device_class_filter(const GUID* classGuid, const std::wstring& fi RegCloseKey(key); return false; } + +unsigned long util::is_admin_mode(bool& is_admin) +{ + DWORD dwError = ERROR_SUCCESS; + PSID pAdministratorsGroup = nullptr; + BOOL IsAdmin = 0; + + // Allocate and initialize a SID of the administrators group. + SID_IDENTIFIER_AUTHORITY NtAuthority = SECURITY_NT_AUTHORITY; + if (!AllocateAndInitializeSid( + &NtAuthority, + 2, + SECURITY_BUILTIN_DOMAIN_RID, + DOMAIN_ALIAS_RID_ADMINS, + 0, 0, 0, 0, 0, 0, + &pAdministratorsGroup)) + { + dwError = GetLastError(); + goto Cleanup; + } + + // Determine whether the SID of administrators group is enabled in + // the primary access token of the process. + if (!CheckTokenMembership(nullptr, pAdministratorsGroup, &IsAdmin)) + { + dwError = GetLastError(); + } + + is_admin = IsAdmin > 0; + +Cleanup: + // Centralized cleanup for all allocated resources. + if (pAdministratorsGroup) + { + FreeSid(pAdministratorsGroup); + pAdministratorsGroup = nullptr; + } + + return dwError; +} + +bool util::is_admin() +{ + bool isAdmin = false; + + if (is_admin_mode(isAdmin) != ERROR_SUCCESS) + { + return false; + } + + if (!isAdmin) + { + return false; + } + + return true; +} diff --git a/Watchdog/Util.h b/Watchdog/Util.h index 448034f..5c2f1ae 100644 --- a/Watchdog/Util.h +++ b/Watchdog/Util.h @@ -22,4 +22,8 @@ namespace util bool has_device_class_filter(const GUID* classGuid, const std::wstring& filterName, DeviceClassFilterPosition::Value position, bool& found); + + unsigned long is_admin_mode(bool& is_admin); + + bool is_admin(); }; From db451f186064fbb98736705ca32c4a3a92c15b8b Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Benjamin=20H=C3=B6glinger-Stelzer?= Date: Sun, 29 Oct 2023 14:58:30 +0100 Subject: [PATCH 24/36] Added more logging --- Watchdog/App.cpp | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/Watchdog/App.cpp b/Watchdog/App.cpp index 3440c8c..359b153 100644 --- a/Watchdog/App.cpp +++ b/Watchdog/App.cpp @@ -29,6 +29,8 @@ class WatchdogTask : public Poco::Task void runTask() override { + spdlog::get("console")->info("Started watchdog background thread"); + // sleep breaks on app termination while (!sleep(3000)) { @@ -73,6 +75,8 @@ class WatchdogTask : public Poco::Task } } } + + spdlog::get("console")->info("Stopping watchdog background thread"); } }; From ffeccbb4126c81c798fff4c3c8e6f588f91bdcfb Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Benjamin=20H=C3=B6glinger-Stelzer?= Date: Sun, 29 Oct 2023 14:59:45 +0100 Subject: [PATCH 25/36] Update README.md --- Watchdog/README.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/Watchdog/README.md b/Watchdog/README.md index a3c293b..cedb468 100644 --- a/Watchdog/README.md +++ b/Watchdog/README.md @@ -12,7 +12,7 @@ Elevated terminal: ## 3rd party credits +- [Fast C++ logging library](https://github.com/gabime/spdlog) - [POCO C++ Libraries](https://pocoproject.org/) - [WinReg](https://github.com/GiovanniDicanio/WinReg) -- [Fast C++ logging library](https://github.com/gabime/spdlog) - [nefcon](https://github.com/nefarius/nefcon) From d4338b64e92991ad6e4919a650654a733ccb1d21 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Benjamin=20H=C3=B6glinger-Stelzer?= Date: Sun, 29 Oct 2023 15:30:07 +0100 Subject: [PATCH 26/36] Update vcpkg.json --- Watchdog/vcpkg.json | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/Watchdog/vcpkg.json b/Watchdog/vcpkg.json index c765098..ab25a09 100644 --- a/Watchdog/vcpkg.json +++ b/Watchdog/vcpkg.json @@ -2,7 +2,7 @@ "name": "hidhide-watchdog", "version": "1.0.0", "description": "hidhide-watchdog", - "license": "BSD-3-Clause", + "license": "MIT", "supports": "!(arm | uwp)", "dependencies": [ "poco", From 1382ea368a15c9d495ecb2793391c76551b74625 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Benjamin=20H=C3=B6glinger-Stelzer?= Date: Sun, 29 Oct 2023 15:40:43 +0100 Subject: [PATCH 27/36] Added checkServiceStatus --- Watchdog/App.cpp | 55 +++++++++++++++++++++++++++++++++++++++++++++ Watchdog/README.md | 1 + Watchdog/vcpkg.json | 3 ++- 3 files changed, 58 insertions(+), 1 deletion(-) diff --git a/Watchdog/App.cpp b/Watchdog/App.cpp index 359b153..68ccc07 100644 --- a/Watchdog/App.cpp +++ b/Watchdog/App.cpp @@ -2,6 +2,9 @@ #include "Util.h" #include #include + +#include + #include #include @@ -21,6 +24,58 @@ DEFINE_GUID(GUID_DEVCLASS_XBOXCOMPOSITE, // class WatchdogTask : public Poco::Task { + static DWORD checkServiceStatus(const std::wstring& serviceName, int& serviceState) + { + SC_HANDLE sch = nullptr; + SC_HANDLE svc = nullptr; + + sg::make_scope_guard( + [sch, svc]() noexcept + { + if (sch) CloseServiceHandle(svc); + if (svc) CloseServiceHandle(svc); + }); + + sch = OpenSCManager( + nullptr, + nullptr, + SC_MANAGER_ALL_ACCESS + ); + if (sch == nullptr) + { + return GetLastError(); + } + + svc = OpenService( + sch, + serviceName.c_str(), + SC_MANAGER_ALL_ACCESS + ); + if (svc == nullptr) + { + return GetLastError(); + } + + SERVICE_STATUS_PROCESS stat; + DWORD needed = 0; + BOOL ret = QueryServiceStatusEx( + svc, + SC_STATUS_PROCESS_INFO, + (BYTE*)&stat, + sizeof stat, + &needed + ); + if (ret == 0) + { + return GetLastError(); + } + + // ReSharper disable once CppRedundantCastExpression + serviceState = (DWORD)stat.dwCurrentState; + + return ERROR_SUCCESS; + } + public: explicit WatchdogTask(const std::string& name) : Task(name) diff --git a/Watchdog/README.md b/Watchdog/README.md index cedb468..4ece4ef 100644 --- a/Watchdog/README.md +++ b/Watchdog/README.md @@ -12,6 +12,7 @@ Elevated terminal: ## 3rd party credits +- [A modern C++ scope guard that is easy to use but hard to misuse](https://github.com/ricab/scope_guard) - [Fast C++ logging library](https://github.com/gabime/spdlog) - [POCO C++ Libraries](https://pocoproject.org/) - [WinReg](https://github.com/GiovanniDicanio/WinReg) diff --git a/Watchdog/vcpkg.json b/Watchdog/vcpkg.json index ab25a09..1bc3baf 100644 --- a/Watchdog/vcpkg.json +++ b/Watchdog/vcpkg.json @@ -7,6 +7,7 @@ "dependencies": [ "poco", "spdlog", - "winreg" + "winreg", + "scope-guard" ] } From 9c1b2d5a5b45277091da158458d1f800034b6565 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Benjamin=20H=C3=B6glinger-Stelzer?= Date: Sun, 29 Oct 2023 15:44:03 +0100 Subject: [PATCH 28/36] Using Pascal Case cuz I can --- Watchdog/App.cpp | 19 +++++++++---------- Watchdog/Util.cpp | 12 ++++++------ Watchdog/Util.h | 16 ++++++++-------- 3 files changed, 23 insertions(+), 24 deletions(-) diff --git a/Watchdog/App.cpp b/Watchdog/App.cpp index 68ccc07..1b4de5f 100644 --- a/Watchdog/App.cpp +++ b/Watchdog/App.cpp @@ -24,7 +24,7 @@ DEFINE_GUID(GUID_DEVCLASS_XBOXCOMPOSITE, // class WatchdogTask : public Poco::Task { - static DWORD checkServiceStatus(const std::wstring& serviceName, int& serviceState) + static DWORD CheckServiceStatus(const std::wstring& serviceName, unsigned long& serviceState) { SC_HANDLE sch = nullptr; SC_HANDLE svc = nullptr; @@ -70,8 +70,7 @@ class WatchdogTask : public Poco::Task return GetLastError(); } - // ReSharper disable once CppRedundantCastExpression - serviceState = (DWORD)stat.dwCurrentState; + serviceState = stat.dwCurrentState; return ERROR_SUCCESS; } @@ -92,12 +91,12 @@ class WatchdogTask : public Poco::Task const auto serviceName = L"HidHide"; // filter value or entry not present - if (bool found = false; !has_device_class_filter(&GUID_DEVCLASS_HIDCLASS, serviceName, + if (bool found = false; !HasDeviceClassFilter(&GUID_DEVCLASS_HIDCLASS, serviceName, util::DeviceClassFilterPosition::Upper, found) || !found) { spdlog::warn("Filter missing for HIDClass, adding"); - if (!add_device_class_filter(&GUID_DEVCLASS_HIDCLASS, serviceName, + if (!AddDeviceClassFilter(&GUID_DEVCLASS_HIDCLASS, serviceName, util::DeviceClassFilterPosition::Upper)) { spdlog::error("Failed to add upper filters entry for HIDClass"); @@ -105,12 +104,12 @@ class WatchdogTask : public Poco::Task } // filter value or entry not present - if (bool found = false; !has_device_class_filter(&GUID_DEVCLASS_XNACOMPOSITE, serviceName, + if (bool found = false; !HasDeviceClassFilter(&GUID_DEVCLASS_XNACOMPOSITE, serviceName, util::DeviceClassFilterPosition::Upper, found) || !found) { spdlog::warn("Filter missing for XnaComposite, adding"); - if (!add_device_class_filter(&GUID_DEVCLASS_XNACOMPOSITE, serviceName, + if (!AddDeviceClassFilter(&GUID_DEVCLASS_XNACOMPOSITE, serviceName, util::DeviceClassFilterPosition::Upper)) { spdlog::error("Failed to add upper filters entry for XnaComposite"); @@ -118,12 +117,12 @@ class WatchdogTask : public Poco::Task } // filter value or entry not present - if (bool found = false; !has_device_class_filter(&GUID_DEVCLASS_XBOXCOMPOSITE, serviceName, + if (bool found = false; !HasDeviceClassFilter(&GUID_DEVCLASS_XBOXCOMPOSITE, serviceName, util::DeviceClassFilterPosition::Upper, found) || !found) { spdlog::warn("Filter missing for XboxComposite, adding"); - if (!add_device_class_filter(&GUID_DEVCLASS_XBOXCOMPOSITE, serviceName, + if (!AddDeviceClassFilter(&GUID_DEVCLASS_XBOXCOMPOSITE, serviceName, util::DeviceClassFilterPosition::Upper)) { spdlog::error("Failed to add upper filters entry for XboxComposite"); @@ -157,7 +156,7 @@ int App::main(const std::vector& args) console->info("Application started"); - const bool is_admin = util::is_admin(); + const bool is_admin = util::IsAdmin(); if (is_admin) { diff --git a/Watchdog/Util.cpp b/Watchdog/Util.cpp index d420963..72c6674 100644 --- a/Watchdog/Util.cpp +++ b/Watchdog/Util.cpp @@ -7,7 +7,7 @@ #include -bool util::add_device_class_filter(const GUID* classGuid, const std::wstring& filterName, +bool util::AddDeviceClassFilter(const GUID* classGuid, const std::wstring& filterName, DeviceClassFilterPosition::Value position) { auto key = SetupDiOpenClassRegKey(classGuid, KEY_ALL_ACCESS); @@ -133,7 +133,7 @@ bool util::add_device_class_filter(const GUID* classGuid, const std::wstring& fi return false; } -bool util::remove_device_class_filter(const GUID* classGuid, const std::wstring& filterName, +bool util::RemoveDeviceClassFilter(const GUID* classGuid, const std::wstring& filterName, DeviceClassFilterPosition::Value position) { auto key = SetupDiOpenClassRegKey(classGuid, KEY_ALL_ACCESS); @@ -234,7 +234,7 @@ bool util::remove_device_class_filter(const GUID* classGuid, const std::wstring& return false; } -bool util::has_device_class_filter(const GUID* classGuid, const std::wstring& filterName, +bool util::HasDeviceClassFilter(const GUID* classGuid, const std::wstring& filterName, DeviceClassFilterPosition::Value position, bool& found) { const auto key = SetupDiOpenClassRegKey(classGuid, KEY_READ); @@ -314,7 +314,7 @@ bool util::has_device_class_filter(const GUID* classGuid, const std::wstring& fi return false; } -unsigned long util::is_admin_mode(bool& is_admin) +unsigned long util::IsAdminMode(bool& is_admin) { DWORD dwError = ERROR_SUCCESS; PSID pAdministratorsGroup = nullptr; @@ -354,11 +354,11 @@ unsigned long util::is_admin_mode(bool& is_admin) return dwError; } -bool util::is_admin() +bool util::IsAdmin() { bool isAdmin = false; - if (is_admin_mode(isAdmin) != ERROR_SUCCESS) + if (IsAdminMode(isAdmin) != ERROR_SUCCESS) { return false; } diff --git a/Watchdog/Util.h b/Watchdog/Util.h index 5c2f1ae..7d7a31f 100644 --- a/Watchdog/Util.h +++ b/Watchdog/Util.h @@ -14,16 +14,16 @@ namespace util }; }; - bool add_device_class_filter(const GUID* classGuid, const std::wstring& filterName, - DeviceClassFilterPosition::Value position); + bool AddDeviceClassFilter(const GUID* classGuid, const std::wstring& filterName, + DeviceClassFilterPosition::Value position); - bool remove_device_class_filter(const GUID* classGuid, const std::wstring& filterName, - DeviceClassFilterPosition::Value position); + bool RemoveDeviceClassFilter(const GUID* classGuid, const std::wstring& filterName, + DeviceClassFilterPosition::Value position); - bool has_device_class_filter(const GUID* classGuid, const std::wstring& filterName, - DeviceClassFilterPosition::Value position, bool& found); + bool HasDeviceClassFilter(const GUID* classGuid, const std::wstring& filterName, + DeviceClassFilterPosition::Value position, bool& found); - unsigned long is_admin_mode(bool& is_admin); + unsigned long IsAdminMode(bool& is_admin); - bool is_admin(); + bool IsAdmin(); }; From 8a8c9f43f1d5d49007cc7c800309ea361696254f Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Benjamin=20H=C3=B6glinger-Stelzer?= Date: Sun, 29 Oct 2023 17:06:45 +0100 Subject: [PATCH 29/36] Update App.cpp --- Watchdog/App.cpp | 42 ++++++++++++++++++++++++++++++++++-------- 1 file changed, 34 insertions(+), 8 deletions(-) diff --git a/Watchdog/App.cpp b/Watchdog/App.cpp index 1b4de5f..a628c72 100644 --- a/Watchdog/App.cpp +++ b/Watchdog/App.cpp @@ -85,19 +85,43 @@ class WatchdogTask : public Poco::Task { spdlog::get("console")->info("Started watchdog background thread"); - // sleep breaks on app termination - while (!sleep(3000)) + do { const auto serviceName = L"HidHide"; + unsigned long winError = 0, serviceStatus = 0; + + // check if driver service is healthy + if ((winError = CheckServiceStatus(serviceName, serviceStatus)) != ERROR_SUCCESS) + { + spdlog::error("Failed to query service status, error {}", winError); + continue; + } + + // expecting service to be running as an indicator that driver is loaded + if (serviceStatus != SERVICE_RUNNING) + { + spdlog::error("Driver service not detected running, removing filter entries"); + + // + // Prevents bricked HID devices + // + + RemoveDeviceClassFilter(&GUID_DEVCLASS_HIDCLASS, + serviceName, util::DeviceClassFilterPosition::Upper); + RemoveDeviceClassFilter(&GUID_DEVCLASS_XNACOMPOSITE, + serviceName, util::DeviceClassFilterPosition::Upper); + RemoveDeviceClassFilter(&GUID_DEVCLASS_XBOXCOMPOSITE, + serviceName, util::DeviceClassFilterPosition::Upper); + } // filter value or entry not present if (bool found = false; !HasDeviceClassFilter(&GUID_DEVCLASS_HIDCLASS, serviceName, - util::DeviceClassFilterPosition::Upper, found) || !found) + util::DeviceClassFilterPosition::Upper, found) || !found) { spdlog::warn("Filter missing for HIDClass, adding"); if (!AddDeviceClassFilter(&GUID_DEVCLASS_HIDCLASS, serviceName, - util::DeviceClassFilterPosition::Upper)) + util::DeviceClassFilterPosition::Upper)) { spdlog::error("Failed to add upper filters entry for HIDClass"); } @@ -105,12 +129,12 @@ class WatchdogTask : public Poco::Task // filter value or entry not present if (bool found = false; !HasDeviceClassFilter(&GUID_DEVCLASS_XNACOMPOSITE, serviceName, - util::DeviceClassFilterPosition::Upper, found) || !found) + util::DeviceClassFilterPosition::Upper, found) || !found) { spdlog::warn("Filter missing for XnaComposite, adding"); if (!AddDeviceClassFilter(&GUID_DEVCLASS_XNACOMPOSITE, serviceName, - util::DeviceClassFilterPosition::Upper)) + util::DeviceClassFilterPosition::Upper)) { spdlog::error("Failed to add upper filters entry for XnaComposite"); } @@ -118,17 +142,19 @@ class WatchdogTask : public Poco::Task // filter value or entry not present if (bool found = false; !HasDeviceClassFilter(&GUID_DEVCLASS_XBOXCOMPOSITE, serviceName, - util::DeviceClassFilterPosition::Upper, found) || !found) + util::DeviceClassFilterPosition::Upper, found) || !found) { spdlog::warn("Filter missing for XboxComposite, adding"); if (!AddDeviceClassFilter(&GUID_DEVCLASS_XBOXCOMPOSITE, serviceName, - util::DeviceClassFilterPosition::Upper)) + util::DeviceClassFilterPosition::Upper)) { spdlog::error("Failed to add upper filters entry for XboxComposite"); } } } + // sleep breaks on app termination + while (!sleep(5000)); spdlog::get("console")->info("Stopping watchdog background thread"); } From 2a6f325ea9273b6ad6e907b7c05dfeddc03f1b93 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Benjamin=20H=C3=B6glinger-Stelzer?= Date: Sun, 29 Oct 2023 18:23:46 +0100 Subject: [PATCH 30/36] Updated setup version Disabled user options in updater Fixed watchdog build dorectory --- Setup/HidHide.aip | 36 +++++++++++++++++++++++-------- Watchdog/Watchdog.vcxproj | 2 ++ Watchdog/Watchdog.vcxproj.filters | 14 ++++++++++++ 3 files changed, 43 insertions(+), 9 deletions(-) diff --git a/Setup/HidHide.aip b/Setup/HidHide.aip index bad34a5..e29d00c 100644 --- a/Setup/HidHide.aip +++ b/Setup/HidHide.aip @@ -1,5 +1,5 @@ - + @@ -18,7 +18,7 @@ - + @@ -86,6 +86,13 @@ + + + + + + + @@ -94,7 +101,7 @@ - + @@ -118,12 +125,14 @@ + + @@ -174,6 +183,10 @@ + + + + @@ -181,6 +194,7 @@ + @@ -195,6 +209,7 @@ + @@ -203,12 +218,14 @@ + + @@ -252,7 +269,7 @@ - + @@ -264,7 +281,7 @@ - + @@ -294,13 +311,14 @@ - - - + + + + @@ -337,7 +355,7 @@ - + diff --git a/Watchdog/Watchdog.vcxproj b/Watchdog/Watchdog.vcxproj index f967601..9cb085b 100644 --- a/Watchdog/Watchdog.vcxproj +++ b/Watchdog/Watchdog.vcxproj @@ -75,12 +75,14 @@ HidHideWatchdog + $(SolutionDir)bin\$(Configuration)\$(Platform)\ HidHideWatchdog HidHideWatchdog + $(SolutionDir)bin\$(Configuration)\$(Platform)\ true diff --git a/Watchdog/Watchdog.vcxproj.filters b/Watchdog/Watchdog.vcxproj.filters index ac39469..ee58282 100644 --- a/Watchdog/Watchdog.vcxproj.filters +++ b/Watchdog/Watchdog.vcxproj.filters @@ -21,13 +21,27 @@ Source Files + + Source Files + Header Files + + Header Files + + + Header Files + + + + Resource Files + + \ No newline at end of file From 240bb99f631d09cf80aa7c6218cc6f6fc41617ff Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Benjamin=20H=C3=B6glinger-Stelzer?= Date: Sun, 29 Oct 2023 18:25:29 +0100 Subject: [PATCH 31/36] Updated path to signtool to latest SDK --- stage0.ps1 | 2 +- stage1.ps1 | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/stage0.ps1 b/stage0.ps1 index 51dd79d..0f36b7e 100644 --- a/stage0.ps1 +++ b/stage0.ps1 @@ -9,7 +9,7 @@ Param( [Switch]$NoSigning ) #end param -$signTool = "C:\Program Files (x86)\Windows Kits\10\bin\10.0.19041.0\x64\signtool.exe" +$signTool = "C:\Program Files (x86)\Windows Kits\10\bin\10.0.22621.0\x64\signtool.exe" $timestampUrl = "http://timestamp.digicert.com" $certName = "Nefarius Software Solutions e.U." diff --git a/stage1.ps1 b/stage1.ps1 index 3923fa6..a0dbca3 100644 --- a/stage1.ps1 +++ b/stage1.ps1 @@ -1,4 +1,4 @@ -$signTool = "C:\Program Files (x86)\Windows Kits\10\bin\10.0.19041.0\x64\signtool.exe" +$signTool = "C:\Program Files (x86)\Windows Kits\10\bin\10.0.22621.0\x64\signtool.exe" $timestampUrl = "http://timestamp.digicert.com" $certName = "Nefarius Software Solutions e.U." From 80c3ff6ab7a4607b742411fa104ec0f98b71b0d6 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Benjamin=20H=C3=B6glinger-Stelzer?= Date: Sun, 29 Oct 2023 18:32:50 +0100 Subject: [PATCH 32/36] Added missing build parameters --- Watchdog/Watchdog.rc | Bin 4866 -> 5330 bytes Watchdog/Watchdog.vcxproj | 29 +++++++++++++++++++++++++++++ 2 files changed, 29 insertions(+) diff --git a/Watchdog/Watchdog.rc b/Watchdog/Watchdog.rc index f23d2a8b23391e381008ef923aefbdb6fb1f680d..4960a317071cde0f648073bc738d673ab6beba21 100644 GIT binary patch delta 368 zcmZotyQI0njAP;w0l|2Nc!m%L4TfR{O$G%9WrpI3^F_sxg^(0X*5!z0bz;b2NSVBx zPgdBMA(0`AA)ld$K?kT6Sv->=4^vz+h#{4sj3Eb$lN{Vk$`J2@J;2}$bXqP$0nlrC43!LiKsp!bY|Y6Rxs4}#ai8Nx aQVR+MMv#p5<`AATCahATn?LXgu>b&Ecu#@= delta 116 zcmcbl*`&6?jAL>SM~I*ygARiM6dN+|GH^{^&Z)?YBD%Sgi<^m2Y4UNt+{trzIVQj2 iImfTWV91~c)Cj?blLPs5H}mk7F=3Gq-+Vwohy?(2l@}NQ diff --git a/Watchdog/Watchdog.vcxproj b/Watchdog/Watchdog.vcxproj index 9cb085b..8775cd7 100644 --- a/Watchdog/Watchdog.vcxproj +++ b/Watchdog/Watchdog.vcxproj @@ -18,12 +18,23 @@ x64 + + $(APPVEYOR_BUILD_VERSION) + 17.0 Win32Proj {7123d882-1c64-45f7-ae84-d43202121e7e} Watchdog 10.0 + Nefarius Software Solutions e.U. + HidHide + 1.0.0.0 + Eric Korff de Gidts + $([System.Text.RegularExpressions.Regex]::Match($(BldProductVersion), "(\d{1,3}).(\d{1,3}).(\d{1,5}).(\d{1,3})").Groups[1].Value) + $([System.Text.RegularExpressions.Regex]::Match($(BldProductVersion), "(\d{1,3}).(\d{1,3}).(\d{1,5}).(\d{1,3})").Groups[2].Value) + $([System.Text.RegularExpressions.Regex]::Match($(BldProductVersion), "(\d{1,3}).(\d{1,3}).(\d{1,5}).(\d{1,3})").Groups[3].Value) + $([System.Text.RegularExpressions.Regex]::Match($(BldProductVersion), "(\d{1,3}).(\d{1,3}).(\d{1,5}).(\d{1,3})").Groups[4].Value) @@ -135,6 +146,7 @@ + /D BldCompanyName="$(BldCompanyName)" /D BldProductName="$(BldProductName)" /D BldProductVersion="$(BldProductVersion)" /D BldProductVersionMajor="$(BldProductVersionMajor)" /D BldProductVersionMinor="$(BldProductVersionMinor)" /D BldProductVersionRevision="$(BldProductVersionRevision)" /D BldProductVersionBuild="$(BldProductVersionBuild)" /D BldProductDescription="$(BldProductDescription)" /D BldCopyright="$(BldCopyright)" Level3 true _DEBUG;_WINDOWS;%(PreprocessorDefinitions) @@ -147,9 +159,18 @@ true setupapi.lib;Iphlpapi.lib;$(CoreLibraryDependencies);%(AdditionalDependencies) + + /D TargetExt="$(TargetExt)" /D TargetFileName="$(TargetFileName)" /D TargetName="$(TargetName)" /D BldCompanyName="$(BldCompanyName)" /D BldProductName="$(BldProductName)" /D BldProductVersion="$(BldProductVersion)" /D BldProductVersionMajor="$(BldProductVersionMajor)" /D BldProductVersionMinor="$(BldProductVersionMinor)" /D BldProductVersionRevision="$(BldProductVersionRevision)" /D BldProductVersionBuild="$(BldProductVersionBuild)" /D BldProductDescription="$(BldProductDescription)" /D BldCopyright="$(BldCopyright)" + 0x0409 + $(IntDir);%(AdditionalIncludeDirectories) + %(BldParameters)%(AdditionalOptions) + NDEBUG;%(PreprocessorDefinitions) + _WINDLL;%(PreprocessorDefinitions) + + /D BldCompanyName="$(BldCompanyName)" /D BldProductName="$(BldProductName)" /D BldProductVersion="$(BldProductVersion)" /D BldProductVersionMajor="$(BldProductVersionMajor)" /D BldProductVersionMinor="$(BldProductVersionMinor)" /D BldProductVersionRevision="$(BldProductVersionRevision)" /D BldProductVersionBuild="$(BldProductVersionBuild)" /D BldProductDescription="$(BldProductDescription)" /D BldCopyright="$(BldCopyright)" Level3 true true @@ -166,6 +187,14 @@ true setupapi.lib;Iphlpapi.lib;$(CoreLibraryDependencies);%(AdditionalDependencies) + + /D TargetExt="$(TargetExt)" /D TargetFileName="$(TargetFileName)" /D TargetName="$(TargetName)" /D BldCompanyName="$(BldCompanyName)" /D BldProductName="$(BldProductName)" /D BldProductVersion="$(BldProductVersion)" /D BldProductVersionMajor="$(BldProductVersionMajor)" /D BldProductVersionMinor="$(BldProductVersionMinor)" /D BldProductVersionRevision="$(BldProductVersionRevision)" /D BldProductVersionBuild="$(BldProductVersionBuild)" /D BldProductDescription="$(BldProductDescription)" /D BldCopyright="$(BldCopyright)" + 0x0409 + $(IntDir);%(AdditionalIncludeDirectories) + %(BldParameters)%(AdditionalOptions) + NDEBUG;%(PreprocessorDefinitions) + _WINDLL;%(PreprocessorDefinitions) + From 6bbf6a279d7b7ad20830705aad1065200f15e6d6 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Benjamin=20H=C3=B6glinger-Stelzer?= Date: Sun, 29 Oct 2023 18:36:48 +0100 Subject: [PATCH 33/36] Create favicon.ico --- Watchdog/favicon.ico | Bin 0 -> 133343 bytes 1 file changed, 0 insertions(+), 0 deletions(-) create mode 100644 Watchdog/favicon.ico diff --git a/Watchdog/favicon.ico b/Watchdog/favicon.ico new file mode 100644 index 0000000000000000000000000000000000000000..58bc7d4d8dfd6b0bc146193e20cfe7017d761992 GIT binary patch literal 133343 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%0DodXR?!h~yH_m3_TPIGhELe3&V_z| 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 D4r!0- literal 0 HcmV?d00001 From af6ff0f762a92cff805183b066b321f0bbd841ac Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Benjamin=20H=C3=B6glinger-Stelzer?= Date: Mon, 30 Oct 2023 12:52:30 +0100 Subject: [PATCH 34/36] Added latest binaries to Git LFS Added watchdog service to setup --- .gitattributes | 7 ++ Setup/HidHide.aip | 9 ++ Setup/nefconw.exe | Bin 556968 -> 131 bytes drivers/x64/HidHide.pdb | 3 + drivers/x64/HidHide/HidHide.inf | 148 ++++++++++++++++++++++++++++++++ drivers/x64/HidHide/HidHide.sys | 3 + drivers/x64/HidHide/LICENSE.rtf | 36 ++++++++ drivers/x64/HidHide/hidhide.cat | Bin 0 -> 11897 bytes 8 files changed, 206 insertions(+) create mode 100644 drivers/x64/HidHide.pdb create mode 100644 drivers/x64/HidHide/HidHide.inf create mode 100644 drivers/x64/HidHide/HidHide.sys create mode 100644 drivers/x64/HidHide/LICENSE.rtf create mode 100644 drivers/x64/HidHide/hidhide.cat diff --git a/.gitattributes b/.gitattributes index dfe0770..e2aecd9 100644 --- a/.gitattributes +++ b/.gitattributes @@ -1,2 +1,9 @@ # Auto detect text files and perform LF normalization * text=auto +*.cab filter=lfs diff=lfs merge=lfs -text +*.msi filter=lfs diff=lfs merge=lfs -text +*.dll filter=lfs diff=lfs merge=lfs -text +*.exe filter=lfs diff=lfs merge=lfs -text +*.sys filter=lfs diff=lfs merge=lfs -text +*.zip filter=lfs diff=lfs merge=lfs -text +*.pdb filter=lfs diff=lfs merge=lfs -text diff --git a/Setup/HidHide.aip b/Setup/HidHide.aip index e29d00c..349632c 100644 --- a/Setup/HidHide.aip +++ b/Setup/HidHide.aip @@ -52,6 +52,7 @@ + @@ -82,6 +83,7 @@ + @@ -257,6 +259,7 @@ + @@ -342,6 +345,12 @@ + + + + + + diff --git a/Setup/nefconw.exe b/Setup/nefconw.exe index 3b7a0032a9dfd987e522bc6052baa861c31881eb..d9202b90b37aa04e595f1a0058f934a2b957d6f1 100644 GIT binary patch literal 131 zcmWN?K@!3s3;@78uiyg~k_LqS2GStRsC0z(;OliSd&y_C{?>KQV{FDe+Ppo>SpL^D zFWg^d9Kz-T)!VK|P3Zgv6tE;D%W02+#3EWxcrPFs0mLK6M3k)y6sYhjVP(!PLxPey NsnNcoo%7KL^#k^(C$|6q literal 556968 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 diff --git a/drivers/x64/HidHide.pdb b/drivers/x64/HidHide.pdb new file mode 100644 index 0000000..bd24076 --- /dev/null +++ b/drivers/x64/HidHide.pdb @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:e0d80006c9b6a111f8db52aa6635c843c6981e2bf8a7f90083c3f320282fba68 +size 839680 diff --git a/drivers/x64/HidHide/HidHide.inf b/drivers/x64/HidHide/HidHide.inf new file mode 100644 index 0000000..2e53b21 --- /dev/null +++ b/drivers/x64/HidHide/HidHide.inf @@ -0,0 +1,148 @@ +; (c) Eric Korff de Gidts +; SPDX-License-Identifier: MIT +; HidHide.inf + +; ==== Version Section ==== + +[Version] +Signature = "$Windows NT$" +Class = System +ClassGUID = {4D36E97D-E325-11CE-BFC1-08002BE10318} +Provider = %ManufacturerName% +CatalogFile = HidHide.cat +PnpLockdown = 1 +DriverVer = 10/29/2023,1.3.170.0 + +; ==== SourceDisksNames Section ==== + +[SourceDisksNames] +1 = %DiskName%,,,"" + +; ==== SourceDisksFiles Section ==== + +[SourceDisksFiles] +HidHide.sys = 1,, + +; ==== DestinationDirs Section ==== + +[DestinationDirs] +HidHide_Device_CopyFiles = 12 ; %windir%\System32\DRIVERS\ + +; ==== Manufacturer Section ==== + +[Manufacturer] +%ManufacturerName% = Standard,NTamd64 + +; ==== Models Section ==== + +[Standard.NTamd64] +%HidHideDeviceName% = HidHide_Device,root\HidHide + +; ==== DDInstall Section ==== + +[HidHide_Device] +CopyFiles = HidHide_Device_CopyFiles + +[HidHide_Device_CopyFiles] +HidHide.sys,,,0x00004000 ; COPYFLG_IN_USE_RENAME + +; ==== DDInstall.Services Section ==== + +[HidHide_Device.Services] +AddService = HidHide,%AddServiceFlags%,HidHide_Device_Service_AddService + +[HidHide_Device_Service_AddService] +DisplayName = %HidHideServiceDisplayName% +ServiceType = %SERVICE_KERNEL_DRIVER% +StartType = %SERVICE_DEMAND_START% +ErrorControl = %SERVICE_ERROR_NORMAL% +ServiceBinary = %12%\HidHide.sys +AddReg = HidHide_Device_Service_AddReg + +[HidHide_Device_Service_AddReg] +HKR,"Parameters","WhitelistedFullImageNames",%AddRegMultiSzInitialOnly%,"" ; HKLM\SYSTEM\ControlSet001\Services\HidHide\Parameters\WhitelistedFullImageNames (set initially-only as we may want to preserve earlier user selections) +HKR,"Parameters","BlacklistedDeviceInstancePaths",%AddRegMultiSzInitialOnly%,"" ; HKLM\SYSTEM\ControlSet001\Services\HidHide\Parameters\BlacklistedDeviceInstancePaths (set initially-only as we may want to preserve earlier user selections) +HKR,"Parameters","Active",%FLG_ADDREG_TYPE_DWORD%,0 ; HKLM\SYSTEM\ControlSet001\Services\HidHide\Parameters\Active (disable service after each install as we require the user to run the configuration utility first) + +[HidHide_Device_Service_AddReg.Security] +"D:P(OD;CI;KA;;;BA)(OD;CI;KA;;;BU)" ; HKLM\SYSTEM\ControlSet001\Services\HidHide\Parameters\ (prohibit build in adminstrators, and build in users of doing anything with the keys) + +; ==== DDInstall.Wdf Section ==== + +[HidHide_Device.Wdf] +KmdfService = HidHide,HidHide_Device_Wdf_KmdfService + +[HidHide_Device_Wdf_KmdfService] +KmdfLibraryVersion = 1.15 + +; ==== Strings Section ==== + +[Strings] +ManufacturerName = "Nefarius Software Solutions e.U." +DiskName = "Nefarius HidHide Installation Disk" +HidHideDeviceName = "Nefarius HidHide Device" +HidHideServiceDisplayName = "Nefarius HidHide Service" +AddServiceFlags = 0x000013FE ; SPSVCINST_NOCLOBBER_REQUIREDPRIVILEGES + ; SPSVCINST_STOPSERVICE + ; SPSVCINST_NOCLOBBER_DESCRIPTION + ; SPSVCINST_NOCLOBBER_DEPENDENCIES + ; SPSVCINST_NOCLOBBER_LOADORDERGROUP + ; SPSVCINST_NOCLOBBER_ERRORCONTROL + ; SPSVCINST_NOCLOBBER_STARTTYPE + ; SPSVCINST_NOCLOBBER_DISPLAYNAME + ; SPSVCINST_DELETEEVENTLOGENTRY + ; SPSVCINST_ASSOCSERVICE +AddRegMultiSzInitialOnly = 0x00010002 ; FLG_ADDREG_TYPE_MULTI_SZ + ; FLG_ADDREG_NOCLOBBER + +SPSVCINST_TAGTOFRONT = 0x00000001 +SPSVCINST_ASSOCSERVICE = 0x00000002 +SPSVCINST_DELETEEVENTLOGENTRY = 0x00000004 +SPSVCINST_NOCLOBBER_DISPLAYNAME = 0x00000008 +SPSVCINST_NOCLOBBER_STARTTYPE = 0x00000010 +SPSVCINST_NOCLOBBER_ERRORCONTROL = 0x00000020 +SPSVCINST_NOCLOBBER_LOADORDERGROUP = 0x00000040 +SPSVCINST_NOCLOBBER_DEPENDENCIES = 0x00000080 +SPSVCINST_NOCLOBBER_DESCRIPTION = 0x00000100 +SPSVCINST_STOPSERVICE = 0x00000200 +SPSVCINST_CLOBBER_SECURITY = 0x00000400 +SPSVCINST_STARTSERVICE = 0x00000800 +SPSVCINST_NOCLOBBER_REQUIREDPRIVILEGES = 0x00001000 + +SERVICE_KERNEL_DRIVER = 0x00000001 +SERVICE_FILE_SYSTEM_DRIVER = 0x00000002 +SERVICE_WIN32_OWN_PROCESS = 0x00000010 +SERVICE_WIN32_SHARE_PROCESS = 0x00000020 +SERVICE_INTERACTIVE_PROCESS = 0x00000100 + +SERVICE_BOOT_START = 0x0 +SERVICE_SYSTEM_START = 0x1 +SERVICE_AUTO_START = 0x2 +SERVICE_DEMAND_START = 0x3 +SERVICE_DISABLED = 0x4 + +SERVICE_ERROR_IGNORE = 0x0 +SERVICE_ERROR_NORMAL = 0x1 +SERVICE_ERROR_SEVERE = 0x2 +SERVICE_ERROR_CRITICAL = 0x3 + +DEVPROP_TYPE_STRING = 0x00000012 +DEVPROP_TYPE_STRING_LIST = 0x00002012 +DEVPROP_TYPE_BINARY = 0x00001003 +DEVPROP_TYPE_BOOLEAN = 0x00000011 +DEVPROP_TYPE_UINT32 = 0x00000007 + +FLG_ADDREG_BINVALUETYPE = 0x00000001 +FLG_ADDREG_NOCLOBBER = 0x00000002 +FLG_ADDREG_DELVAL = 0x00000004 +FLG_ADDREG_APPEND = 0x00000008 +FLG_ADDREG_KEYONLY = 0x00000010 +FLG_ADDREG_OVERWRITEONLY = 0x00000020 +FLG_ADDREG_64BITKEY = 0x00001000 +FLG_ADDREG_KEYONLY_COMMON = 0x00002000 +FLG_ADDREG_32BITKEY = 0x00004000 +FLG_ADDREG_TYPE_SZ = 0x00000000 +FLG_ADDREG_TYPE_MULTI_SZ = 0x00010000 +FLG_ADDREG_TYPE_EXPAND_SZ = 0x00020000 +FLG_ADDREG_TYPE_DWORD = 0x00010001 +FLG_ADDREG_TYPE_NONE = 0x00020001 diff --git a/drivers/x64/HidHide/HidHide.sys b/drivers/x64/HidHide/HidHide.sys new file mode 100644 index 0000000..de44ade --- /dev/null +++ b/drivers/x64/HidHide/HidHide.sys @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:e568c70a3ef374d6650c4bb616c65b9253642a021b8a2255b06283c6052923cf +size 57960 diff --git a/drivers/x64/HidHide/LICENSE.rtf b/drivers/x64/HidHide/LICENSE.rtf new file mode 100644 index 0000000..d324273 --- /dev/null +++ b/drivers/x64/HidHide/LICENSE.rtf @@ -0,0 +1,36 @@ +{\rtf1\ansi\deff0\adeflang1025 +{\fonttbl{\f0\froman\fprq2\fcharset0 Times New Roman;}{\f1\froman\fprq2\fcharset2 Symbol;}{\f2\fswiss\fprq2\fcharset0 Arial;}{\f3\froman\fprq0\fcharset128 Times New Roman;}{\f4\fswiss\fprq2\fcharset128 Tahoma;}{\f5\fswiss\fprq1\fcharset0 Consolas;}{\f6\froman\fprq0\fcharset128 ;}{\f7\fnil\fprq2\fcharset0 Microsoft YaHei;}{\f8\fmodern\fprq1\fcharset0 NSimSun;}{\f9\fswiss\fprq0\fcharset128 Arial;}{\f10\fmodern\fprq1\fcharset0 Courier New;}} +{\colortbl;\red0\green0\blue0;\red0\green128\blue0;\red128\green128\blue128;} +{\stylesheet{\s0\snext0{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\nowidctlpar\cf0\hich\af6\langfe2052\dbch\af2\afs24\lang1081\loch\f0\fs24\lang1043 Default;} +{\s15\sbasedon0\snext16{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\sb240\sa120\keepn\cf0\hich\af7\langfe2052\dbch\af2\loch\f2\fs28\lang1043 Heading;} +{\s16\sbasedon0\snext16{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\sb0\sa120\cf0\hich\af0\langfe2052\dbch\af0\loch\f0\fs24\lang1043 Text body;} +{\s17\sbasedon16\snext17{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\sb0\sa120\cf0\hich\af0\langfe2052\dbch\af9\loch\f0\fs24\lang1043 List;} +{\s18\sbasedon0\snext18{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\sb120\sa120\cf0\i\hich\af0\langfe2052\dbch\af9\ai\loch\f0\fs24\lang1043 Caption;} +{\s19\sbasedon0\snext19{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\cf0\hich\af0\langfe2052\dbch\af9\loch\f0\fs24\lang1043 Index;} +{\s20\sbasedon0\snext20{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\sb0\sa0\cf0\hich\af8\langfe2052\dbch\af10\loch\f3\fs20\lang1043 Preformatted Text;} +}{\info{\creatim\yr0\mo0\dy0\hr0\min0}{\revtim\yr0\mo0\dy0\hr0\min0}{\printim\yr0\mo0\dy0\hr0\min0}{\comment OpenOffice}{\vern4180}}\deftab709\deftab709\deftab709\deftab709\deftab709\deftab709\deftab709\deftab709\deftab709\deftab709\deftab709\deftab709\deftab709\deftab709\deftab709\deftab709\deftab709\deftab709\deftab709\deftab709 + +{\*\pgdsctbl +{\pgdsc0\pgdscuse195\pgwsxn11906\pghsxn16838\marglsxn1134\margrsxn1134\margtsxn1134\margbsxn1134\pgdscnxt0 Default;}} +\formshade\paperh16838\paperw11906\margl1134\margr1134\margt1134\margb1134\sectd\sbknone\sectunlocked1\pgndec\pgwsxn11906\pghsxn16838\marglsxn1134\margrsxn1134\margtsxn1134\margbsxn1134\ftnbj\ftnstart1\ftnrstcont\ftnnar\aenddoc\aftnrstcont\aftnstart1\aftnnrlc +\pgndec\pard\plain \s0{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\nowidctlpar\cf0\hich\af6\langfe2052\dbch\af2\afs24\lang1081\loch\f0\fs24\lang1043{\afs16\rtlch \ltrch\loch\fs16\loch\f4 +SPDX-License-Identifier: MIT License} +\par \pard\plain \s0{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\nowidctlpar\cf0\hich\af6\langfe2052\dbch\af2\afs24\lang1081\loch\f0\fs24\lang1043{\rtlch \ltrch\loch +} +\par \pard\plain \s0{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\nowidctlpar\cf0\hich\af6\langfe2052\dbch\af2\afs24\lang1081\loch\f0\fs24\lang1043{\afs16\rtlch \ltrch\loch\fs16\loch\f4 +Copyright (c) 2020 Eric Korff de Gidts} +\par \pard\plain \s0{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\nowidctlpar\cf0\hich\af6\langfe2052\dbch\af2\afs24\lang1081\loch\f0\fs24\lang1043{\rtlch \ltrch\loch +} +\par \pard\plain \s0{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\nowidctlpar\cf0\hich\af6\langfe2052\dbch\af2\afs24\lang1081\loch\f0\fs24\lang1043{\afs16\rtlch \ltrch\loch\fs16\loch\f4 +Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions:} +\par \pard\plain \s0{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\nowidctlpar\cf0\hich\af6\langfe2052\dbch\af2\afs24\lang1081\loch\f0\fs24\lang1043{\rtlch \ltrch\loch +} +\par \pard\plain \s0{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\nowidctlpar\cf0\hich\af6\langfe2052\dbch\af2\afs24\lang1081\loch\f0\fs24\lang1043{\afs16\rtlch \ltrch\loch\fs16\loch\f4 +The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software.} +\par \pard\plain \s0{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\nowidctlpar\cf0\hich\af6\langfe2052\dbch\af2\afs24\lang1081\loch\f0\fs24\lang1043{\rtlch \ltrch\loch +} +\par \pard\plain \s0{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\nowidctlpar\cf0\hich\af6\langfe2052\dbch\af2\afs24\lang1081\loch\f0\fs24\lang1043{\afs16\rtlch \ltrch\loch\fs16\loch\f4 +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.} +\par \pard\plain \s0{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\nowidctlpar\cf0\hich\af6\langfe2052\dbch\af2\afs24\lang1081\loch\f0\fs24\lang1043{\rtlch \ltrch\loch +} +\par } \ No newline at end of file diff --git a/drivers/x64/HidHide/hidhide.cat b/drivers/x64/HidHide/hidhide.cat new file mode 100644 index 0000000000000000000000000000000000000000..c73952a40e4a757719733f545015fef238c9720a GIT binary patch literal 11897 zcmeHt2T)U6*LE7c_o5UL1f-n=2%rK=2kA|!fDj;bl2D{4B3LPk4M9T_u%L+21gVNr z><9=5B2rYODPjS>9Tdg;dheZo{<;5s=bL{rC+F<7%UQdu^{n+I5JfSJo@rx}QPM{? zI0J%8QS^o=in|bSIGO`uqi1qYGJ@lfC?qWO3>Y&?A@4*duX;#fDNOJhLj;RS_Px3;RLa-YL29hinN5t*(hFk z%*36tcq2xJ^*d^`Z=$@Ug=JOH<2 zpg7?$IEozu+XO?yAebV!U@&OYFTLcUjiQV&0~j6_0K?#Jo}sEVnyRhtz;KRDD|Ca_Z}dy}f2bc3wi`yI=|_PxqQomr-nYJ$TU+NF zGri#9)F`uOkK}M^mff(VZG$< zk8AO-94xz4Ge@BfA^lZaA>cxPvIc)QJ1PZnAEF@IAacf!@maxQllMYoil{I!l`z;Y zSRgpxMDW4Gg26c#hZ)24z8k_$WnegJFf0rM(}1Z1^Kk=Z6>z6X)s|%#m@>H2E?SK$ zXh~~>UVhR5CE61NE-Yw4yHvrY4%%aA$5rPStyCb4C?`w@=oAF3518XBO$3dWP4e3} z4!k20jHW^x1N+MuGSCK5ZkQby0S^lYBM`v6JYWIe=fi9Z1Ytl7`u*YtP&7Bd57Prx zp5Vxh_a2asiBt=m)_w&6y1K?+PXO`>njhQ{wQ;U zS%Zy0!~VPu^A~l>e^ICM7j>$CQilfnWAvxm*n{Kpdp&78Z3K4p&uTHtwP4+~epxvP zQWRwdRXb>V4MTrlJ7EGiiosw5T)sQu6;}*{Q7LTQ0BsT=3d)y?M8FXU9%Znd9(N9M zXKjoZNe0iLMDrHku?)@vu!Wq0W`UUKk#;D09)z6@ng`;d6&QJ#cX$we@j*VM;2<<7 zfFvMf;9;=Fc?AXsd7(w2wKNGc51$#{lMqY{_9ltz1`|Sp2_7Uo=%EfyAE-z2DE+M8 zfe-Qujv$KL`r-**;+7r+(r(ZvFeEq#7X*556URVk6-bnZhL8$`MQfn37PagC;KqLT4L`@OFwypYzCZbrz2G z={DG@3m2`_)7j6CEv-Sk6a0LAB1Lw1G2KPTds_JI;jZcp)8QrA$WQ3qx>iQKO>wF{ zNBFSWvjV0i;TmdLoo7DD`m5Rw%y7>w@tWz2%4rV_mqthw*Bdre>~C4f^hh3jQPo4G zi}PS9d2EW@{v}`^eww9OG5=7LEtlI@Skg))P-=Nm(YXaz`)wv8-2l0Uc6 zn1BoL2=WrQ2*G_jokVd{d?22L^Fs4OytL+YJmAb>&?;(jst}~Et^$eCMqQ5*g!mJ9 z?`+B{G-+BtBNbQm?1HQfyDh9K2O`lLh@k=@e+W9IsBEbEJP0*gVfiId}D1!bFnY^+vAdC!y zh*0QC8A2rC{#FAVfkgbj)PV$ISuk@RID83(0RH<|Z-S&CKxkns%eH|_!QG}E*Wy=Y zGq9^W#47$RzajhPNts-hb@iv-yJz-=ZkqMEXt-$H#vxG;A0@T2p5_?~aD2NR**-AK zd|3TBJClRS{+)iwSMtdPvGtRjU{a zMlNmpy6#d-?P-P6#;;I$G6o;EsbqP*=Q(~2D*<=pUo=P~p~DY2G@5H4Hn`P63I8l| zq&n(?X-CAZj}Zs8sUI$%Tl8P3w%zVDRpc1Ou$eV(;?Q{~uD0yvX1+UIrytq6MO3LL zH8biIUpdgP1hdzyM{JtZ|l@g?ses# z3Bk$5x1+Nq`G!i_Q$42Mm$wK;XiP*{pGX}}rnj8!*pn($)vS)fSTJc-OQqLm^*sp| z<2dk;VfVW(gAjM65nm=(_9@FZ z1*(#dY_Y#CDetLhf25$!eyjU&F;~0$l}dcfmZ3&_%OdY3Y_@c^zI*1SMz@83=1%`4 za+bB_zMjY(p)Vg!NRs?&xobU*azvfhUe}j6kQ?&&qEA&{kEYPVdx*kd2~p_OS78tv zp3OD#=!5WqWej5b!>NJD`~DG^j)5SWaU*$TfBFLJ;9vkXz!31>cux-!PJCM!$v2ol zbLYUyAR79hRnQPx6$20lqeep?jc-L2TJgURE-8rrgdPM9dJq75fHk(ciC(aJ|2Wn| z;gL{gt<=H^m#~iZ^;b^W%~T~Iv3|h`w^^@OZ;{qV(ewFVVt*cISfY+3`fJMYut~}* zX$Tq>8th~&Znkm1dkD(A9qYNyV36^sQsuD|!Lm!cyHieR+)>WkAqo+A-&I7#FFE$A zJ_sAXdzFxF-_TYeU(s?}RLMVk(0J3D_Zp9Di&zTrr<{4#n)@)Rl~9W|;GC-CFWoS1 z-B0f$ack_z8lhA~sF-sDNs|8JSd>h$@1A^}8YRg%@^rkkS89llZxi7QzU$Q#yS#+* z@S2u2T~cOBU&FtkV`fgCO%d}u<$j@V8pF}Lplp=w=;Cl`NK-aa1|r>2HJ_P0F6h+j zUUYMGA@ky=dd-)y<|g-9a0Bb|Lx&|K_RQG0Tc=o&H>pxzkAH0l8{FGSuPc9){c**v z%huAWMD1R#eB)0yUJhs<>-qHL=vYY4MQ27Hq2wvGI0rZ6KtW#dy3kOUX`38%fi zqGaEp=F`{s@;nZ7H&4Fm(EDTh%*h|myFf2x)9p)(EM1+ zNVoHBv1&*%)8<2VQ=LTBP~Jsui#-f!ubE^HgbLQ{YPMN>8j;`o6*bPy6i z&@VXMIcMLNI+p9Q%lDyXMw)Ziy-dMo$ez|i3`I+!w^NO&hDrM0^#gGFpE$h?(jkOk zuQ1PVND15pa2CKvxY4|W0)$n-C@&+i)5??q5Sv4$kjY9J0I}9zErF8f3JU+p*rY#r z$7M`Ce!XckdM4UGN6fLGB(LUGT0=ehX;#^A{FCd9$o}^`&b-v-%yYC9q}$9ZyRE#C z-I<)*UYn@X(0ub@VqmkFM+I>l1oEVRn$SV!h9rezW6K_pCfY+DSCa%XE^;fyO84M)FjPr{aQ=>ivrteWWhepE}fANN=|FsNlh3$B|RK zRont(y^A}VN>WNPqT4p7^haF_b*`3cYI(4C{dP6(hyoL(c;O1qDm}-EBT)Nr4AT*A zE-~v5qKNeTuC7<935H98r{f=H(TDcUh6_ccb#COS3E*zN#VYRofnCY+Xm{(E_*eE5 zOx=Yxr7aurk$qEcqua&HFMD2pQRk*;Emt!_3W*`U&kBhQD!8(XHL>7DGbw1}G0Yk2V#hVX)W@4IVXl^DRtD1P zepzDUKvRUKA&SrhARQs{x&Jy8`qNBv6*o#HzXdGTO76*oM6>)bdS*DtCRZ3z1e^uU zzKStL!1*AhpZ!p136wbNv$i}vxx-i2UQKv=@5;%U{VWNePCV6gUPw(7r}nH%O-=mZiAwk^oRk<2Y!n53LoA>9m6> z=4?!mq1iU^w{bo$NFj`<6!AUDU2Vl6A4CDp&5&hjk(}{tf=nIB+AyNrTO`}VpIp(G zFN0I4)q522LU_RM?D$}YgF?H|q^I+RwHdd94JTO3ZjCbD)RCPfAz$o$r@|b4=z596 zYZhf@H!s&a5BI2hmLwX-Ggjzl?fvpB>E)aIfx1}dNOSDh_PMLbjRlVp(CaaE5AoLL zhKSVujPs{@9~f%6NhA%K>`wcd6K2|OGrq2<#l7EgF52i>lKVmX%86 z+OQ^~7-f=II=9K}RGH10LkGLV7(H@3O2gn3ny_p&)52*3KBlc$FwBZy-%K=I_u+fYc7W(AP-RlWPWT75(!6B1O$PM_s0g) z2zCKFAc7;{$lnm`a7TKU@B9T5Cmcnkz>UD#>H&1y3XJ3X(20)BNceAG89B^8x2rt7<_^kOiA!w7nu(qNRsZ9yK8bgfYG${38I3Rc|-LM0&J z@2TYOd~zp5e)NxotpA7UDUbgyR(+H%Pe`F!P&kV^U@>`89b(h(q<#-)~fi!42GPo<#;&l+WgWplU75`W6 z6Nv5qI_AF?!%;mVm{1~r#hr4s_VC0Dsf{l0C8vVQ>juxwMZMF-i54-#1DPtRn3rok zV=XhHmY#1vo=6~##A#K;ec2KvO@eywf3*F4xg(Zz;IdPQjpxBudzCWwh)(;kQg@L% znu%N2DVsfN8q9TOxwrwgQF>q6*7NhacVmnn^jS$nP$r8gdI zsnaw2qy+kI8)T=}CvM5?`0SFXTBKdble6qS+xls z?kiN@(J7qkbprb&dHmjvRPmF+&FBS|T29deH5S&Bc`71zjqIOx;;H zzeUgDMMb@`cc|2>Z3opWo-;a%Ms~e?Yo)RAk#V+m>W9tbJ)=nh(kC*q$}<~?rMEQQ z$k$JQuyyY|BYgE(apg^S0r<0NT~os~%(0*4UZ3x>vsKl2WWL=R7d4Ofc9u7i(#?6i zc0flh)~D>O;w6>WVg+-lC4Eef#sxyIe7LJ!Gxtt$tJs@jooeaQ@wDD+v7)Aq;( zZ-#Z?SoeFiu{q`_Jg;7wdbW_@iQKyDk$_<3Ly=kpGdy1_h_C;7ec3`hwvMGm=MK&|Di9z8s z`5@e4G0^qW^J&$Y4R*e3x~E)(TeBtCyc}1ZLw7R7@L7HGsYDv5? zmO~-`8C^{7UcKC&RU2@C9DuwyB#T+OJhMoYnM0em4CZVX3(YiJpiWMV)>w&3CW3N-e|BP2FUU zyj4DMKRxBciB29dRmA4WLqoht+cm^)ye01?(ns?9DeR67{W$3UQCiR8fyMLN!E=K{ zZ7kx>hb13x-7vB!@zo>O%m2DR`NjI!flSu8>8cRJQxk7b=JQ9gRVk^Z2-WD3I7v=v zwWYyMZ?0dGFuq%({$~)UjZZD}Tzr2xHUDKi7X}S!fd3q*V=x$1 zfSbzDw;~94RGt21RR24G8-8)lbo3fw9n0?Awl2xtwd|dg#|!VW7#JQE2bhQ5X;s}Z z2agXh862vu(h_i2UUIQ$@&0(sCe&#t&ctc466>?qU_I;g!#wvRF!h{*WA3qj)_e3S z&ZQXmGw{yd3jdH~+1H?VC)C9Xtwv>54>~;2#nHXNCPu>p5!HNtfq=g(a^d0}_NM9v zuV*JWR|`igUrKO}JH)v*+j_BlY?oA@AIE*y_lqeu_n*GqYi~B$UvoJBWqRsW4SB1q z@en*)D^?*S1${?VruOBvWXYz%yQy*4ZBzR`)7hO2^xd3kP&<)d5+$p4vF*(s{ZWIU zR!nDo669hbKeX#=N7c~beZ$8u!cA`63@sLL_HlnceJ~4J%ra@Rovztmk z_x`5~1>&)BUwh8z50n#>dSl%Zs(a7JVc%j+=j4KlxUI(O=#Y62iRaAJNEvHYC>&Fq zGZlt{6NO`^VzfY6twYnY}WYIJ-RIbSDQ84NwF^%HdRfD>DNa(8yg zgd>KO1qoe+;!};ExtY5>gIVuly$(84&+S>~>IRY0GcvlXEI+aA_n5`fs|qF>_V%rL zxN!B!+FSl}F4k7A+`UrOmo4d{0&a1M5GD_QvToihaI}64U$3xQ3nQPPcH{;9@(-fP zJD;VV;V0m4mqb@oX!#8(URnXTegJSi5ciKn5|CPS%XJ{${XujgXuln8EVN$qYR5rb!L@Qs{=xPkbYCrP|hf|ac`eZHfH@NtII_ryRnK{#T0uO@(SI}{bTsSYNmJ51Af6bW!r+fwT;5y zJ%Y~zDXbp?*V_(9+Js5&sOmpEo1%Gp)^`9mmv4Xmh@}=g63Jtud&^oVAk~fKgttm{kW$+!wwq8BNu6R*rJ$QpN_jO7U>LxR@M| z0OBI^jknvpHSr5=4cm<4;*Q>Io8LTK!B=l?cDzT;x(Ll+K77*dve>h}u^!fuC z;r%SB*k{$IpH43^kE_f}s`|(cvQ>^8I`#C0#Oo<(9Zji>5faJS@8KD(i8v}+Iku*4 zJi1OjMDJnR^qmWv4s2rF72gx$X=8Ty9VM`Uj#jSr1}lGZ0+bI5fd+qa`avDiNFW528DgY$Lo(!u z=d3)#lc=jhGoUh(OokOD^BXXqck;cH-;mVQdwAAKHoZ!N%6(=s_~z^uvh)|PMNEBn-qJd70q@sjw`Qf@%3iK2}X z%(yM*5Jcg8$_kM`uNnZMgeJd+$fFQ>7$VoA#FKKAJ2!GZVkkFwjIqS&VpA+$op8A; zEP7y*(3jU1bvh9F> zsGDAWAOWq0q99-wAjN_nvgD1|lR;)>-D&xei7rsVg$*noE{}Ex3Y%}eH#5+*cD;m~ zx1X4q6K;XUAy**-xhIX3y^t-LsD7DF)u7?%o53d%(lVQ`9BPrhCoAOi+-E3hL?yAR zj&Z(D_CbkqCWfGn4k@xfA7zDlS5qvX@^oWG@AaWO`(oIc`oEA4mhgr}XCmCkvBOQK zq^Nlr9$lm)L?$S_d|$XjCfoc)e*N>VqQ30rQh}fh`s)VVp1PNYr9Z!Pv5956biZNu zBjMN-?6HHBtzH5b6`P*ja=?fzUY>uVbOTO$WuN8QqJQkOv&~+KlV9CzjRPqZZk_2H z+pSIsSQpo(9H^K@vW`4KO&OMIxta8K8RyhbrYd-RkMinuyJEbJuvd4|`nrQ21oQ zE_!!^)bRm_jH$Wdcy~Q$xRZ@Xm)hm?gtA3{*ot>az-!t}D&X~AZvQYfJ(oC>&Uzd_ Q_42*Now( Date: Mon, 30 Oct 2023 12:53:29 +0100 Subject: [PATCH 35/36] Update HidHide.aip --- Setup/HidHide.aip | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/Setup/HidHide.aip b/Setup/HidHide.aip index 349632c..81ebebd 100644 --- a/Setup/HidHide.aip +++ b/Setup/HidHide.aip @@ -15,10 +15,10 @@ - + - + From 8ab78c9851c91e1b707cdefca7206995e4267e29 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Benjamin=20H=C3=B6glinger-Stelzer?= Date: Mon, 30 Oct 2023 13:24:12 +0100 Subject: [PATCH 36/36] Fixed outdated URLs --- Setup/HidHide.aip | 8 ++++---- Watchdog/App.cpp | 2 ++ 2 files changed, 6 insertions(+), 4 deletions(-) diff --git a/Setup/HidHide.aip b/Setup/HidHide.aip index 81ebebd..2b96a52 100644 --- a/Setup/HidHide.aip +++ b/Setup/HidHide.aip @@ -7,12 +7,12 @@ - + - - + + @@ -274,7 +274,7 @@ - + diff --git a/Watchdog/App.cpp b/Watchdog/App.cpp index a628c72..9c7905a 100644 --- a/Watchdog/App.cpp +++ b/Watchdog/App.cpp @@ -112,6 +112,8 @@ class WatchdogTask : public Poco::Task serviceName, util::DeviceClassFilterPosition::Upper); RemoveDeviceClassFilter(&GUID_DEVCLASS_XBOXCOMPOSITE, serviceName, util::DeviceClassFilterPosition::Upper); + + continue; } // filter value or entry not present