11#include < windows.h>
22#include < tlhelp32.h>
3- #include < Psapi.h>
3+ #include < psapi.h>
4+ #include < experimental/filesystem>
5+ namespace fs = std::experimental::filesystem;
46
57#include " NativeCore.hpp"
68
@@ -49,7 +51,7 @@ void __stdcall EnumerateProcesses(EnumerateProcessCallback callbackProcess)
4951 return ;
5052 }
5153
52- auto handle = CreateToolhelp32Snapshot (TH32CS_SNAPPROCESS, 0 );
54+ const auto handle = CreateToolhelp32Snapshot (TH32CS_SNAPPROCESS, 0 );
5355 if (handle != INVALID_HANDLE_VALUE)
5456 {
5557 PROCESSENTRY32W pe32 = {};
@@ -58,10 +60,10 @@ void __stdcall EnumerateProcesses(EnumerateProcessCallback callbackProcess)
5860 {
5961 do
6062 {
61- auto process = OpenRemoteProcess (reinterpret_cast <RC_Pointer>(pe32.th32ProcessID ), ProcessAccess::Read);
63+ const auto process = OpenRemoteProcess (reinterpret_cast <RC_Pointer>(pe32.th32ProcessID ), ProcessAccess::Read);
6264 if (IsProcessValid (process))
6365 {
64- auto platform = GetProcessPlatform (process);
66+ const auto platform = GetProcessPlatform (process);
6567#ifdef RECLASSNET64
6668 if (platform == Platform::X64)
6769#else
@@ -70,7 +72,9 @@ void __stdcall EnumerateProcesses(EnumerateProcessCallback callbackProcess)
7072 {
7173 EnumerateProcessData data;
7274 data.Id = pe32.th32ProcessID ;
73- GetModuleFileNameExW (process, nullptr , reinterpret_cast <LPWSTR>(data.ModulePath ), PATH_MAXIMUM_LENGTH);
75+ GetModuleFileNameExW (process, nullptr , reinterpret_cast <LPWSTR>(data.Path ), PATH_MAXIMUM_LENGTH);
76+ const auto name = fs::path (data.Path ).filename ().u16string ();
77+ str16cpy (data.Name , name.c_str (), std::min<int >(name.length (), PATH_MAXIMUM_LENGTH));
7478
7579 callbackProcess (&data);
7680 }
0 commit comments