![]() |
|
||||||||||
|
|||||
|
Регистрация: Mar 2006
Сообщений: 8
|
Бьюсь уже месяц наверное...
В общем создаю простейшую кнопку которая должна открыть файл Скрипт: Button1.onRelease = function(){ getURL("file://///Server/soft/CalcPlus.msi", "_self", "GET"); }; Тестирую - все пашет Дримвивером вставляю в страничку и выкладываю на сервер, где поднят IIS 6. Открываю страничку со своего компа, нажимаю на кнопку и....НИЧЕГО НЕ ПРОИСХОДИТ. Пробую и Эксплорером и Файерфоксом и Оперой. Ничего. И никаких всплывающих окон типа что-там заблокировано тоже нет. Иду к другому юзеру на комп, открываю с него. Пашет! Но только из Эксплорера и Макстона. Опера и ФаейрФокс не работают по-прежнему. В чем может быть дело? Уйти с IIS на Apache? Уже все настройки в браузерах убрал на low, все всплывающие окна разрешил. Никакого толка. Я уже устал ковыряться ужасно. Помогите! |
|
|||||
|
Регистрация: Nov 2004
Адрес: Санкт-Петербург
Сообщений: 751
|
А ты уверен, что учётная запись, под которой работает сервер имеет доступ к этому файлу?
Да и кто ж так путь прописывает? Прописый тогда нормальный абсолютный путь начиная с диска и т.д. без псевдопротоколов типа file:. И зачем хранить swf выше корня сайта?
__________________
Всё гениальное просто. |
|
|||||
|
Регистрация: Mar 2006
Сообщений: 8
|
Вот если переносим файлик в корень сайта, то все работает:
Button1.onRelease = function(){ getURL("http://Server/site/CalcPlus.msi", "_blank", "GET"); }; А из другой папки soft браться этот файл не хочет, хотя разрешения все стоят. И папка расшарена для пользователя веб-сервера. Пишет Ошибку 404. С абсолютным путем пробовал, может написал опять криво... Вот например локальный путь до файла на серваке такой: E:\Soft\CalcPlus.msi Как его вписать в getURL? И вообще разве он не будет тупо искать такой файл на компе юзера а не на сервере?! И еще маленький вопросик, а что такое псевдопротоколы? |
|
|||||
|
Регистрация: Apr 2003
Сообщений: 243
|
А как же безопасность? Раз swf открыт с сервера, то на компьютере пользователя ему что-либо искать запрещено. Поэтому и не открывает.
|
|
|||||
|
Регистрация: Nov 2004
Адрес: Санкт-Петербург
Сообщений: 751
|
Flash ни при каких обстоятельсятвах не ищет файлы на компе пользователя.
+ Flash не открывает файлы по относительному пути (насколько я помню). Если твой файл лежит по пут E:\Soft\CalcPlus.msi папка должна быть расшарена в виртуальную директорию, например Soft. Тогда и обращайся как http:// [твой сервер] /Soft/CalcPlus.msi. Это первое. А второе - Flash не будет запускать исполняемый файл на удалённой машине.
__________________
Всё гениальное просто. |
|
|||||
|
Регистрация: Nov 2004
Адрес: Санкт-Петербург
Сообщений: 751
|
Псевдопротокол - это команда, которая воспринимается как протокол, но на деле им не является. Например HTTP - hyper text transfer protocol, FTP - file transfer protocol, а javascript:, mail: протоколами не являются, но показывают что нужно исполнить код javascript для этой страницы и запустить программу электронной почты соответственно.
__________________
Всё гениальное просто. |
|
|||||
|
Регистрация: Mar 2006
Сообщений: 8
|
Я наверно путанно объяснил...Тут ситуация-то простая. Я хочу чтобы пользователь мог зайти браузером на наш локальный веб-сервер, кликнуть на кнопочку флешевую и скачать файлик, находящийся на том же сервере, ну может на другом харде. Вот и все. Этот же файл он может скачать через "Сетевое окружение", но я хочу чтоб все цивильно было. :-)
Насколько я понял, надо обязательно делать виртуальную директорию, так? Иначе никак не получится? |
|
|||||
|
Регистрация: Apr 2003
Сообщений: 243
|
Если пользователь открывает флешку через http:, то и файл должен быть доступен по этому протоколу. Сетевое окружение к протоколу http: не имеет никакого отношения, поэтому нужно сделать, чтобы этот файл был виден через http-сервер. А уж через виртуальную директорию или как - Вам решать. Однако имейте в виду, что в любом случае файл вначале скачается на компьютер пользователя, потом браузер спросит, что с ним делать - и только тогда откроется (в случае с .msi).
|
|
|||||
|
Регистрация: Nov 2004
Адрес: Санкт-Петербург
Сообщений: 751
|
Начнём с того, что чтобы скачать файл, нужен Flash 8 и использовать класс FileReference. Для того чтобы скачать файл по протоколу http тебе обязательно нужно сконфигурировать виртуальные директории.
__________________
Всё гениальное просто. |
|
|||||
|
Регистрация: Apr 2003
Сообщений: 243
|
Цитата:
![]() |
![]() |
![]() |
Часовой пояс GMT +4, время: 17:00. |
|
|
« Предыдущая тема | Следующая тема » |
|
|