How To Install Microsoft.Mshtml Assembly

Posted on
How To Install Microsoft.Mshtml Assembly 7,8/10 804 reviews

I have a C# solution that makes use of Smith Html Editor (I'm developing on the main project which uses this, so I don't know much about this library), which makes a reference to MSHTML. This worked fine until my upgrade to Windows 10 and it can't find MSHTML anymore. I can directly reference the DLL on the GAC folder, and it stops complaining and thus builds, but it's getting some runtime errors related to the editor not instantiating.

After a little research, it turns out that MSHTML is phased out of Windows 10 as it now uses EdgeHTML. Does anyone have any idea how I can go around this?

The solution still works for Windows 7.

TyressTyress

'could not load file or assembly 'Microsoft.mshtml. How to install Microsoft.mshtml.dll in GAC. I had a bho application developed in Vs2005 c#.

  • Nov 17, 2005 - NET 2 installed and all the latest patches. It seems I am using a newer. File location: C: WINDOWS assembly GAC Microsoft.mshtml 7.0.3300.
  • I am trying to install some new software for work. Missing microsoft.mshtml. The application requires that assembly Microsoft.mshtml version 7.0.3300.

6 Answers

I just created a blog post on this issue. The problem is that the Microsoft.mshtml.dll assembly in the Global Assembly Cache becomes unregistered from ActiveX during the upgrade process. To fix this issue, it is necessary to run 'regasm' on the assembly:

How To Install Microsoft.mshtml Assembly)

  1. Open an instance of 'Developer Command Prompt for VS2013' (or whatever version of Visual Studio you happen to be using). Run it as Administrator by right-clicking the icon and selecting, 'Run as Administrator.'
  2. Navigate to 'C:WindowsassemblyGACMicrosoft.mshtml7.0.3300.0__b03f5f7f11d50a3a.' It is possible your path will vary. To verify, go to 'C:WindowsassemblyGACMicrosoft.mshtml' and type 'dir.'
  3. Once you are in the correct path, type regasm Microsoft.mshtml.dll
Mshtml dll error ie 11
user1233749user1233749

I had the exact same problem. Adding the c:windowssystem32mshtml.tlb worked. Note it's NOT the dll, but the tlb. Thank you so much for asking this question and thank you Hans, for the answer :)

Flemming Bonde KentvedFlemming Bonde Kentved

I had the same issue and I think what's going on, at least in my case, is that the project was originally a VS2012 project on Windows 7 and there was a primary interop assembly installed that was referenced. When I removed and re-added the reference to MSHTML and did a diff on the files, the only difference was that the <WrapperTool> was changed from primary to tlbimp and <EmbedInteropTypes> was changed from false to true.

At some point, Visual Studio added the ability to embed the COM wrappers directly into the assembly instead of referencing PIAs, so my guess is that a new VS2015 installation on Windows 10 no longer installs PIAs because they're not necessary. So that's why removing and re-adding the reference fixes the problem and the project should continue to build fine on older OS as well.

JoshJosh

MSHTML is still an important component in Windows 10, even with Edge as the default browser. You can find it in 'C:WindowsSystem32'. To quote from the official FAQ:

Download james bond 007: blood stone crack only. Nov 3, 2010 - James Bond 007: Blood Stone v1.0 ENG No-DVD [Reloaded].

Mshtml interop

MSHTML:

In Windows 10 the WebBrowser control will use Internet Explorer’s legacy rendering engine, mshtml.dll. At this time EdgeHTML is not available through the WebBrowser control.

EdgeHtml

In Universal Windows Apps built for Windows 10, the WebView control use Microsoft EdgeHTML. WebView controls in apps built for Windows 8 & 8.1 will continue to load the MSHTML to preserve compatibility.

Mshtml Dll Error Ie 11

Malte LantinMalte Lantin

Using VS 2015 I had this issue after the last Windows 10 update. I removed the reference 'Microsoft HTML Object Library' and added it again to the project. This resolved the issue in my case.

Mshtml
WolfWolf

For some reason in my case the Microsoft.mshtml file was located in a different directory. On Visual Studio, double click the assembly reference, and you'll find the path to it. Now open the 'Developer Command Prompt for VS2017', type the following cd C:Program Files (x86)Microsoft Visual Studio2017EnterpriseCommon7IDEPublicAssemblies. Then regasm Microsoft.mshtml.dll.

Helder PintoHelder Pinto

Not the answer you're looking for? Browse other questions tagged c#wpfwindows-10mshtmlmicrosoft-edge or ask your own question.