Вниз
Скачать: CL | DM;

Как сделать так, чтобы страничка открывалась в новом окне ИЕ,   Найти похожие ветки 

 
Кен ©   (2003-07-25 01:49) [0]

а не в уже открытом ?
Открываю страничку ИЕ командой
ShellExecute(0, nil, " http://ya.ru", nil, nil, SW_SHOWNORMAL);
И почему то страничка грузится не в новом окне ИЕ, а в одном из уже открытых.


 
Ihor Osov'yak ©   (2003-07-25 01:57) [1]


...
uses SHDocVw,
...

var
iWB: IWebBrowser2;
ov: OleVariant;
...
iWB := CreateOleObject("InternetExplorer.Application.1") as IWebBrowser2;
if not assigned(iWB) then exit;

iWB.Set_Visible(TRUE);

ov:="www.microsoft.com";
iWB.Navigate2(ov,emptyparam,emptyparam,emptyparam,emptyparam);


Зы - не забудь CoInitialize, если оно нигде не делалось..


 
Кен ©   (2003-07-25 02:16) [2]

> Ihor Osov"yak © (25.07.03 01:57)
> Зы - не забудь CoInitialize, если оно нигде не делалось..

Не делалось. А как его не забыть ?

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


 
Ihor Osov'yak ©   (2003-07-25 02:59) [3]

> Не делалось. А как его не забыть ?

Лишний вызов - не помеха. Лишь бы не забыть сделать парный CoUninitialize, проще всего в секции инициализации, деинициализации какого-то модуля:

initialization
CoInitialize(nil);
finalization
CoUninitialize;

Зачем это? Чтобы COM нормально работал. некоторые делфийские модули это уже делают, так что вполне вероятео, что ты раньше не делал этого при работе с ком. Нужно ли сейчас - не знаю. Но лишняя пара вызовов помехой не будет. Если же до вызова CreateOleObject не будет сделано CoUninitialize - получишь ошибку времени исполнения..

> Вообще ужас какой то. Вместо одной короткой строчки, пол страницы кода.

И это пол-страницы кода? Наивный молодой человек..
Ну а с приводу ужаса - найди решение коротше. Я думаю, оно есть. Можешь поискать в паправлении командных ключей IE и юзать далее CreateProcess..
Я лишь дал то решение, которое было под рукой.. И основная цнль там была не запуск отдельной инстанции IE (что оно и делает), а получение в руки
IWebBrowser2. Но тебе действительно может оптимальнее CreateProcess + ключи командной строки IE..



 
Бархатный   (2003-07-25 06:51) [4]


> Кен © (25.07.03 01:49)
> а не в уже открытом ?
> Открываю страничку ИЕ командой
> ShellExecute(0, nil, " http://ya.ru", nil, nil, SW_SHOWNORMAL);
> И почему то страничка грузится не в новом окне ИЕ, а в одном
> из уже открытых.


Попробуй WinExec"ом. У меня тоже такая проблема была, кажись WinExec"ом решил.


 
Suntechnic ©   (2003-07-25 07:38) [5]

>Кен ©
Выбирай
1)
uses URLMon;
HlinkNavigateString(nil, " http://ya.ru");

2)
ShellExecute(0,"open","IExplore.exe","-new http://ya.ru",nil,SW_SHOWNORMAL);



Страницы: 1 вся ветка

Скачать: CL | DM;



Память: 0.46 MB
Время: 0.018 c
3-33068
hair
2003-07-18 16:04
2003.08.11
FB1.0.3 и IB60 рекурсия в триггере


14-33276
race1
2003-07-23 16:19
2003.08.11
Partition Magic 8 trouble


14-33295
LiLa Ananda
2003-07-23 08:47
2003.08.11
Требуются люди, желательно, в огромном количестве!:))


14-33330
trotski
2003-07-22 00:13
2003.08.11
Программистская документация


11-33084
Morthan
2002-12-05 08:21
2003.08.11
Как правильно обработать OnKeyDown?




   Наверх