Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате
Форум программистов > Delphi: Общие вопросы > Открыть сайт в IE


Автор: Гость 6.9.2003, 18:48
А как открыть сайт в IE только в новом окне? очень надо

Автор: Vit 6.9.2003, 18:51
ShellExecute ... "c:\program files\...Explorer.exe" ... http://www.vingrad.ru

Автор: stab 6.9.2003, 18:55
ShellExecute(0, 'opennew', 'c:\my.htm', nil, nil, SW_SHOWNORMAL);

или можно просто:

ShellExecute(0, nil, 'c:\my.htm', nil, nil, SW_SHOWNORMAL); т.к. opennew -- это обычно команда по умолчанию

Автор: DriveSoftware 7.9.2003, 16:11
Почему то этот способ не работает когда ссылаешся на net, типа http://...., а мне именно это и надо, pliz smile.gif

Автор: Vex 7.9.2003, 16:29
Попробуй:
ShellExecute(Handle,'open','c:\program files\internet explorer\iexplore.exe /URL',nil, nil, SW_RESTORE);

Автор: Vex 7.9.2003, 16:30
только не надо ставить там "http://" IE его автоматически подставит.

Автор: DriveSoftware 7.9.2003, 16:33
А если пользователь хочет открывать в другом эксплорере, например в Oper-е, т.е. как мне узнать к ниму путь, или просто обозреватль который стоит по умолчанию.

Автор: Vex 7.9.2003, 16:37
Ну тогда вместо c:\...\iexplore.exe /URL укажи просто URL, только я не уверен, что он откроется в новом окне.

Автор: DriveSoftware 7.9.2003, 16:42
Вот вот, в этом то и проблемаsad.gif

Автор: Vex 7.9.2003, 16:52
А под другими браузерами проблемы и не будет (ИМХО). В Опере, например, добавиться новая вкладка. Просто проверяешь какой браузер стоит по умолчанию и если эксплорер, то указываешь к нему путь, если не эксплорер, то просто УРЛ, хотя я не увере на 100% что другие браузеры ведут себя не так как эксплорер.

Автор: Vit 7.9.2003, 16:54
Цитата(DriveSoftware @ 7.9.2003, 07:33)
А если пользователь хочет открывать в другом эксплорере, например в Oper-е, т.е. как мне узнать к ниму путь, или просто обозреватль который стоит по умолчанию.

В реестре взять браузер по умолчанию для протокола http

Автор: DriveSoftware 7.9.2003, 16:54
А как узнать какой по умолчанию, наверное какой-то ключик в реестре об этом знает? какой?

Автор: Vit 7.9.2003, 16:57
Поищи строку http по реестру...

Автор: DriveSoftware 7.9.2003, 16:59
Даже предположить страшно сколько он там этого добра найдет.

Автор: Vit 7.9.2003, 17:03
Ну до чего же люди ленивые, я вот нашёл за 20 секунд!

HKEY_CLASSES_ROOT\http\shell\open\command


Вы выспрашивали 3 дня ответ, а ведь решение простейшее - достаточно попробовать запустить ту же функцию ShellExecute в разных вариантах, да одним глазом в реестр заглянуть... Я наводку ещё когда дал? что самому ну хоть чуть-чуть поэкспериментировать влом? Только готовое решение надо, написанное, оформленное, и чтоб все возможные варианты были предусмотрены? Писать функцию по чтению реестра надо?

Автор: DriveSoftware 7.9.2003, 17:16
Ну не 3 дня а только вчера, спасибо. smile.gif

Powered by Invision Power Board (http://www.invisionboard.com)
© Invision Power Services (http://www.invisionpower.com)