Открыть URL дефолтным браузером

Программирование на Visual Basic, главный форум. Обсуждение тем программирования на VB 1—6.
Даже если вы плохо разбираетесь в VB и программировании вообще — тут вам помогут. В разумных пределах, конечно.
Правила форума
Темы, в которых будет сначала написано «что нужно сделать», а затем просьба «помогите», будут закрыты.
Читайте требования к создаваемым темам.
Zenitchik
Постоялец
Постоялец
 
Сообщения: 369
Зарегистрирован: 21.12.2006 (Чт) 14:48

Открыть URL дефолтным браузером

Сообщение Zenitchik » 13.11.2008 (Чт) 20:41

Как дать винде команду открыть URL дефолтным браузером?
Какая вообще команда работает как окошко "Выполнить"?
Знание английского языка - затрудняет понимание кода

tyomitch
Пользователь #1352
Пользователь #1352
Аватара пользователя
 
Сообщения: 12822
Зарегистрирован: 20.10.2002 (Вс) 17:02
Откуда: חיפה

Re: Открыть URL дефолтным браузером

Сообщение tyomitch » 13.11.2008 (Чт) 20:46

ShellExecute
Изображение

Debugger
Продвинутый гуру
Продвинутый гуру
Аватара пользователя
 
Сообщения: 1667
Зарегистрирован: 17.06.2006 (Сб) 15:11

Re: Открыть URL дефолтным браузером

Сообщение Debugger » 13.11.2008 (Чт) 21:46

Или просто Shell:
Код: Выделить всё
Shell "explorer.exe http://www.vbstreets.ru"

Zenitchik
Постоялец
Постоялец
 
Сообщения: 369
Зарегистрирован: 21.12.2006 (Чт) 14:48

Re: Открыть URL дефолтным браузером

Сообщение Zenitchik » 13.11.2008 (Чт) 22:01

Не катит, explorer.exe URL-ы ишаку переадресовывает.
Вот в вин 9х была замечательная вещь start.exe, которой, увы, нет в ХР... Собственно, почему и спрашиваю.
Знание английского языка - затрудняет понимание кода

iGrok
Артефакт VBStreets
Артефакт VBStreets
 
Сообщения: 4272
Зарегистрирован: 10.05.2007 (Чт) 16:11
Откуда: Сетевое сознание

Re: Открыть URL дефолтным браузером

Сообщение iGrok » 13.11.2008 (Чт) 23:30

Zenitchik писал(а):Не катит, explorer.exe URL-ы ишаку переадресовывает.
Вот в вин 9х была замечательная вещь start.exe, которой, увы, нет в ХР... Собственно, почему и спрашиваю.

Она есть и в XP.

А по теме - ПЕРВЫЙ же ответ - правильный. Остальное - от лукавого. )
label:
cli
jmp label

werbersoft
Новичок
Новичок
Аватара пользователя
 
Сообщения: 31
Зарегистрирован: 09.11.2008 (Вс) 17:13
Откуда: Ростова-на-Дону

Re: Открыть URL дефолтным браузером

Сообщение werbersoft » 14.11.2008 (Пт) 8:01

Есть две API-шки, которые могут тебе помочь:

1.
Код: Выделить всё
Shell "rundll32.exe url.dll,FileProtocolHandler %1"

2.
Код: Выделить всё
Shell "rundll32.exe cdfview.dll,OpenChannel %1"

где %1 - url-адрес.
Мирный программист, помогающий другим. Нехочу никого обижать и грубить.

DRU
Обычный пользователь
Обычный пользователь
Аватара пользователя
 
Сообщения: 56
Зарегистрирован: 16.11.2008 (Вс) 23:26
Откуда: Беларусь, Гомель

Re: Открыть URL дефолтным браузером

Сообщение DRU » 23.11.2008 (Вс) 23:21

Код: Выделить всё
Shell "cmd /X /C start http://bbs.vbstreets.ru/viewtopic.php?f=1&t=37975"

Открывает через командную строку. Также можно использовать для запуска файлов))

werbersoft
Новичок
Новичок
Аватара пользователя
 
Сообщения: 31
Зарегистрирован: 09.11.2008 (Вс) 17:13
Откуда: Ростова-на-Дону

Re: Открыть URL дефолтным браузером

Сообщение werbersoft » 24.11.2008 (Пн) 0:07

DRU, я с вами не согласен. Никому, я думаю не нужно лицезреть тёмное окошко cmd.exe перед выполнением команды! :(
Мирный программист, помогающий другим. Нехочу никого обижать и грубить.

iGrok
Артефакт VBStreets
Артефакт VBStreets
 
Сообщения: 4272
Зарегистрирован: 10.05.2007 (Чт) 16:11
Откуда: Сетевое сознание

Re: Открыть URL дефолтным браузером

Сообщение iGrok » 24.11.2008 (Пн) 0:29

werbersoft писал(а):DRU, я с вами не согласен. Никому, я думаю не нужно лицезреть тёмное окошко cmd.exe перед выполнением команды! :(

1) Никто не мешает запустить это в свёрнутом виде.
Код: Выделить всё
Shell "cmd /C start http://www.ya.ru",vbHide


2) И да, это действительно действует как окошко "Выполнить". Причём ключ /X нафиг не нужен.
Т.е. достаточно
Код: Выделить всё
Shell "cmd /C start " & command_to_run, vbHide


А вот чтобы совсем не было шанса улицезреть тёмное окошко cmd.exe и нужно использовать API ShellExecute.

3)
werbersoft писал(а):Есть две API-шки, которые могут тебе помочь:

1.
Код: Выделить всё
Shell "rundll32.exe url.dll,FileProtocolHandler %1"

2.
Код: Выделить всё
Shell "rundll32.exe cdfview.dll,OpenChannel %1"

где %1 - url-адрес.

Это не APIшки. Ты вызываешь программу rundll32.exe, которая ищет библиотеку url.dll, загружает её, ищет в ней функцию FileProtocolHandler, и вызывает её, передавая ей в качестве параметра то, что ты пишешь вместо %1.

В случае, если у меня по каким-то причинам пользователю будет запрещён запуск rundll32.exe, твой вариант вызова ссылки не сработает.
label:
cli
jmp label

werbersoft
Новичок
Новичок
Аватара пользователя
 
Сообщения: 31
Зарегистрирован: 09.11.2008 (Вс) 17:13
Откуда: Ростова-на-Дону

Re: Открыть URL дефолтным браузером

Сообщение werbersoft » 24.11.2008 (Пн) 0:53

В случае, если у меня по каким-то причинам пользователю будет запрещён запуск rundll32.exe, твой вариант вызова ссылки не сработает.


iGrok, это когда же rundll32.exe может быть запрещена на выполнение? Ведь она - это чуть ли не половина вызовов всех окон Windows! Поверь мне, я работал в былые времена с этим приложением (с её помощью я вызывал где то под 110 различных Windows-операций)...

P.S.: Хотя, может ты имеешь ввиду ограничение пользователя админом? С другой стороны, есть такие вещи которые просто не реально ограничить, хоть тот же переход в спящий режим...
Мирный программист, помогающий другим. Нехочу никого обижать и грубить.

iGrok
Артефакт VBStreets
Артефакт VBStreets
 
Сообщения: 4272
Зарегистрирован: 10.05.2007 (Чт) 16:11
Откуда: Сетевое сознание

Re: Открыть URL дефолтным браузером

Сообщение iGrok » 24.11.2008 (Пн) 1:36

werbersoft писал(а):P.S.: Хотя, может ты имеешь ввиду ограничение пользователя админом? С другой стороны, есть такие вещи которые просто не реально ограничить, хоть тот же переход в спящий режим...

Да. К примеру, ограничение, выставленное админом.
label:
cli
jmp label

Хакер
Телепат
Телепат
Аватара пользователя
 
Сообщения: 16478
Зарегистрирован: 13.11.2005 (Вс) 2:43
Откуда: Казахстан, Петропавловск

Re: Открыть URL дефолтным браузером

Сообщение Хакер » 24.11.2008 (Пн) 23:18

Нет, вот что за человек. Ему один раз объяснили, что его способ — дрянь. Но он не полял, видать, и продолжает отстаивать его (способа) крутизну.
—We separate their smiling faces from the rest of their body, Captain.
—That's right! We decapitate them.

werbersoft
Новичок
Новичок
Аватара пользователя
 
Сообщения: 31
Зарегистрирован: 09.11.2008 (Вс) 17:13
Откуда: Ростова-на-Дону

Re: Открыть URL дефолтным браузером

Сообщение werbersoft » 24.11.2008 (Пн) 23:54

Хорошо Хакер! Так и быть. Способ отстой.
Мирный программист, помогающий другим. Нехочу никого обижать и грубить.


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

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

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

    TopList