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");
#define DBG_DEFAULT_CHANNEL(ch)
BOOL UserCreateSystemThread(DWORD Type)
#define ValidateHwndNoErr(hwnd)
VOID NTAPI ProbeForRead(IN CONST VOID *Address, IN SIZE_T Length, IN ULONG Alignment)
#define EXCEPTION_EXECUTE_HANDLER
BOOL FASTCALL MsqIsHung(PTHREADINFO pti, DWORD TimeOut)
NTSYSAPI VOID NTAPI RtlInitUnicodeString(PUNICODE_STRING DestinationString, PCWSTR SourceString)
NTSYSAPI BOOLEAN NTAPI RtlEqualUnicodeString(PUNICODE_STRING String1, PUNICODE_STRING String2, BOOLEAN CaseInSensitive)
NTSYSAPI VOID NTAPI RtlFreeUnicodeString(PUNICODE_STRING UnicodeString)
PVOID NTAPI PsGetCurrentThreadWin32Thread(VOID)
HWND FASTCALL UserHungWindowFromGhostWindow(HWND hwndGhost)
HWND FASTCALL IntGhostWindowFromHungWindow(PWND pHungWnd)
static UNICODE_STRING GhostClass
BOOL FASTCALL IntMakeHungWindowGhosted(HWND hwndHung)
PTHREADINFO gptiGhostThread
HWND FASTCALL IntHungWindowFromGhostWindow(PWND pGhostWnd)
BOOL FASTCALL IntIsGhostWindow(PWND Window)
HWND FASTCALL UserGhostWindowFromHungWindow(HWND hwndHung)
VOID NTAPI UserGhostThreadEntry(VOID)
static UNICODE_STRING GhostProp
VOID FASTCALL UserLeave(VOID)
VOID FASTCALL UserEnterExclusive(VOID)
#define _SEH2_EXCEPT(...)
#define RTL_CONSTANT_STRING(s)
INT UserGetClassName(IN PCLS Class, IN OUT PUNICODE_STRING ClassName, IN RTL_ATOM Atom, IN BOOL Ansi)
BOOL FASTCALL LookupFnIdToiCls(int FnId, int *iCls)
HANDLE FASTCALL UserGetProp(_In_ PWND Window, _In_ ATOM Atom, _In_ BOOLEAN SystemProp)