The MSHTML primary interop assembly component is incorporated into the Microsoft Visual Studio IDE for internal use. However, using the component in end-user applications is not supported.
Consider the following scenario. In Internet Explorer, a managed application tries to interact with an HTML document by using the MSHTML primary interop assembly (Microsoft.mshtml.dll) component. In this scenario, the HTML events may not work correctly. Note This problem occurs in all the versions of Internet Explorer.
These are some known issues that are related to the MSHTML primary interop assembly:
When you use the Internet Explorer MSHTML.dll file in a Visual Studio .NET application, the MSHTML primary interop assembly may increase the redistributable file size. For more information about how to resolve this problem, click the following article number to view the article in the Microsoft Knowledge Base:
305622 Primary interop assembly for MSHTML increases size of redistributable file
You may be unable to register the MSHTML primary interop assembly by using the Global Assembly Cache tool (Gacutil.exe). Additionally, you may be unable to register the MSHTML primary interop assembly by using the Assembly Registration tool (Regasm.exe).
For more information about how to install the MSHTML primary interop assembly, visit the following Microsoft Developer Network (MSDN) blog:
The managed applications may not work correctly because the MSHTML primary interop assembly is registered incorrectly on the computer.
Internet Explorer 6 may stop responding when you use the MSHTML primary interop assembly. Additionally, you may notice that Internet Explorer does not respond to some keyboard message events and some mouse message events.
This behavior is by design.