Red de conocimiento informático - Aprendizaje de código fuente - Cómo destruir un hilo en un proceso específico en un lenguaje sencillo

Cómo destruir un hilo en un proceso específico en un lenguaje sencillo

La siguiente es una llamada de subrutina, utilizada como:

CloseRemoteHandle (1044, PID de proceso)

El PID del proceso QQ.exe se obtiene por sí mismo cada vez que un proceso tiene un. Se abre el identificador de 1044. Los identificadores son todos diferentes y es posible que el identificador del proceso con el identificador 1044 no se pueda obtener por sí solo

=============== = ======== =========================================== =

. Versión 2

. Subrutina CloseRemoteHandle, lógica

. Los parámetros manejan el identificador que desea usar, entero

. Parámetros PID, entero

. Dirección de variable local, entero, estático

. Temperatura de la variable local, número entero

. Variable local ret, número entero

. Variable local hProcess, entero

hProcess = API_OpenProcess (1088, 0, PID)

. if (ZwDuplicateObject(hProcess, identificador a cerrar, 0, 0, 0, 0, 1) ≥ 0)

API_CloseKernelObject(hProcess)

Devolución (verdadero)

. De lo contrario

API_ShutdownKernelObject (hProcess)

devuelve (falso)

. Si final

========================================== = ======================

La siguiente es la definición de DLL:

.Versión 2

Comando .DLL API_Cerrar objeto del kernel, entero, "ntdll.dll", "ZwClose"

.Manejador de objeto de parámetro, entero

.