Windows IT Pro is the authoritative and independent resource for windows nt, windows 2000, windows 2003, windows xp. Features a collection of resources and magazines for windows IT professionals.
  
  
  Advanced Search 


March 2007

The Case of the Delayed Windows Vista File Open Dialogs


RSS
Subscribe to Windows IT Pro | See More Windows OSs Articles Here | Reprints | Or get the Monthly Online Pass—only $5.95 a month!
Main Article    Ask the Experts

Last fall, I spoke at the Microsoft Tech Ed: IT Forum conference in Barcelona, Spain. The conference was a huge success, and Windows Vista, which I had taken on the road for the first time, performed great. However, as I was running through some demos, I noticed that the File Open dialog box, which is common to all Windows applications, would often take as long as 15 seconds to appear. The behavior seemed similar to the behavior I wrote about in "The Case of the Process Startup Delays" (http://blogs.technet.com/markrussinovich/archive/2006/08/31/453100.aspx). In that case, Windows Defender's remote procedure call (RPC) communications tried to contact a domain controller (DC), which resulted in hangs when the system was disconnected from its domain.

To investigate the problem, I launched Notepad from within Windbg (part of the free Debugging Tools for Windows available at http://www.microsoft.com/whdc/devtools/debugging/default.mspx), typed Ctrl+O to open the File Open dialog, and when I got the hang, broke in and looked at the stack of Notepad's main thread.

A look at the function names on the stack immediately told me what was happening: When you access the File Open dialog box the first time within an application, it navigates to your Documents folder. On Vista, my folder is C:\Users\Markruss\Documents, but the shell wants to make the path in the dialog box's new bread crumb bar (which shows the trail of accessed folders—i.e., breadcrumbs) pretty by displaying it as "Mark Russinovich\Documents." So it calls GetUserNameEx to look up my account's display name as it's stored in my User object in Active Directory (AD).

I set a breakpoint on the call's return and hit it after the delay completed. GetUserNameEx returned the ERROR_NO_SUCH_DOMAIN error code, and stepping through SHGetUserDisplayName revealed that it falls back to calling GetUserName. Instead of looking up the user's display name, that function just obtains the Security Identifier (SID) of the user from the process token (the kernel data structure that defines the owner of a process) and calls LookupAccountName to translate the SID to its account name, which in my case is simply "markruss." Thus, the Open File dialog box's breadcrumb bar referenced "markruss." However, when I reconnected to the corporate network, the breadcrumb bar referenced "Mark Russinovich."

You can read the detailed description of the steps I took to solve the Open File dialog box hangs at https://blogs.technet.com/markrussinovich/archive/2006/11.aspx, but to summarize, I discovered that Vista's File Open dialog box tries to look up a user's display name for the breadcrumb bar when showing the Documents folder, and in the process, tries to locate a DC by sending a LAN Manager datagram via the Bowser.sys device driver. There's no workaround and anyone that has a domain-joined system that's not connected to the domain for more than 30 minutes will experience the same delays—at least until Vista Service Pack 1 (SP1).
—Mark Russinovich

This is a summary of a popular posting to Mark Russinovich's technical blog (https://blogs.technet.com/markrussinovich/about.aspx), which covers topics such as Windows troubleshooting, technologies, and security. You can read the entire post at https://blogs.technet.com/markrussinovich/ archive/2006/11.aspx

End of Article



Reader Comments

You must log on before posting a comment.

If you don't have a username & password, please register now.




Top Viewed ArticlesView all articles
Friday at PASS Europe 2006

Kevin talks about the closing day of the event and shares a funny Microsoft film. ...

Windows Mobile: What Went Wrong?

Paul discusses the evolution of Windows Mobile and why he thinks the platform is probably doomed. ...

Microsoft Makes Windows 7 Name Official

It's official: Microsoft's next Windows version, currently being developed under the codename Windows 7 will use that moniker as its official final name when it hits the market in early 2010. The news, delivered as is so often the case these days via a ...


Windows OSs Whitepapers Why SaaS is the Right Solution for Log Management

Are You Satisfied?

A Preliminary Look at Deployment Plans for Microsoft Windows Vista

Related Events Check out our list of Free Email Newsletters!

Windows OSs eBooks Understanding and Leveraging Code Signing Technologies

A Guide to Windows Certification and Public Keys

SQL Server Administration for Oracle DBAs

Related Windows OSs Resources Become a VIP member of the Windows IT Pro community!
Get it all with the VIP CD and VIP access. A $500+ value for only $279!

Subscribe to Windows IT Pro!
Solve your toughest technical problems with our experts and access 10,000 + articles online. 30% off

Monthly Online Pass - Only $5.95!
Get instant access to 10,000+ articles from Windows IT Pro Magazine!

TechNet Virtual Labs
Evaluate and test Microsoft's newest products.

Job Openings in IT


ADS BY GOOGLE SPONSORED LINKS FEATURED LINKS

Microsoft Exchange & Windows Connections event returns to Las Vegas Nov 10 - 13
Connections returns to Las Vegas for this exciting event where each attendee will receive SQL Server 2008 standard with 1 CAL. Co-located with Microsoft ASP.NET, SQL Server, and SharePoint Connections with over 250 in-depth sessions.

Free Online Event! Virtualization:Get the Facts!
Register now and attend this free, live in-depth online conference on November 13 and 20, 2008, produced by Windows IT Pro. All registrants are eligible to receive a complimentary one-year digital subscription to Windows IT Pro (a $49.95 value)!

Check Out Hyper-V Video on ITTV
Watch Karen Forster's interview on Hyper-V's performance on ITTV.net.

Ease Your Scripting Pains with the Flexibility of PowerShell!
Join MVP Paul Robichaux on December 11, 2008 at 11:00 AM EDT as he equips you with PowerShell basics in 3 introductory lessons, each followed by a live Q&A session—all on your own computer!

PASS Community Summit 2008 in Seattle on Nov 18-21
The don’t-miss event for Microsoft SQL Server Professionals. Register now and you’ll enjoy top-notch Microsoft and Community speakers and more.



Order Your SQL Fundamentals CD Today!
Learn how to use SQL Server, understand Office integration techniques and dive into the essentials of SQL Express and Visual Basic with this free SQL Fundamentals CD.

Email Recovery and eDiscovery for Microsoft Exchange!
Discover, Recover, and Export mailboxes, folders and individual items direct from offline EDB’s or online production Exchange Servers. Free 30 Day Demo.
Windows IT Pro Home Register FAQ for Windows WinInfo News
Europe Edition About Us Contact Us/Customer Service Media Kit Affiliates / Licensing  
SQL Server Magazine Office & SharePoint Pro Windows Dev Pro IT Job Hound ITTV
IT Library Technology Resource Directory Connected Home Windows Excavator Windows SuperSite 
 
 Windows IT Pro is a Division of Penton Media Inc.
 Copyright © 2008 Penton Media, Inc., All rights reserved. Terms and Use | Privacy Statement | Reprints and Licensing