diff --git a/trunk/NProcessHacker/NProcessHacker.sln b/trunk/NProcessHacker/NProcessHacker.sln index 5515eb014..e43c98b54 100644 --- a/trunk/NProcessHacker/NProcessHacker.sln +++ b/trunk/NProcessHacker/NProcessHacker.sln @@ -16,21 +16,35 @@ EndProject Global GlobalSection(SolutionConfigurationPlatforms) = preSolution Debug|Win32 = Debug|Win32 + Debug|Win64 = Debug|Win64 Release|Win32 = Release|Win32 + Release|Win64 = Release|Win64 EndGlobalSection GlobalSection(ProjectConfigurationPlatforms) = postSolution - {52426135-4597-4988-B5BC-BE8E93489A53}.Debug|Win32.ActiveCfg = Debug|Win32 - {52426135-4597-4988-B5BC-BE8E93489A53}.Debug|Win32.Build.0 = Debug|Win32 + {52426135-4597-4988-B5BC-BE8E93489A53}.Debug|Win32.ActiveCfg = Debug|x64 + {52426135-4597-4988-B5BC-BE8E93489A53}.Debug|Win32.Build.0 = Debug|x64 + {52426135-4597-4988-B5BC-BE8E93489A53}.Debug|Win64.ActiveCfg = Debug|x64 + {52426135-4597-4988-B5BC-BE8E93489A53}.Debug|Win64.Build.0 = Debug|x64 {52426135-4597-4988-B5BC-BE8E93489A53}.Release|Win32.ActiveCfg = Release|Win32 {52426135-4597-4988-B5BC-BE8E93489A53}.Release|Win32.Build.0 = Release|Win32 + {52426135-4597-4988-B5BC-BE8E93489A53}.Release|Win64.ActiveCfg = Release|x64 + {52426135-4597-4988-B5BC-BE8E93489A53}.Release|Win64.Build.0 = Release|x64 {A910A5C9-9BCA-47BA-AFAD-92698E512DED}.Debug|Win32.ActiveCfg = Debug|Win32 {A910A5C9-9BCA-47BA-AFAD-92698E512DED}.Debug|Win32.Build.0 = Debug|Win32 + {A910A5C9-9BCA-47BA-AFAD-92698E512DED}.Debug|Win64.ActiveCfg = Debug|x64 + {A910A5C9-9BCA-47BA-AFAD-92698E512DED}.Debug|Win64.Build.0 = Debug|x64 {A910A5C9-9BCA-47BA-AFAD-92698E512DED}.Release|Win32.ActiveCfg = Release|Win32 {A910A5C9-9BCA-47BA-AFAD-92698E512DED}.Release|Win32.Build.0 = Release|Win32 - {DC2D13B6-4BD1-4AC8-933F-DDB0DE850162}.Debug|Win32.ActiveCfg = Debug|Win32 - {DC2D13B6-4BD1-4AC8-933F-DDB0DE850162}.Debug|Win32.Build.0 = Debug|Win32 + {A910A5C9-9BCA-47BA-AFAD-92698E512DED}.Release|Win64.ActiveCfg = Release|x64 + {A910A5C9-9BCA-47BA-AFAD-92698E512DED}.Release|Win64.Build.0 = Release|x64 + {DC2D13B6-4BD1-4AC8-933F-DDB0DE850162}.Debug|Win32.ActiveCfg = Debug|x64 + {DC2D13B6-4BD1-4AC8-933F-DDB0DE850162}.Debug|Win32.Build.0 = Debug|x64 + {DC2D13B6-4BD1-4AC8-933F-DDB0DE850162}.Debug|Win64.ActiveCfg = Debug|x64 + {DC2D13B6-4BD1-4AC8-933F-DDB0DE850162}.Debug|Win64.Build.0 = Debug|x64 {DC2D13B6-4BD1-4AC8-933F-DDB0DE850162}.Release|Win32.ActiveCfg = Release|Win32 {DC2D13B6-4BD1-4AC8-933F-DDB0DE850162}.Release|Win32.Build.0 = Release|Win32 + {DC2D13B6-4BD1-4AC8-933F-DDB0DE850162}.Release|Win64.ActiveCfg = Release|x64 + {DC2D13B6-4BD1-4AC8-933F-DDB0DE850162}.Release|Win64.Build.0 = Release|x64 EndGlobalSection GlobalSection(SolutionProperties) = preSolution HideSolutionNode = FALSE diff --git a/trunk/NProcessHacker/NProcessHacker.vcproj b/trunk/NProcessHacker/NProcessHacker.vcproj index d34d57e52..6834dca3a 100644 --- a/trunk/NProcessHacker/NProcessHacker.vcproj +++ b/trunk/NProcessHacker/NProcessHacker.vcproj @@ -11,6 +11,9 @@ + @@ -160,6 +163,153 @@ Name="VCPostBuildEventTool" /> + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/trunk/NProcessHacker/NProcessHackerHook/NProcessHackerHook.vcproj b/trunk/NProcessHacker/NProcessHackerHook/NProcessHackerHook.vcproj index 22f9db3bc..254e1902d 100644 --- a/trunk/NProcessHacker/NProcessHackerHook/NProcessHackerHook.vcproj +++ b/trunk/NProcessHacker/NProcessHackerHook/NProcessHackerHook.vcproj @@ -11,6 +11,9 @@ + @@ -156,6 +159,149 @@ Name="VCPostBuildEventTool" /> + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/trunk/NProcessHacker/Release/NProcessHacker.dll b/trunk/NProcessHacker/Release/NProcessHacker.dll index 7aaf8927e..ba8335606 100644 Binary files a/trunk/NProcessHacker/Release/NProcessHacker.dll and b/trunk/NProcessHacker/Release/NProcessHacker.dll differ diff --git a/trunk/NProcessHacker/Test/Test.vcproj b/trunk/NProcessHacker/Test/Test.vcproj index d2d170827..fd7dceb32 100644 --- a/trunk/NProcessHacker/Test/Test.vcproj +++ b/trunk/NProcessHacker/Test/Test.vcproj @@ -12,6 +12,9 @@ + @@ -161,6 +164,153 @@ Name="VCPostBuildEventTool" /> + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/trunk/NProcessHacker/hook.h b/trunk/NProcessHacker/hook.h index 8cd57b92c..e06c74bfc 100644 --- a/trunk/NProcessHacker/hook.h +++ b/trunk/NProcessHacker/hook.h @@ -27,6 +27,8 @@ /* Almost exactly the same as the hooking code in KProcessHacker. */ +#ifdef _X86_ + #define PH_DEFINE_HOOK_CALL(Name, Arguments, Hook) \ __declspec(naked) Name(Arguments) \ { \ @@ -49,6 +51,23 @@ __asm jmp edx \ } \ +#else + +#define PH_DEFINE_HOOK_CALL(Name, Arguments, Hook) \ + Name(Arguments) \ + { \ + RaiseException(STATUS_NOT_SUPPORTED, 0, 0, NULL); \ + return 0; \ + } \ + +#define PH_DEFINE_NT_HOOK_CALL(Name, Arguments, Hook) \ + Name(Arguments) \ + { \ + RaiseException(STATUS_NOT_SUPPORTED, 0, 0, NULL); \ + return 0; \ + } \ + +#endif typedef struct _PH_HOOK { PVOID Function; diff --git a/trunk/NProcessHacker/process.c b/trunk/NProcessHacker/process.c index faa84c7ff..52c0b35d9 100644 --- a/trunk/NProcessHacker/process.c +++ b/trunk/NProcessHacker/process.c @@ -49,7 +49,7 @@ WsCounters: ULONG sharedCount = 0; ULONG shareableCount = 0; PPSAPI_WORKING_SET_INFORMATION wsInfo; - ULONG wsInfoLength; + SIZE_T wsInfoLength; ULONG i; if (!GetProcessMemoryInfo(ProcessHandle, &procMem, sizeof(procMem))) diff --git a/trunk/NProcessHacker/x64/Release/NProcessHacker.dll b/trunk/NProcessHacker/x64/Release/NProcessHacker.dll new file mode 100644 index 000000000..625f98d44 Binary files /dev/null and b/trunk/NProcessHacker/x64/Release/NProcessHacker.dll differ diff --git a/trunk/ProcessHacker/Build/Installer/Process_Hacker_installer.iss b/trunk/ProcessHacker/Build/Installer/Process_Hacker_installer.iss index 638effd65..b573b953e 100644 --- a/trunk/ProcessHacker/Build/Installer/Process_Hacker_installer.iss +++ b/trunk/ProcessHacker/Build/Installer/Process_Hacker_installer.iss @@ -20,7 +20,7 @@ #include "Custom_Messages.iss" -; From now on you'll probably won't have to change anything, so be carefull +; From now on you'll probably won't have to change anything, so be careful [Setup] AppID=Process_Hacker AppCopyright=Copyright © 2008-2009, Process Hacker Team. Licensed under the GNU GPL, v3. @@ -69,7 +69,7 @@ DisableDirPage=Auto DisableProgramGroupPage=Auto LanguageDetectionMethod=uilanguage AppMutex=Global\ProcessHackerMutex -ArchitecturesInstallIn64BitMode=x64 ia64 +ArchitecturesInstallIn64BitMode=x64 [Languages] diff --git a/trunk/ProcessHacker/Build/release.cmd b/trunk/ProcessHacker/Build/release.cmd index 32520b57f..845d5ad1a 100644 --- a/trunk/ProcessHacker/Build/release.cmd +++ b/trunk/ProcessHacker/Build/release.cmd @@ -5,14 +5,16 @@ SETLOCAL SET outd=%~p1 PUSHD %outd% -:: Copy CHANGELOG.txt, LICENSE.txt, README.txt and kprocesshacker.sys to the -:: "Release" folder +:: Copy various files to the "Release" folder FOR %%a IN ( "CHANGELOG.txt" "LICENSE.txt" "README.txt" "KProcessHacker\i386\kprocesshacker.sys" - "NProcessHacker\Release\NProcessHacker.dll" + "NProcessHacker\Release\NProcessHacker.dll" ) DO COPY "..\..\..\%%a" >NUL +:: Copy the 64-bit NPH to the "Release" folder +COPY "..\..\..\NProcessHacker\x64\Release\NProcessHacker.dll" "NProcessHacker64.dll" >NUL + :: Clear older files present in "Release" folder DEL/f/a "ProcessHacker.exe.config" "processhacker-*-setup.exe"^ "Assistant.dll" "processhacker-*.zip" >NUL 2>&1