IE using mshtmled.dll. But what is mshtmled.dll?

16,185

Like this thread suggest, you might use a tool like fiddlertool to analyze your HTML traffic and check what triggers this hung state.

Since mshtmled.dll handles HTML editing within a webpage, something in this HTML traffic must trigger a mshtmled call.


As Alessandro mentions in the comment, there is a JavaScript active, and since mshtmled.dll is related with "DOM element manipulations", may be that JavaScript does trigger those mshtmled calls.
Disclaimer: "DOM manipulation" is not exactly its primary function, since mshtmled.dll is described as being part of the initial Front Page distribution. May be it is a IE module which could be deactivated, as a Component ActiveX named "HtmlDlgSafeHelper" Class.

Manage add-ons

Select "Manage Add-ons - Add-ons that run without requiring permission", and you should see mshtmled.dll in the "File" column.

May be that object is solicited by some JavaScript, like:

var a = new ActiveXObject('HtmlDlgSafeHelper.HtmlDlgSafeHelper');
a.fonts = ...;
Share:
16,185
avernet
Author by

avernet

Co-founder of Orbeon, developing Orbeon Forms: web forms, open source, for the enterprise. Passionate about technology, and how it improves the world.

Updated on June 04, 2022

Comments

  • avernet
    avernet almost 2 years

    I have a web application which from time to time get IE in a hung state, where IE uses 100% of the CPU. The only way out is to terminate the IE process.

    When I look at the stack trace of the thread which is hung in iexplore.exe, I see that the stack traverses mshtmled.dll. I am used to see mshtml.dll in those stack traces, but not mshtmled.dll.

    The methods being called make you think there is a editor on the page (like CSelectionManager::SetEditContext or CSelectionManager::EnsureEditContextClick), but I have no HTML editor being used on the page (such as the FCK editor of the YUI RTE).

    So I am really wondering: how is mshtmled.dll used by IE?

    Trying to disable mshtmled.dll

    @VonC suggested in the comments that I disable the mshtmled.dll through Manage Add-ons dialog, which you get from the Programs tab of the Internet Options. After disabling that dll and restarting IE, I can see that it is reported as disabled:

    alt text http://img.skitch.com/20090226-c9e9ygek8i6a7di3jija2x317k.png

    After this, I am however still able to reproduce the problem, and I do see (gasp!) mshtmled.dll being used in the stack trace of the hung thread:

    alt text http://img.skitch.com/20090226-m3167dxb8iaax3wgy22eatruyp.png

    Microsoft Hotfix

    Microsoft has a hotfix to mshtmled.dll for a problem very similar to the one I am seeing. But this hotfix is most likely installed on the machines on which we can reproduce the problem since we have SP3. It looks to me like the problem I'm having here is of a similar nature to the one fixed. I am just mentioning this here in case someone finds this useful.