从winforms app打开同一浏览器窗口中的页面

时间:2009-02-09 15:58:05

标签: .net internet-explorer-6

我有一个.NET winforms程序,其中包含在系统默认浏览器窗口中启动特定网页的功能。

如果页面打开,则需要在用户的现有浏览器窗口中启动该页面。启动浏览器的当前方法总是创建一个新窗口:

Process p = new Process();
p.StartInfo.FileName = @"C:\path\to\default\browser.exe";
p.StartInfo.Arguments = "http://pageurl";
p.Start();

这个程序专门用于内部网,99%的用户使用IE6(很遗憾,我知道。)支持其他浏览器会很好,但不是必需的。

有什么建议吗? IE6的命令行参数很稀疏,似乎不支持这一点。

2 个答案:

答案 0 :(得分:1)

简单的答案是,你不能。

您正在催生一个与您的应用程序无关的新流程。您可以检查IExplore.EXE进程是否正在运行,并对应用程序窗口执行一些SENDKEYS,但这有点粗略。

您可以在WebBrowser控件中显示网站,但这完全不同。

答案 1 :(得分:1)

如果用户使用该浏览器页面该怎么办?你不想劫持它。现代浏览器足够聪明,可以在适当的时候创建新标签。