Función GetCurrentThread (processthreadsapi.h)
Recupera un pseudo handle para el subproceso que realiza la llamada.
Sintaxis
HANDLE GetCurrentThread();
Valor devuelto
El valor devuelto es un pseudo handle para el subproceso actual.
Comentarios
Un pseudo handle es una constante especial que se interpreta como el identificador de subproceso actual. El subproceso que realiza la llamada puede usar este identificador para especificarse cada vez que se requiera un identificador de subproceso. Los procesos secundarios no heredan los pseudo handles.
Este identificador tiene el derecho de acceso THREAD_ALL_ACCESS al objeto de subproceso. Para obtener más información, consulte Derechos de acceso y seguridad de subprocesos.
Windows Server 2003 y Windows XP: Este identificador tiene el acceso máximo permitido por el descriptor de seguridad del subproceso al token principal del proceso.
Un subproceso no puede usar la función para crear un identificador que otros subprocesos puedan usar para hacer referencia al primer subproceso. El identificador siempre se interpreta como referencia al subproceso que lo usa. Un subproceso puede crear un identificador "real" para sí mismo que otros subprocesos, o heredados por otros procesos, especificando el pseudo handle como identificador de origen en una llamada a la función DuplicateHandle .
No es necesario cerrar el pseudo handle cuando ya no es necesario. Llamar a la función CloseHandle con este identificador no tiene ningún efecto. Si DuplicateHandle duplica el pseudo handle, se debe cerrar el identificador duplicado.
No cree un subproceso al suplantar un contexto de seguridad. La llamada se realizará correctamente, pero el subproceso recién creado tendrá derechos de acceso reducidos a sí mismo al llamar a GetCurrentThread. Los derechos de acceso concedidos a este subproceso se derivarán de los derechos de acceso que el usuario suplantado tiene para el proceso. Es posible que algunos derechos de acceso, como THREAD_SET_THREAD_TOKEN y THREAD_GET_CONTEXT no estén presentes, lo que provoca errores inesperados.
Ejemplos
Para obtener un ejemplo, consulte Comprobación del acceso de cliente.
Requisitos
Requisito | Value |
---|---|
Cliente mínimo compatible | Windows XP [aplicaciones de escritorio | aplicaciones para UWP] |
Servidor mínimo compatible | Windows Server 2003 [aplicaciones de escritorio | aplicaciones para UWP] |
Plataforma de destino | Windows |
Encabezado | processthreadsapi.h (incluya Windows.h en Windows Server 2003, Windows Vista, Windows 7, Windows Server 2008 Windows Server 2008 R2) |
Library | Kernel32.lib |
Archivo DLL | Kernel32.dll |