Ich möchte in der Lage sein, Vista IE7 Protected Mode innerhalb einer Seite mit Javascript, vorzugsweise zu erkennen. Mein Denken ist es, eine Aktion, die geschützten Modus verletzen würde, so dass es ausgesetzt. Das Ziel ist es, geeignete Website-Hilfe-Meldung an IE7 Vista-Benutzer zu geben.
Antworten
Zu viele Anzeigen?Was wollen Sie erreichen, das sich für geschützte Benutzer wesentlich unterscheidet? Ich habe einige Probleme mit Popup-Fenstern gesehen, aber ansonsten ist sauberes JavaScript in der Regel weniger betroffen. Wenn Sie feststellen, dass ein Codeblock nicht ausgeführt werden kann, sollten Sie nach dem Ausführungsversuch prüfen, ob das Dokument den erwarteten Zustand hat, und andernfalls eine Warnmeldung ausgeben.
Wenn es sich um ActiveX handelt, hat MS eine Protected Mode API: http://msdn.microsoft.com/en-us/library/ms537316.aspx
Der geschützte Modus ist anpassbar, so dass es keine zuverlässige Möglichkeit gibt, ihn anhand von Aktionsverletzungen zu erkennen. Und viele Benutzer deaktivieren die Benutzerkontensteuerung, so dass die Erkennung über die Version ebenfalls nicht funktioniert (ganz zu schweigen davon, dass Sie mit IE 8 die gleichen Probleme haben könnten). Es ist immer am besten zu testen, ob etwas funktioniert, anstatt von der Version auszugehen).
Ich habe die MSDN-Dokumentation des Geschützter Modus API de 6t7m4 und wenn ich die ieframe.dll von Javascript aus aufrufen könnte, wie z. B.:
var axo = new ActiveXObject("ieframe.dll");
Ich könnte auf die IEIsProtectedModeProcess()
Funktion, aber ich glaube, sie ist aus Sicherheitsgründen unzugänglich.