Страница: 1 |
Страница: 1 |
Вопрос: Не могу решить проблему с запуском браузера из VB
Добавлено: 11.08.05 00:22
Автор вопроса: vigur
Вообщем проблема такова что мне надо открывать из программы линки в разных браузерах. В программе есть настройка влияющая на то как открывается сайт - в старом окне или всегды в новом.
Проблема из 2 частей
1) IE и Firefox по разному открывают. IE всегда в новом, Firefox открывает в одном и том же окне.
2) Как нибудь контролировать как будет открываться новый линк.
Может какие нибудь параметры передавать при запуске браузера или как нибудь програмно.
пользовался таким кодом.
Код:
ChDir WebBor.FireFox
tRet = WinExec("FireFox.exe " & TBookURL, 1)
и таким
Код:
X = CreateProcessA(0&, WebBor.FireFox & "\FireFox.exe -url " & TBookURL, 0&, 0&, 0&, NORMAL_PRIORITY_CLASS, 0&, 0&, NameStart, NameOfProc)
Ответы
Всего ответов: 3
Номер ответа: 1
Автор ответа:
HACKER
Разработчик Offline Client
Вопросов: 236
Ответов: 8362
Профиль | | #1
Добавлено: 11.08.05 01:39
можно на js написать функцию которая при запуске будет открывать другую страничку в новом окне. Тогда просто откроешь через Shell ту страничку, а она откроет новое окно если браузер разрешит конечно а в том окне будет нужная тебе страничка... ну думаю понял что я имел ввиду...
Номер ответа: 2
Автор ответа:
vigur
Вопросов: 1
Ответов: 1
Профиль | | #2
Добавлено: 11.08.05 12:33
это конечно вариант
при открытии каждой страницы она так или иначе будет открывать в старом окне , порождая новое нужным линком, a в старом потом делать history.go(-1);
Такой подход будет работать в Firefox, который по умолчанию открывает ссылки всегда в старом окне. И я смогу контролировать как он открывает окно, давая разные url как параметр.
firefox google.com <- старое окно
firefox pagewithjs.htm?site=google.com <- новое окно.
Теперь вопрос как подобный контроль осуществить с IE, который открывает всегда в новых окнах?
Номер ответа: 3
Автор ответа:
HACKER
Разработчик Offline Client
Вопросов: 236
Ответов: 8362
Профиль | | #3
Добавлено: 11.08.05 17:15
найти хендел окна IE, там по дочерним найти хендел строки адреса, попробовать перезаписать её через SetWindowText, найти хендкл кнопки "Перейти" и нажать на неё
Честно говоря я давно пробовал - неполучиЛОСЬ ! Кажись SetWindowText нехотел менять адрес, а до программного нажатия на кнопку я так и не дошёл. Вообщем если будешь пробовать и получится, свиснеш, ок?