Fragen & Antworten zu dem Thema Internet Explorer 64-bit

Da das Thema “64-bit” auch vor dem Internet Explorer nicht halt macht, hat sich Eric Lawrence (Program Manager des Internet Explorer Teams und Autor der Fiddler Software) vor einiger Zeit mit einem Q&A dem Thema angenommen, hier nun die deutsche Übersetzung:

F: Kann ich eine 32-bit Version des Internet Explorers auf einem 64-bit Windows installieren?
A: Auf 64-bit Windows Betriebssystemen sind sowohl die bekannten 32-bit als auch die neuen 64-bit Komponenten installiert. Dazu zählt auch der Internet Explorer. Aus Kompatibilitätsgründen ist der 32-bit Internet Explorer auch als Standardbrowser konfiguriert.

F: Wie kann ich feststellen, welchen Internet Explorer ich aktuell verwende?
A: Dies lässt sich auf mehreren Wegen feststellen:

  1. Über die Hilfe->Über [Alt+H->Über Internet Explorer] Funktion:
    x86/32-bit:
    x86
    x64/64-bit:
    image
  2. Über den Taskmanager, der Prozess, der mit *32 gekennzeichnet ist, ist der x86/32-bit Internet Explorer:
    image

F: Wie kann mittels server- (z.B. .NET) bzw. clientside (z.B. Javascript) Scripting/Coding herausgefunden werden, welche Internet Explorer Version eingesetzt wird?
A: Die einfachste Methode ist das Auswerten des User-Agent Strings:

  • 32bit IE on 64bit Windows: User-Agent: Mozilla/4.0 (compatible; MSIE 7.0; Windows NT 5.2; WOW64; .NET CLR 2.0.50727)
  • 64bit IE on 64bit Windows: User-Agent: Mozilla/4.0 (compatible; MSIE 7.0; Windows NT 5.2; Win64; x64; .NET CLR 2.0.50727)

vgl. hierzu “Detect IE Bitness (32-bit/64-bit)

F: Warum ist die 64-bit Version des Internet Explorers nicht der Standardbrowser auf 64-bit Systemen?
A: Das Problem mit 32-bit vs. 64-bit ist, dass es nicht möglich ist eine 32-bit DLL im Kontext eines 64-bit Prozesses zu laden und umgekehrt. Da die meisten ActiveX Controls und BHOs aber in 32-bit erstellt werden/wurden, würde einem Nutzer der 64-bit Version ggf. Funktionalität genommen. Damit also die User Experience unverändert bleibt, hat das Internet Explorer Team die Entscheidung gefällt, dass - vorerst - als Standardbrowser der 32-bit Internet Explorer genommen wird.

Neben diesen offensichtlichen Gründen gibt es noch einen weiteren Grund: Der JustInTime (JIT) Script Compiler wurde (noch/derzeit) nicht für die 64-bit Version des Internet Explorer’s portiert (auch in IE9 nicht!). Daher ist grade bei aufwändigen Javascript Applikationen die 32-bit Version vorzuziehen.

F: Gibt es denn trotzdem sinnvolle Gründe für den Einsatz von Internet Explorer 64bit?
A: Es gibt derzeit eigentlich keine wirklichen Gründe. Hier ein paar Gründe die wir öfter hören, die sich aber insb. durch die geringere Anzahl an ActiveX Controls erklären lassen und diesen Gründen sind wir bei der Änderung des default Verhaltens nach der Installation von ActiveX Controls im Internet Explorer 9 entgegen getreten:

  • DEP/NX ist bei jedem x64 Prozess automatisch aktiviert – seit Internet Explorer 8 und Internet Explorer 7 auf Vista SP1+ gilt dies auch für jeden 32bit Internet Explorer. Außerdem kann dies über das Advanced Setting “Datenausführungsverhinderung aktivieren” steuern.
  • Internet Explorer Prozesse werden weniger häufig unfreiwillig beendet: dies lässt sich auf weniger geladene 3rd party ActiveX Controls zurückführen
  • Internet Explorer Prozesse starten schneller: auch dies ist auf weniger geladene Add-Ons zurückzuführen

F: Warum wurde dann überhaupt eine 64bit Version des Internet Explorers erstellt?
A: Da der Internet Explorer, bzw. die Mehrzahl seiner Komponenten, Bestandteile des Betriebssystems ist. Diese Komponenten sind insb. die Netzwerkkomponenten (URLMon für das Handling aller Namen und der verwendeten Zonen, WinINET für die Netzwerkkommunikation), sowie die Rendering Engine (MSHTML) und bedingt (s.o.) auch die Scripting Engines (JScript(9) und vbscript). Da ein Windows Betriebssytem ohne diese Komponenten nicht auskommen kann, wurde diese selbstverständlich für die 64-bit Systeme portiert und das Portieren der “iexplore.exe” war dann der geringste Part.

Hier ist also erkennbar, dass derzeit der Internet Explorer 64-bit eher für das Betriebssystem als für den Benutzer erstellt wurde. Dies mag sich in der Zukunft ändern, derzeit können wir dies aber noch nicht absehen.

Gastposting von Stephanus Schulte , Windows Platform Support Escalation Engineer bei der Microsoft Deutschland GmbH.

Anmerkung von Daniel Melanchthon am 21.03.2011:

  • Das 32-bit Installationspaket IE9 ist für 32-bit Windows (x86).
  • Das 64-bit Installationspaket IE9 ist für 64-bit Windows (x64) und enthält den 32-bit und 64-bit IE9 (deswegen ist es auch ungefähr doppelt so groß).
  • Anwender mit Windows 64-bit (x64) brauchen nur das IE9 64-bit-Paket. Danach ist 32-bit IE9 der Standardbrowser und die 64-bit IE-Komponenten sind zusätzlich mit an Board.