SRC: Open page in one Internet Explorer window
От: Flamer Кипр http://users.livejournal.com/_flamer_/
Дата: 18.09.02 10:50
Оценка:
Вот, раскопал в дебрях одного из старых проектов. Задача тогда стояла такая — если ни одного окна IE не открыто, то открыть новое с заданным адресом страницы; если хоть одно окно браузера уже открыто, то вывести его на передний план и уже в нем открыть требуемый адрес.

Как сейчас помнится, в результате долгой и продолжительной болезни родилась такая функция:


// Первый параметр - это дескриптор окна-владельца (HWND), второй - адрес страницы

void OpenPageInIE(HWND hWnd, const char* pageAddr) {

HANDLE hWndIEApp = NULL;

hWndIEApp = FindWindow("IEFrame",NULL); // ищем главное окно IE

    if(hWndIEApp) {
        ShowWindow(hWndIEApp, SW_SHOWMAXIMIZED); // разворачиваем
        BringWindowToTop(hWndIEApp); // переводим на передний план
    }

ShellExecute(hWnd, "open", pageAddr,NULL,NULL, SW_SHOWNORMAL); // открываем страницу
    
}


Пример использования:


OpenPageInIE(mainWindowHWND,"http://www.rsdn.ru");


З.Ы. Проверял под Win98/2000 — работает.
 
Подождите ...
Wait...
Пока на собственное сообщение не было ответов, его можно удалить.