4

我曾经ShellExecuteEx调用过iexplore.exe,每当我启动应用程序时,都会创建一个新的 Internet Explorer 实例,无论 Internet Explorer 是否已打开。

我想更改这一点,如果 Internet Explorer 的实例已经存在,我需要在该实例中打开一个新选项卡,其中包含我传递给 的地址ShExecInfo.lpParameters,因此无需创建新窗口。有没有办法做到这一点?请指教..

更新:在下面的答案中,我遇到了一个问题,当我将 lpFile 参数设置为“iexplore.exe”并将 lpParameters 设置为“www.google.com”时,会打开两个窗口。如果我忽略 lpfile 参数,那么下面的代码会在某些机器上打开默认浏览器。我只想打开 Internet Explorer。请帮忙..

int WINAPI WinMain ( HINSTANCE hInstance, HINSTANCE hPrevInstance, LPSTR lpCmdLine, int nCmdShow ) { 


 ShellExecute(0,L"open",L"iexplore.exe", L"http://www.google.com",0,SW_SHOWDEFAULT );       


 ShellExecute(0,L"open", L"iexplore.exe", L"http://www.yahoo.com",0,SW_SHOWDEFAULT );        

 return 0;

} 
4

1 回答 1

7

它适用于ShellExecute.

#include <stdio.h>
#include <tchar.h>
#include <Windows.h>


int _tmain(int argc, _TCHAR* argv[])
{
    ShellExecute(0,L"open",L"http://www.google.com",0,0,SW_SHOWDEFAULT );   
    ShellExecute(0,L"open",L"http://www.yahoo.com",0,0,SW_SHOWDEFAULT );    
    return 0;
}
于 2012-08-17T07:01:16.240 回答