Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2003.08.11;
Скачать: 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 вся ветка

Текущий архив: 2003.08.11;
Скачать: CL | DM;

Наверх




Память: 0.48 MB
Время: 0.011 c
6-33244
Инна
2003-06-04 20:51
2003.08.11
excel-отчет в инете


14-33369
alex_bredin
2003-07-25 13:30
2003.08.11
Сегодня-день Системного администратора


14-33305
Саня
2003-07-24 13:40
2003.08.11
Если есть настоящие МАСТЕРА, то ответьте!


14-33314
alenka
2003-07-24 10:26
2003.08.11
Раннее и позднее связывание


3-33049
RomanM
2003-07-18 11:33
2003.08.11
Выборка(фильтрация) данных