[DllImport("kernel32.dll", SetLastError=true)]
static extern IntPtr NtQueueApcThreadEx(IntPtr ThreadHandle, UInt32 UserApcReserveHandle, IntPtr ApcRoutine, IntPtr ApcArgument1, IntPtr ApcArgument2, IntPtr ApcArgument3)
None.
ThreadHandle : handle to any Thread Object, including caller's thread.
UserApcReserveHandle : enum between QUEUE_USER_APC_FLAGS_NONE, QUEUE_USER_APC_FLAGS_SPECIAL_USER_APC and QUEUE_USER_APC_FLAGS_MAX_VALUE.
Currently, only QUEUE_USER_APC_FLAGS_SPECIAL_USER_APC is supported.
ApcRoutine : entry point to user APC routine.
ApcArgument1, ApcArgument2, and ApcArgument3 are optional and could be Zero.