Я использовал это для отображения локально сгенерированного html в браузере по умолчанию, в моем случае имя файла выглядит примерно так: «c: \ temp \ page.html», возможно, замена имени файла на URL может сработать ??
ShellExecute(NULL,"open",filename,NULL,NULL,SW_SHOWNORMAL);
Обновлен:
http://support.microsoft.com/kb/224816
Как ShellExecute определяет, следует ли запускать новый экземпляр
Когда ShellExecute просматривает реестр, он ищет подраздел shell \ open. Если определен ключ shell \ open \ ddeexec, то сообщение динамического обмена данными (DDE) с указанным приложением IExplore и темой WWW_OpenURL передается всем окнам верхнего уровня на рабочем столе. Первое приложение, которое ответит на это сообщение, - это приложение, которое отправляет запрошенный URL-адрес. Если ни одно приложение не отвечает на это сообщение DDE, ShellExecute использует информацию, содержащуюся в подразделе shell \ open \ command, для запуска приложения. Затем он повторно передает сообщение DDE для перехода на запрошенный URL-адрес.
Похоже, у вас нет контроля над открытием нового окна. Какой бы браузер в настоящее время не работал, он может открывать его любым удобным для него способом.