2010-12-02 2 views
0

Этот скрипт работает в IE 6, но не в IE 8.0 Теперь у моих пользователей появляется сообщение об ошибке «Отказано в доступе». Какие настройки я могу отсылать своим пользователям для включения локального доступа к файлу , чтобы этот скрипт работал?Ie 8.0 Доступ запрещен при попытке открыть локальные файлы

<script language="JavaScript"> 
function viewFile(selectedItem) { 
for (i=0; i<selectedItem.options.length; i++) { 
    if ((selectedItem.options[i] != null) && (selectedItem.options[i].selected == true)) { 
    window.open("file://"+selectedItem.options[i].text); 
    } 
} 
} 
</script> 

Пользователи могут выбрать несколько файлов с локального диска. Список сохраняется в текстовом поле и затем нажимает на один выбранный файл из списка.

Пример:

selectedItem.options[i].text = C:\Documents and Settings\All Users\Documents\My Pictures\Sample Pictures\Sunset.jpg 
+0

Каков ваш сценарий, предназначенный для работы? Это не ясно из вашего вопроса. Это сценарий загрузки? – calvinf 2010-12-02 20:55:43

ответ

3

Вы не собираетесь быть в состоянии сделать это «из коробки» больше как модель безопасности IE8, намного строже, чем IE6.

Ваши возможности ограничены, но могут включать в себя:

  1. разработки флэш-компонент для доступа к локальному диску пользователя.

  2. Внесите сайт в качестве приложения HTA ​​(html), которое обеспечивает продвинутый доступ к файловой системе пользователя.

  3. Попросите посетителей настроить свои настройки безопасности IE, добавив ваш сайт в список доверенных доменов, а затем предоставив доверенным доменам доступ к файлу: /// протокол (я не уверен, какой параметр безопасности относится к этому конкретному особенность, или если один даже имеется)

  4. Разработка pluggin или BHO объекта (похожий на флэш-компонент, но написанный на C++ или C#)

  5. создания IE контекстного меню -. http://msdn.microsoft.com/en-us/library/bb735853(v=vs.85).aspx который также будет иметь повышенные привилегии.

В качестве примечания соответствующих схем файлов для C: \ путь должен выглядеть следующим образом:

file:///c:/documents%20and%20settings/file.jpg

Обратите внимание на три / после file:, Урьте экранирование пространства, и все \ переключается до /

Смежные вопросы