![]() |
| ||
|
|
Новости |
Поиск |
FAQ |
Статьи |
Книги |
Новости VCL
| | Форумы ЧАТ |
Орешник |
|
| |||
| |||
« предыдущая ветвь | форум | следующая ветвь »
ShellExecute
Елена © (2002-01-07 14:00:00)Открываю из своей программы Интернет-страничку функцией ShellExecute. Но если обозреватель уже открыт, то начинается загрузка именно в уже созданном окне. Как открыть страницу в новом окне?
Заранее благодарна.
SuperMama (2002-01-09 16:01:00) [1]>>> Vovchik ©
То тогда в запущенном Делфи тыцаешь кнопочку Ф1
и ищеш в указателе ShellExecute ....
И ЧИТАЕШЬ !
Vovchik (2002-01-09 14:11:00) [2]Не совсем. Если start - это прога start.exe, то, например, у меня её нету, поскольку первым делом после установки виндов у удаляю всё дерьмо, которое устанавливается вместе с виндой. Поэтому этот способ тоже ...
SuperMama (2002-01-09 10:36:00) [3]>>Vovchik ©
Ну ты просил !
>>> а вдруг найдётся некто, юзающий НетШкаф, например, а не експлорер?
Вот поэтому и WinExec("start http://www.mail.ru",SW_SHOW);
>>>но надо сначала подсмотреть в реестре, какая прога ассоциирована с расширением htm или html.
Так вот если по дефолту в вынях ничё нестоит (а значит ехплорер)
то тогда без "старт", жестко, а ежели чё другое то буить то что сасациированно !
ПОНЯЛ ?
Vovchik (2002-01-08 18:48:00) [4]Это чего такое: WinExec("start http://www.mail.ru",SW_SHOW)???????????????????????
Оно не работает и не понятно, почему вообще должно работать???
Можно и ВинЕкзеком, но надо сначала подсмотреть в реестре, какая прога ассоциирована с расширением htm или html.
SuperMama (2002-01-08 17:57:00) [5]>>Vovchik ©
Тогда в таких случаях делаеться так :
WinExec("start http://www.mail.ru",SW_SHOW);
! ! ! ! !
Vovchik (2002-01-08 17:00:00) [6]>SuperMama
Это не есть хорошо ровно по одной причине: а вдруг найдётся некто, юзающий НетШкаф, например, а не експлорер? К тому же в вашем примере указан путь жёстко, тоже некрасиво.
Елена (2002-01-08 15:53:00) [7]SuperMama,
пасибки.
SuperMama (2002-01-08 15:44:00) [8]WinExec("C:\Program Files\Internet Explorer\iexplore.exe http://www.maol.ru",SW_SHOW);
Такая строка работает наУРА !
avt (2002-01-08 15:39:00) [9]Z был прав - у меня это работает!
...
var
Command, filename, params,dir: pchar;
begin
command:="open" + #0;
filename:="iexplore.exe" + #0;
dir:="C:\Program Files\Internet Explorer"+#0;
Params:="C:\WINDOWS\Рабочий стол\Заказ.htm"+#0;
ShellExecute(form1.ClientHandle, command, filename, params, Dir, SW_SHOW);
Params:="C:\WINDOWS\Рабочий стол\возможности.htm"+#0;
ShellExecute(form1.ClientHandle, command, filename, params, Dir, SW_SHOW);
{или так:
WinExec("C:\Program Files\Internet Explorer\iexplore.exe C:\WINDOWS\Рабочий стол\Заказ.htm",SW_SHOW);
WinExec("C:\Program Files\Internet Explorer\iexplore.exe C:\WINDOWS\Рабочий стол\возможности.htm",SW_SHOW);
}
end;
Елена (2002-01-08 09:17:00) [10]Delphimun,
запускаю второй (пустой) Эксплорер, но страница все равно грузится в первый :o(
3d[Power],
Ваш совет работает, но он очень неудобен для пользователя.
Z,
Ваша функция вызывает нарушение доступа :(((
Мальчики, ну что же Вы советуете?
Z (2002-01-07 18:31:00) [11]Попробуй такую функцию:
(единственный минус - будет открыт IE, а не Default-броузер)
procedure LoadURL (URL: string);
var
Command, filename: pchar;
params, dir: string;
begin
command:="open" + #0;
Params:=URL+#0;
filename:="iexplore.exe" + #0;
dir:="C:\Program Files\Internet Explorer"+#0;
ShellExecute(form1.ClientHandle, command, filename, @params[1], @Dir[1], 1);
end;
3d[Power] (2002-01-07 14:18:00) [12]Кстати если при этой операции удерживать shift то откроется новое окно. А так помоему есть какието ключи к iexplore.exe чтобы в новом окне открывать
Delphimun (2002-01-07 14:17:00) [13]Сначало запусти пустой iexplorer, а потом загружай страничку