Обнаружение защищенного режима Vista IE7 с помощью Javascript - PullRequest
6 голосов
/ 02 декабря 2008

Я хотел бы иметь возможность определять защищенный режим Vista IE7 на странице, используя предпочтительно JavaScript. Я думаю о том, чтобы выполнить действие, которое нарушит защищенный режим, тем самым разоблачая его. Цель состоит в том, чтобы предоставить соответствующую помощь пользователям сайта IE7 Vista.

Ответы [ 3 ]

3 голосов
/ 02 декабря 2008

Что вы пытаетесь достичь, что существенно отличается для защищенных пользователей? Я видел некоторые проблемы с всплывающими окнами, но в остальном чистый JavaScript имеет тенденцию быть менее затронутым. Если вы обнаружите, что блок кода не будет выполнен, почему бы не выполнить проверку после попытки выполнения, чтобы увидеть, соответствует ли документ ожидаемому состоянию, и предупредить, если нет.

Если используется ActiveX, MS имеет API защищенного режима: http://msdn.microsoft.com/en-us/library/ms537316.aspx

Защищенный режим настраивается, поэтому у вас нет надежного способа его обнаружения на основе нарушения действия. И многие пользователи отключают UAC, поэтому обнаружение по версии также не будет работать (не говоря уже о том, что у вас может быть та же самая головная боль с IE 8. Всегда лучше проверять, работает ли что-то, а не предполагать по версии.)

0 голосов
/ 03 декабря 2008

Я просмотрел документацию MSDN API защищенного режима из 6t7m4 , и если бы я мог вызвать ieframe.dll из JavaScript, например:

var axo = new ActiveXObject("ieframe.dll");

Я бы смог получить доступ к функции IEIsProtectedModeProcess(), но я считаю, что она недоступна по соображениям безопасности.

0 голосов
/ 03 декабря 2008

Adobe Flash может работать по-другому (или не так, как ожидалось) в защищенном режиме Vista IE7. Намерение состоит в том, чтобы предоставить эту обратную связь пользователю.

...