KC Lemson

By KC Lemson [MS]

Blogs

A theory as to why IE and explorer windows load sl...oo..w...ly...

  • Comments 16
  • Likes

I've been suffering silently with this problem for a long time. It happens on all of my machines. Granted, they're all configured almost essentially the same. IE is my default browser. When I type a URL into the addressbar (which I have on my taskbar), my system sometimes takes an awfully long time to open the browser window and load the page.

Sometimes this also happens to my explorer windows - they freeze up. I can always kill the process and restart it, but it's just odd. It hasn't plagued me enough to do much about it, but a few weeks ago, I tried to narrow down the problem by uninstalling all IE addins such as the google toolbar, but the problem still repro'd. So I gave up.

Today, a coworker suggested something after watching my system churn when opening a URL... “That looks like a GDI leak.” So I fired up the task manager, added the “GDI Objects” volumn (View | Set Columns), and noticed that wisptis.exe had thousand of objects, which probably ain't right. I killed it, and my system seems snappier... but it's hard to tell since it isn't very consistent to begin with.

I googled wisptis to find out what it is, and got to this page, which does mention the possibility of a GDI leak. So I'm going to try this for a while and see if it helps.

By the way, it strikes me as incredibly stupid to have this tablet-specific code running at all times when it's not necessarily on a tablet machine; I hope they had a good reason for that. (It's not really clear to me who “they” is in this case - Adobe? Microsoft?)

[Update 7/9: Thanks to Larry for pointing it out, there's a fix to get wisptis.exe off your system, if you don't need it. Read the comments on this post.]

Comments
  • Interesting on the GDI thing - I just checked, and SharpReader, my RSS thinggie of choice, is using around 2500 GDI objects! Ouch! Nearest after that is Explorer and Outlook2003, on around _200_.

    Wow. Another reason not to keep SharpReader open all the time....

  • Have you tried attaching a debugger to the explorer process while it's hanging? This is the first thing I would do.

    If the hang is too short to be able to attach a debugger you can attach in advance (or use the Image File Execution Options reg key to start all IE/explorer processes under debugger). Then when the process hangs, hit F12 key. This will generate a DebugBreak() call in the target process (the key is configurable under HKLM\SOFTWARE\Microsoft\Windows NT\CurrentVersion\AeDebug, UserDebuggerHotKey. F12 is the default).

    I've actually had similar problems in the past and in my experience they are usually caused by explorer trying to open a file on a network share that's been disconnected, or connecting to a slow ftp site that's stuck in the address history list, or something like that.

  • I never noticed your problem, but with a normal XP install (plus Office 2003), Wisptis was not present for me -- until I installed Acrobat Reader -- and then it appeared when I ran Acrobat Reader, and stayed loaded until rebooted (unless I killed it).

    It looks like the reg mod on the site you linked handles it for good, but I didn't see it at the time I was trying to accomplish that.

    I was also trying to find a way to speedup Acrobat Reader's load time, short of buying a Pentium 7, and it turned out that this little Adobe Speedup utility does that wonderfully -- and also has an option to banish Wisptis.

    http://fileforum.betanews.com/detail/1069854583/1

    On another subject, if you have any thoughts on the last comment here, I'm all ears:

    http://blogs.msdn.com/kclemson/archive/2003/10/20/53841.aspx

  • If any more anecdotal evidence is needed, it happens on my 2000 Server also. Sometimes, I've seen two wisptis processes and have to kill them to stop leaks.

  • Yeah, it was using over 6,000 GDI objects on mine. I found a short script that completely unregisters wisptis: http://www.mobileread.com/forums/showthread.php?t=1260&page=2

    -Robert
    => Exchange 2003 Hosting - $8.99/user/mo.
    => Exchange 2003 Dedicated Servers start at $499/mo.
    => Sell Exchange Hosting under your name & brand - $8.00/user/mo.

    (800) 9-MS-EXCH
    www.123Together.com

  • I'm monitoring GDI object usage for quit some time now after I started to encounter major slowdowns of Windows XP SP1 (with all public QFEs) and Windows XP Tablet PC Edition (SP1 with all public QFEs) sometimes last year.

    On the Tablet wisptis.exe takes 1,189 GDI objects right now.

    On the primary WS iexplore.exe 3,344 (with 28 IE windows opened currently) and explorer.exe 1,014. Firefox.exe with 3 windows and aprx 70 tabbed windows takes 752.

    I also see similar issues with many .NET based applications like RSSBandit or SauceReader. They take an enormous amount of memory (RSSBandit is now running for less than 5 minutes and is at 129,476K and 749 GDI objects).

    While IE isn't my default browser I use it on microsoft.com to browse the MSKB and open each KB article I want to review later in a new window (I am spoiled by tabbed browsing in Firefox <g>). Opening more than aprx 50 IE windows actually is impossible because Windows XP just refuses to open any more windows. Last time when I mentioned that somewhere I was called a "corner case" :-(

    It is interesting to note that no matter how many physical RAM you have (my WS has 2GB running with a P4/3Ghz with HT) Windows XP just refuses to work if you have a certain amount of windows open (obviously taking a certain amount of GDI objects). While I currently have 1,5GB phys RAM in use I am close again to stall Windows XP by opening a view additional IE (or any other application) windows. What bugs me most on this particular case is how Windows XP behaves. It neither tells you whats wrong nor does it throw any error message. If I try to open an additional IE window IE will open the last one with missing menu, toolbar or address bar. This is usually the indication for me to close some windows before I am loosing data (it happened twice now that Windows XP rebooted appruptly without even giving me a chance to save the opened IE windows hyperlinks). Also, when I tried to open Outlook 2003 after I ran into this GDI resource issue Outlook just didn't do anything. I haven't tried with other applications yet. This is my major pain point in Windows XP because it breaks my work flow (i.e. if I cannot open any more IE windows I have to go through those already open, read/save them and close some to get Windows back into a halfways stable way).

    I usually keep this computer running all the time because it also runs a bunch of virtual machines I don't want to restart all the time (and have access to when I travel). However, I am now back at the habit to reboot the box every once a week (SystemUptime.exe just tells me it is time again <g>) because even refreshing the desktop icons gets slow like moleasses.

    Thanks for listening to my rant ;-)

  • Sig, it almost sounds like you're back in the Win98 days when we had to worry about "resources," which this is unfortunately a descendent of, I think.

    While I don't use IE anymore, I do use MyIE2, which runs on the IE engine. I typically have 20-40 tabs open in it (I know, I know), and the GDI figure, which I never monitored before yesterday, seems to be in the 2000-3000 range or so, which may be good or bad, I'm not sure which. I don't see stalls though, so I guess I'm OK.

  • I've always found that when my machine is running slow, Adobe is running somewhere in the background.

  • KC, just found the "real" fix, which is pointed out in the boredguru post. Basically you go to the regional settings in the control panel,on the Languages tab, hit "Details".

    In the installed services will be something about advanced UI options, remove that. It'll pull ink off the machine.

    To add it back, it's available on a checkbox under the add button.

  • Fantastic!! Thanks so much.

  • It turns out that even if you do that it still sometimes comes back :( I don't know why but...

    My current thing to try is to:

    wisptis /unregserver

    which removes the WISPTIS registry fields. So it's no longer registered as a COM server which should be enough to make it go away.

  • Kevin Dente's registry fix solved my IE resource issues:

    http://weblogs.asp.net/kdente/archive/2004/06/04/148145.aspx