This article was previously published under Q280582
If you pass the handle of a top-level non-desktop window and a GA_ROOT flag to the GetAncestor function, it automatically assumes that the window is a child of the desktop and dereferences the NULL spwndParent field. The resulting stop code in Service Pack 1 (SP1) is:
This problem is caused by a file handle of a window of the type that is described above when you call GetAncestor(hWnd,GA_ROOT). The problem occurs every time you do this. A crash dump in Win32k.sys shows that the crash always occurs in the context of Wfshell.exe. User-mode program components contributed to the crash. A program is passing the handle of the "root" window to GetAncestor. GetAncestor is not capable of handling this case with a GA_ROOT flag set and ends up dereferencing the parent pointer of the "root" window.
The "root" window is hidden from access by User-mode programs, but if a program can obtain the handle somehow and then call GetAncestor on the handle, the problem occurs
To resolve this problem, obtain the latest service pack for Windows 2000. For additional information, click the following article number to view the article in theMicrosoft Knowledge Base:
260910 How to Obtain the Latest Windows 2000 Service Pack
The English version of this fix should have the following file attributes or later:
Date Time Version Size File name --------------------------------------------------- 5/31/2001 03:30p 5.0.2195.3649 222,480 Gdi32.dll 5/31/2001 03:44p 5.0.2195.3660 1,641,360 Win32k.sys(uniprocessor) 5/31/2001 03:32p 5.0.2195.3649 243,472 Winsrv.dll(uniprocessor) 5/31/2001 03:30p 5.0.2195.3649 379,664 User32.dll 5/31/2001 03:06p 5.0.2195.3660 1,641,360 Win32k.sys 5/31/2001 03:32p 5.0.2195.3649 243,472 Winsrv.dll
Microsoft has confirmed that this is a problem in the Microsoft products that are listed at the beginning of this article. This problem was first corrected in Windows 2000 Service Pack 3.
For additional information about how to obtain a hotfix for Windows 2000 Datacenter Server, click the article number below to view the article in the Microsoft Knowledge Base:
265173 The Datacenter Program and Windows 2000 Datacenter Server Product
For additional information about how to install multiple hotfixes with only one reboot, click the article number below to view the article in the Microsoft Knowledge Base:
296861 Use QChain.exe to Install Multiple Hotfixes with One Reboot
For additional information about how to install Windows 2000 and Windows 2000 hotfixes at the same time, click the article number below to view the article in the Microsoft Knowledge Base:
249149 Installing Microsoft Windows 2000 and Windows 2000 Hotfixes