Preparing for Windows 7: 32bit vs. 64bit
Fri, October 23rd 2009 at 11:00pm
Windows 7 is in the mail and I am starting to thinking about the first issues I am going to come across when installing it, 32 or 64bit. I have been using the 64bit RC version of Windows 7 for months now and there are two issues that keep bugging me, and both are related to Adobe Acrobat Pro 8.
The first problem I had was that the Acrobat 8 PDF Print driver would not install or work correctly on Vista or 7. Thankfully (after nearly a year) Adobe decided to fix the problem and fixed the driver.
The second problem is a little more insidious though. It has to do with Window redrawing in Acrobat 8. The problem I kept having was that if I resized the main Acrobat window the content window (containing the PDF) would not resize to match the main window. So if I made the main window smaller I would cut off the scroll bars and the content of the PDF, if I enlarged the main window then I would get a gray box in the new space.
This was extremely annoying, especially in Windows 7 with it’s new windows snapping and other management tools. However now I think I have finally found a work around that should allow me to move to 64bit without worries for now.
A great forum post about another product pointed me in the right direction. It seems the there is a very low level bug in the Windows 64bit GUI API that does not always send enough redraw messages to programs. This is exactly the problem I was having, and they seemed to be able to fix it. So I had hope.
It seems that if a Window frame is nested too many times then Windows 64 bits a loop counter (of 19! which seems ridiculously low) and will not send the redraw message to any more frames.
Of course Adobe pretty much abandons all software after one version, so I could not hope for a fix from them. But then I found a post on Adobe’s site from another user about the same problem. Apparently when he disabled Sitepoint from Logitech the problem went away. I checked for Sitepoint but did not have it installed, but then I remembered I had Display Fusion installed.
It seems that having programs that might interact with other Windows on the desktop might use up some of redraw counts you have for each window. So when Sitepoint or Display Fusion is running on my system Acrobat does not update the Window.
Very strange bug, and I am sad that this bug has persisted from XP 64bit, thru Vista, and is still in the Windows 7 RC. Maybe it will be fixed in the RTM version I will get on Monday, but at least now I have an idea of the problem and a work around.

More information on the problem:
https://blogs.msdn.com/alejacma/archive/2009/08/11/controls-won-t-get-resized-once-the-nesting-hierarchy-of-windows-exceeds-a-certain-depth-x64.aspx
Link to the bug on the Adobe Bug System:
https://bugs.adobe.com/jira/browse/FB-24547
Thanks for the links. Reading the MSDN post reminds me why I try to use recursion as little as possible.
While recursion sometimes makes for more elegant solutions, it can also be a lot harder to understand what the recursive functions are doing.