History:
Slow Down Proc
Slow down another process
Suspension of any external processes using functions OpenThread(), SuspendThread() a ResumeThread().
Code
#include <Windows.h>
#include <TlHelp32.h>
HWND GetProcessMainWindows( DWORD dwProcessID );
DWORD GetProcessID( TCHAR *lpszProcessName );
DWORD WINAPI Vlakno(void*);
int _tmain(int argc, _TCHAR* argv[])
{
HWND windowHandle = FindWindow(NULL, _T("Test"));
printf("HWND: %d\n", GetWindowThreadProcessId(windowHandle, NULL) );
DWORD hThread = GetWindowThreadProcessId(windowHandle, NULL);
printf( "%d\n", hThread );
//HANDLE handle = CreateThread( NULL, NULL, &Vlakno, (void*)11 , 0, 0 );
HANDLE thread = OpenThread(THREAD_ALL_ACCESS, FALSE, hThread);
printf( "%d\n", thread );
//printf( "Resume: %d\n", ResumeThread( thread ) );
while(true)
{
printf( "Suspend: %d\n", SuspendThread( thread ) );
Sleep(1000); // some number of milliseconds - larger values will slow down more
//printf( "Resume: %d\n", ResumeThread( thread ) )
while ( ResumeThread( thread ) > 0);
Sleep(100);
}
while ( ResumeThread( thread ) > 0);
return 0;
}
DWORD WINAPI Vlakno(void*)
{
for(u_int i=0; true; i++ )
printf("[%d] Hello\n", i);
return true;
}
HWND GetProcessMainWindows( DWORD dwProcessID )
{
HWND hwnd = NULL;
do{
hwnd = FindWindowEx (NULL, hwnd, NULL, NULL);
DWORD dwPID = 0;
GetWindowThreadProcessId (hwnd, &dwPID);
if (dwPID == dwProcessID)
return hwnd;
}while( hwnd != NULL );
return NULL;
}
DWORD GetProcessID( TCHAR *lpszProcessName )
{
DWORD processID = NULL;
HANDLE hSnapShot = CreateToolhelp32Snapshot ( TH32CS_SNAPPROCESS, 0);
PROCESSENTRY32* processInfo = new PROCESSENTRY32;
processInfo->dwSize = sizeof ( PROCESSENTRY32);
while ( Process32Next ( hSnapShot,processInfo ) != FALSE)
{
if( strcmp( processInfo->szExeFile, lpszProcessName ) == 0 )
{
processID = processInfo->th32ProcessID;
break;
}
}
CloseHandle( hSnapShot);
delete processInfo;
return processID;
}Code.Tode.cz by Henry - 2014
Facebook
YouTube
Joudove