Портативный вариант для флэшек (на основе последней сборки v2.35 от 
Victor_VG): [more]Задумка в том, чтобы на x86 системе запускался ProcessHacker\x86\ProcessHacker.exe, а на x64, соответственно - ProcessHacker\x64\ProcessHacker.exe. 
 Установка - распаковать папку ProcessHacker куда-нибудь, запускать через лаунчер ProcessHacker\Process Hacker.exe. В зависимости от разрядности OS запустится нужная разрядность PH. Папку ProcessHacker и лаунчер можно переименовать по вкусу, папки x64 и x86 нельзя, т. е. структуру расположения папок/файлов внутри папки ProcessHacker не трогать, можно только удалить или переименовать папку info.  
http://www.upload.ee/files/4695237/processhacker-2.35-x86-x64-portable.7z.html    p.s. Исходник лаунчера (
FASM):
Код: ;--------------------------------------------- 
 ; ProcessHacker launcher 
 ; Copyright (C) addhaloka 
 ;---------------------------------------------   
 format PE GUI 4.00 
 entry start   
 include 'win32w.inc'   
 section '.text' code readable executable 
 align 4   
 nothing_error: 
   invoke MessageBox,0,szerr,caption,MB_ICONEXCLAMATION 
   jmp exit   
 getdir: 
   push edi 
   invoke GetModuleFileName,0,curdir,MAX_PATH*2 
   invoke lstrlen,curdir 
   imul eax,2 
   mov edi,eax 
   add edi,curdir 
   @@: 
   cmp word ptr ds:edi,005Ch 
   je  @F 
   dec edi 
   jmp @B 
   @@: 
   mov word ptr ds:edi+1h,0 
   pop edi 
   ret   
 proc existW 
   push ebp 
   mov ebp,esp 
   add esp,0FFFFFDB0h 
   lea eax,[ebp-250h] 
   push eax 
   push dword[ebp+8] 
   call [FindFirstFileW] 
   cmp eax,0FFFFFFFFh 
   jne @F 
   mov eax,0 
   jmp .endexist 
   @@: 
   push eax 
   call [FindClose] 
   mov eax,1 
   .endexist: 
   leave 
   retn 4 
 endp   
 start: 
   invoke GetNativeSystemInfo,sysinfo 
   cmp [sysinfo.wProcessorArchitecture],0 
   je  @f 
   call getdir 
   invoke lstrcat,curdir,exe64 
   stdcall existW,curdir 
   cmp eax,0 
   je  nothing_error 
   invoke lstrcpy,exepath,curdir 
   call getdir 
   invoke lstrcat,curdir,path64 
   invoke ShellExecute,0,0,exepath,0,curdir,10 
   jmp exit 
   @@: 
   call getdir 
   invoke lstrcat,curdir,exe32 
   stdcall existW,curdir 
   cmp eax,0 
   je  nothing_error 
   invoke lstrcpy,exepath,curdir 
   call getdir 
   invoke lstrcat,curdir,path32 
   invoke ShellExecute,0,0,exepath,0,curdir,10 
 exit: 
   invoke ExitProcess,0   
 section '.data' data readable writeable   
 caption   du 'Warning!',0  
 szerr     du 'ProcessHacker.exe is not found!',0Dh,0Ah 
           du 'Please check location of run.',0 
 exe32     du 'x86\ProcessHacker.exe',0 
 exe64     du 'x64\ProcessHacker.exe',0 
 path32    du 'x86\',0 
 path64    du 'x64\',0   
 section '.bss' readable writeable   
 curdir    du MAX_PATH dup(?) 
 exepath   du MAX_PATH dup(?) 
 sysinfo   SYSTEM_INFO <>   
 section '.idata' import data readable writeable   
   library kernel32,'KERNEL32.DLL',\ 
     shell32,'SHELL32.DLL',\ 
     user32,'USER32.DLL'   
   include 'api/kernel32.inc' 
   include 'api/user32.inc' 
   include 'api/shell32.inc'   
 section '.rsrc' resource data readable   
   directory RT_ICON,icons,\ 
     RT_GROUP_ICON,group_icons,\ 
     RT_MANIFEST,_manifest,\ 
     RT_VERSION,versions   
   resource icons,\ 
     1,0x0409,icon_data1,\ 
     2,0x0409,icon_data2,\ 
     3,0x0409,icon_data3   
   resource group_icons,\ 
     100,0x0409,main_icon 
   resource _manifest,\ 
     1,0x0409,manifest 
   resource versions,\ 
     1,0x0409,version   
   icon main_icon,\ 
     icon_data1,'res/48x48.ico',\ 
     icon_data2,'res/32x32.ico',\ 
     icon_data3,'res/16x16.ico'   
   resdata manifest 
     file 'res/manifest.xml' 
   endres   
   versioninfo version,VOS__WINDOWS32,VFT_APP,VFT2_UNKNOWN,0x0409,0x04E4,\ 
     'CompanyName','addhaloka',\ 
     'FileDescription','Process Hacker portable launcher',\ 
     'FileVersion','1.0.0.0'