Открытие браузером нескольких файлов ХТМЛ сразу

Программирование на Visual Basic, главный форум. Обсуждение тем программирования на VB 1—6.
Даже если вы плохо разбираетесь в VB и программировании вообще — тут вам помогут. В разумных пределах, конечно.
Правила форума
Темы, в которых будет сначала написано «что нужно сделать», а затем просьба «помогите», будут закрыты.
Читайте требования к создаваемым темам.
xenomorph
Постоялец
Постоялец
Аватара пользователя
 
Сообщения: 508
Зарегистрирован: 18.04.2004 (Вс) 11:41
Откуда: это не важно - на сегодня у меня есть алиби ...

Открытие браузером нескольких файлов ХТМЛ сразу

Сообщение xenomorph » 31.01.2008 (Чт) 22:07

Проблема:

Когда открываешь в браузере 1 файл проблем не возникает -

Код: Выделить всё
Call ShellExecute(frm_Main.hwnd, "open", cls_Rep.GetRepFNP, "", "", 3)


Работает.

А когда делаешь:

For i = 0 To 4
ShellExecute(...)
Next


Загружаетья 1-2 файла вместо всех четырёх.

Что делать?

Просьба решения без таймеров. Душа хотит элегантности!

Заранее спасибо!
... Dpkjvfnm dc`xnj itdtkbnmcz, f tckb yt itdtkbnmcz hfcitdtkbnm b dpkjvfnm !!! ...

Alexanbar
Продвинутый гуру
Продвинутый гуру
Аватара пользователя
 
Сообщения: 1727
Зарегистрирован: 13.04.2004 (Вт) 23:04
Откуда: Волгоградская обл.

Сообщение Alexanbar » 31.01.2008 (Чт) 22:15

Вообще-то , браузер по представленному коду не просматривается.

ТОчно не скажу, но, возможно, ShellExecute работает в асинхронном режиме.

Возможно, нужно ждать появления определённого окна, прежде, чем вызывать следующее.

xenomorph
Постоялец
Постоялец
Аватара пользователя
 
Сообщения: 508
Зарегистрирован: 18.04.2004 (Вс) 11:41
Откуда: это не важно - на сегодня у меня есть алиби ...

Сообщение xenomorph » 31.01.2008 (Чт) 22:26

2 Alexanbar

Проблема в том что у меня ФФ, может у кого ИЕ, ещё Нетскейп, Опера ...

Окон много.

Все отслеживать ой как не хочется.

У меня задача - запустить несколько файлов в браузер.
Может есть ещё какие-нить решения?
... Dpkjvfnm dc`xnj itdtkbnmcz, f tckb yt itdtkbnmcz hfcitdtkbnm b dpkjvfnm !!! ...

Alexanbar
Продвинутый гуру
Продвинутый гуру
Аватара пользователя
 
Сообщения: 1727
Зарегистрирован: 13.04.2004 (Вт) 23:04
Откуда: Волгоградская обл.

Сообщение Alexanbar » 31.01.2008 (Чт) 22:50

Я вот именно так и делал. Для каждого из трёх браузеров (IE, FF. Opera) писал свой код.

КСтати, для браузеров (FF,Opera) есть два режима работы:

1- открытие в отдельном окне
2- на вкладке существующего окна.

У IE-6 вкладок нет, но, возможно, у IE7 они есть.

Как запустить конкретный режим, зависит от конкретного браузера.

Если бы задача ставилась только для IE, можно было бы решить, работая с событиями IE:

Код: Выделить всё
Public WithEvents IE As SHDocVw.InternetExplorer
...

Set IE= new SHDocVw.InternetExplorer

ie.navigate "http://sss.nnn.ru/"

While IE.Busy
doevents
wend


xenomorph
Постоялец
Постоялец
Аватара пользователя
 
Сообщения: 508
Зарегистрирован: 18.04.2004 (Вс) 11:41
Откуда: это не важно - на сегодня у меня есть алиби ...

re

Сообщение xenomorph » 31.01.2008 (Чт) 23:15

2 Alexanbar:

Спасибо!

Нда... день от ко дню не легче.

Плохо. Буду думать!
... Dpkjvfnm dc`xnj itdtkbnmcz, f tckb yt itdtkbnmcz hfcitdtkbnm b dpkjvfnm !!! ...

Alexanbar
Продвинутый гуру
Продвинутый гуру
Аватара пользователя
 
Сообщения: 1727
Зарегистрирован: 13.04.2004 (Вт) 23:04
Откуда: Волгоградская обл.

Сообщение Alexanbar » 31.01.2008 (Чт) 23:37

Если не секрет, а зачем надо открывать сразу несколько файлов? Может быть, есть иное решение?

xenomorph
Постоялец
Постоялец
Аватара пользователя
 
Сообщения: 508
Зарегистрирован: 18.04.2004 (Вс) 11:41
Откуда: это не важно - на сегодня у меня есть алиби ...

re

Сообщение xenomorph » 01.02.2008 (Пт) 0:29

Не секрет :-)

Программа генерирует отчёты в ХТМЛ.

Пользователю необходимо по окончанию работы "увидеть" их.
Поэтому надо 4-6 доков грузануть в ФФ.

Желательно чтобы в отдельные табы.

Оригинальное решение сейчас пришло в голову - грузить ХТМЛ заглушку с яваскриптом, чтобы тот пооткрывал табы и повгружал туда доки.

Хотя х.з. или так получиться.
... Dpkjvfnm dc`xnj itdtkbnmcz, f tckb yt itdtkbnmcz hfcitdtkbnm b dpkjvfnm !!! ...

Alexanbar
Продвинутый гуру
Продвинутый гуру
Аватара пользователя
 
Сообщения: 1727
Зарегистрирован: 13.04.2004 (Вт) 23:04
Откуда: Волгоградская обл.

Сообщение Alexanbar » 01.02.2008 (Пт) 23:03

Если конкретно в FF, то надо его предварительно в этот режим перевести

нужно в файле prefs.js откорректировать параметр

browser.link.open_newwindow

Для OPera нужно откорректировать параметр SDI в разделе User Prefs в файле Opera6.ini


Еще можно попытаться просто сгенерировать HTML-ку в виде таблицы из одного столбца. В ячейки вписать тело каждого отчёта. Но это при условии, что отчеты не слишком наворочены в форматировании.


Ещё вариант- можно попробовать сделать отложенную подгрузку на вкладки - по клику.


Вернуться в Visual Basic 1–6

Кто сейчас на конференции

Сейчас этот форум просматривают: Google-бот, Yandex-бот и гости: 122

    TopList  
cron