当前位置:首页 科普知识 CreateRemoteThread

CreateRemoteThread

发布时间:2023-09-07 06:06:47

CreateRemoteThread是一个Windows API函数,它能够创建一个在其它进程地址空间中运行的线程(也称:创建远程线程).。

CreateRemoteThread详细介绍

CreateRemoteThread是一个Windows API函数,它能够创建一个在其它进程地址空间中运行的线程(也称:创建远程线程).。

CreateRemoteThread函数原型

HANDLE WINAPI CreateRemoteThread(

__in HANDLE hProcess,

__in LPSECURITY_ATTRIBUTES lpThreadAttributes,

__in SIZE_T dwStackSize,

__in LPTHREAD_START_ROUTINE lpStartAddress,

__in LPVOID lpParameter,

__in DWORD dwCreationFlags,

__out LPDWORD lpThreadId

);

CreateRemoteThread参数说明

hProcess

线程所属进程的进程句柄.

该句柄必须具有 PROCESS_CREATE_THREAD, PROCESS_QUERY_INFORMATION, PROCESS_VM_OPERATION, PROCESS_VM_WRITE,和PROCESS_VM_READ 访问权限.

lpThreadAttributes

一个指向 SECURITY_ATTRIBUTES 结构的指针, 该结构指定了线程的安全属性.

dwStackSize

线程栈初始大小,以字节为单位,如果该值设为0,那么使用系统默认大小.

lpStartAddress

在远程进程的地址空间中,该线程的线程函数的起始地址.

lpParameter

传给线程函数的参数.

dwCreationFlags

线程的创建标志.

含义

0

线程创建后立即运行

CREATE_SUSPENDED

0x00000004

线程创建后先将线程挂起,直到 ResumeThread 被调用.

STACK_SIZE_PARAM_IS_A_RESERVATION

0x00010000

dwStackSize 参数指定为线程栈预订大小,如果STACK_SIZE_PARAM_IS_A_RESERVATION没有被指定,dwStackSize 参数指定为线程栈分配大小.

lpThreadId

指向所创建线程ID的指针,如果创建失败,该参数为NULL.

CreateRemoteThread函数返回值

如果调用成功,返回新线程句柄.

如果失败,返回NULL.

CreateRemoteThread要求

最低支持客户端系统

Windows 2000 Professional

最低支持服务端系统

Windows 2000 Server

头文件

inbase.h (include Windows.h)

Kernel32.lib

DLL

Kernel32.dll

温馨提示:
本文【CreateRemoteThread】由作者 爱百科 转载提供。 该文观点仅代表作者本人, 自学教育网 信息发布平台,仅提供信息存储空间服务, 若存在侵权问题,请及时联系管理员或作者进行删除。
(c)2008-2025 自学教育网 All Rights Reserved 汕头市灵创科技有限公司
粤ICP备2024240640号-6