-19

Now, I know that this may seem like a bad question in that I can just upgrade to Internet Explorer 8, but I am sticking with IE6 in that IE8 removes valuable features, like the ability to save favorites offline and the fact that a file path turns into a Windows Explorer window and typing a Web address into Windows Explorer changes it into an IE window.

I know that Internet Explorer 6 does a really bad job at rendering some pages. I know of the Google Chrome Frame extension that brings Chrome-style rendering into IE, but that will soon be discontinued. So, I tried another thing: I know that C:\Windows\System32\mshtml.dll contains the Trident rendering engine that is used by IE, so I tried something: I first backed up the original file by renaming it on Windows XP to mshtml-old.dll, then I tried to copy in the DLL from a computer running Windows 7 with Internet Explorer 10. I noticed that, after copying, the system had replaced the new DLL with the old one, but left the one I backed up intact.

Is there any way I can get the system to not replace the DLL like that so that I can transfer in IE11's mshtml.dll into Windows XP and make IE6 render like IE11?

I'm looking for an answer that describes how to tweak my system to make IE6 render like IE11 (or IE10), not one that tells me to upgrade IE or install another browser. I don't care how tedious the method is, just as long as it works.

In case you think that I am on outdated hardware, the Windows XP machine is actually Windows XP Mode running on Windows 7. The real reason why I don't want to switch that to another browser is because I want to experiment.

6
  • 4
    Internet Explorer 6 does a really bad job at everything, not just rendering. You should adapt your workflow and use a new browser instead of sticking with the past. Changing dll's is unlikely to help you, the old browser can't use the new one.
    – Baarn
    Nov 6, 2013 at 20:42
  • 2
    What you want is not possible the dll in question is t even compatible with the windows kernel on windows XP
    – Ramhound
    Nov 6, 2013 at 21:08
  • @Ramhound So, if I had Internet Explorer 8 on both Windows XP and Windows 7, and I take mshtml.dll from Windows 7 and put it into Windows XP, will it work?
    – gparyani
    Nov 6, 2013 at 21:14
  • 11
    Your bio lists you as a programmer, which in theory means you have some idea how computers work. This question seems to contradict that idea. Can you just copy a lot of source files from one project into another and everything "just work"? No, you need to spend a lot of time doing integration and implementation. DLLs are the same, they need a lot of code that knows how to use it and other compatible DLLs that work alongside it, you cannot expect to copy one file and it "just work". Grow up, join us in the future, and install a proper browser.
    – Mokubai
    Nov 6, 2013 at 22:22
  • @Mokubai I said that I am a Java programmer... By the way, that profile comes from Stack Overflow.
    – gparyani
    Nov 6, 2013 at 22:27

2 Answers 2

9

This isn't going to work. I can think of one browser that will allow you to keep your features (specifically integrating file browser with web browser) and that's Konqueror, although you'll have to either switch to Linux to run it (or VM), or you'll have to install KDE libraries on Windows which requires a lot of system overhead.

http://windows.kde.org/

Because you like to experiment, I'm going to suggest you experiment with something worth experimenting with, and look up the term "Linux live CD". Time spent on that is much less of a waste than trying to bridge the gap between 5 major releases of a browser.

11

Programs do not work like that. IE10 has a different internal structure than IE6, you are not going to be able to improve it just by swapping out a .dll. That would be like trying to put a truck engine into a small car. Technically possible with years of hard effort, but much easier to do the other way around.

You would have better luck installing a modern browser like Chrome. You can still export your favorites, have it open web pages if it is set to the default browser, and even render pages in IE if you feel the need to do so for some reason.

8
  • 1
    The Technical Way is not some magic wand where I give you a few commands to fix your problem. To continue the car analogy above, converting an engine to fit in a smaller space isn't something you explain how to do in a few sentences. If you type an address into your Windows Explorer address bar, it will open in your default browser (so Chrome, if you install it). Regarding these unnamed "other features", if you list them I think you will find that modern browsers either have them, or that they have been left out for a reason. Change is scary, I get that, but you have to change with the times.
    – David
    Nov 6, 2013 at 20:51
  • 2
    Good luck with that then.
    – David
    Nov 6, 2013 at 21:05
  • 3
    @Ramhound Yeah, re-reading my text, I see I put too much emphasis on the "technically possible" and not enough on the "ludicrously difficult, pointless, multi-year programming project".
    – David
    Nov 6, 2013 at 21:30
  • 6
    You'd pretty much have to seriously hack (disassemble, reverse engineer, heavily modify, then re-assemble) numerous IE 10 / 11 DLLs and other files; retrofit them to work on the same API as IE 6; rewrite their Windows API usage in terms of what's available on XP; and.... yeah, I basically just told you how to do it, but I could tell you how to build a Saturn V rocket, too; that doesn't mean you would be able to actually carry out the instructions. The main problem being that each "step" in the process would take about 15 years for one person to do, assuming they had infinite patience. Nov 6, 2013 at 22:40
  • 4
    Also, to clarify David's answer: some programs do work like that; for minor updates to programs that specifically claim to remain ABI-compatible, you can just drop in a new DLL and it'll work. For instance, a program using gstreamer 0.10.x can be seamlessly "upgraded" to use a newer version of gstreamer by replacing the DLLs. That's because gstreamer promises API compatibility within that major version series (0.10.x). Internet Explorer however, breaks almost all of its APIs with each individual release, so the task would be much more than assembling a list of files. Nov 6, 2013 at 22:43

You must log in to answer this question.

Not the answer you're looking for? Browse other questions tagged .