29 TRACE(
"Ghost thread started\n");
69 DPRINT1(
"Unable to get class name\n");
114 DPRINT(
"Not a ghost window\n");
185 DPRINT(
"Already ghosting\n");
BOOL UserCreateSystemThread(DWORD Type)
BOOL FASTCALL MsqIsHung(PTHREADINFO pti, DWORD TimeOut)
PVOID NTAPI PsGetCurrentThreadWin32Thread(VOID)
static UNICODE_STRING GhostProp
DBG_DEFAULT_CHANNEL(UserInput)
HWND FASTCALL IntHungWindowFromGhostWindow(PWND pGhostWnd)
NTSTATUS(* NTAPI)(IN PFILE_FULL_EA_INFORMATION EaBuffer, IN ULONG EaLength, OUT PULONG ErrorOffset)
INT UserGetClassName(IN PCLS Class, IN OUT PUNICODE_STRING ClassName, IN RTL_ATOM Atom, IN BOOL Ansi)
VOID FASTCALL UserEnterExclusive(VOID)
#define EXCEPTION_EXECUTE_HANDLER
#define ValidateHwndNoErr(hwnd)
BOOL FASTCALL IntIsGhostWindow(PWND Window)
HANDLE FASTCALL UserGetProp(_In_ PWND Window, _In_ ATOM Atom, _In_ BOOLEAN SystemProp)
NTSYSAPI VOID NTAPI RtlFreeUnicodeString(PUNICODE_STRING UnicodeString)
PTHREADINFO gptiGhostThread
VOID NTAPI ProbeForRead(IN CONST VOID *Address, IN SIZE_T Length, IN ULONG Alignment)
HWND FASTCALL IntGhostWindowFromHungWindow(PWND pHungWnd)
BOOL FASTCALL IntMakeHungWindowGhosted(HWND hwndHung)
VOID FASTCALL UserLeave(VOID)
HWND FASTCALL UserGhostWindowFromHungWindow(HWND hwndHung)
BOOL FASTCALL LookupFnIdToiCls(int FnId, int *iCls)
static UNICODE_STRING GhostClass
VOID NTAPI UserGhostThreadEntry(VOID)
NTSYSAPI VOID NTAPI RtlInitUnicodeString(PUNICODE_STRING DestinationString, PCWSTR SourceString)
#define _SEH2_EXCEPT(...)
HWND FASTCALL UserHungWindowFromGhostWindow(HWND hwndGhost)
NTSYSAPI BOOLEAN NTAPI RtlEqualUnicodeString(PUNICODE_STRING String1, PUNICODE_STRING String2, BOOLEAN CaseInSensitive)
#define RTL_CONSTANT_STRING(s)