Главная страница
    Top.Mail.Ru    Яндекс.Метрика
Форум: "Потрепаться";
Текущий архив: 2003.08.11;
Скачать: [xml.tar.bz2];

Вниз

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

 
Кен   (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;
Скачать: [xml.tar.bz2];

Наверх





Память: 0.45 MB
Время: 0.006 c
1-33158
Relaxxx
2003-07-28 11:43
2003.08.11
Как мне узнать какого числа в указаном месяце выходные (т.е. суб)


14-33364
Empleado
2003-07-25 20:18
2003.08.11
Пятница-с ...


3-33075
LeReve
2003-07-17 17:44
2003.08.11
про TCalientDataSet.ApplyUpdate


1-33202
Lt
2003-07-29 11:04
2003.08.11
TStrings и TListView


1-33185
qwe
2003-07-28 20:17
2003.08.11
запуск через сеть





Afrikaans Albanian Arabic Armenian Azerbaijani Basque Belarusian Bulgarian Catalan Chinese (Simplified) Chinese (Traditional) Croatian Czech Danish Dutch English Estonian Filipino Finnish French
Galician Georgian German Greek Haitian Creole Hebrew Hindi Hungarian Icelandic Indonesian Irish Italian Japanese Korean Latvian Lithuanian Macedonian Malay Maltese Norwegian
Persian Polish Portuguese Romanian Russian Serbian Slovak Slovenian Spanish Swahili Swedish Thai Turkish Ukrainian Urdu Vietnamese Welsh Yiddish Bengali Bosnian
Cebuano Esperanto Gujarati Hausa Hmong Igbo Javanese Kannada Khmer Lao Latin Maori Marathi Mongolian Nepali Punjabi Somali Tamil Telugu Yoruba
Zulu
Английский Французский Немецкий Итальянский Португальский Русский Испанский