Функция CreateRemoteThread

Функция CreateRemoteThread создает поток, который запускается в виртуальном адресном пространстве другого процесса.

 

HANDLE CreateRemoteThread(

HANDLE hProcess, // дескриптор процесса

LPSECURITY_ATTRIBUTES lpThreadAttributes, // дескриптор защиты (SD)

SIZE_T dwStackSize, // размер начального стека

LPTHREAD_START_ROUTINE lpStartAddress, // функция потока

LPVOID lpParameter, // аргументы потока

DWORD dwCreationFlags, // параметры создания

LPDWORD lpThreadId // идентификатор потока

);

Установка приоритета:

Поток создается с приоритетом потока THREAD_PRIORITY_NORMAL. Используйте функции GetThreadPriority и SetThreadPriority, чтобы получать и установить приоритетное значение потока.

 

BOOL SetThreadPriority(

HANDLE hThread, // дескриптор потока

int nPriority // уровень приоритета потока

);

 

Функция SetThreadPriority дает возможность установки базового уровня приоритета потока относительно класса приоритета его процесса. Например, устанавливая THREAD_PRIORITY_HIGHEST при вызове SetThreadPriority для потока процесса IDLE_PRIORITY_CLASS базовый уровень приоритета потока устанавливается в значение 6.