如何在没有打开 IE 窗口的情况下在 C# 中打开多个 IE 选项卡?

发布于 2024-10-30 13:56:44 字数 480 浏览 0 评论 0原文

我需要在 C#(Windows 应用程序)中打开多个 IE 选项卡。下面是我的代码:

string[] pcList = txtInput.Text.Trim().Split(',');
foreach (string pc in pcList)
{
  if (pc.Trim() != "") 
  {
    System.Diagnostics.Process.Start("http://myCom/Lookup?type=ProductCode&name=" +   pc.Trim());
  }
}

如果默认浏览器是firefox,则没有问题。

如果默认浏览器是IE,打开一个IE窗口也是没有问题的。 将根据txtInput中的输入打开多个选项卡。

我遇到的问题是:如果默认浏览器是IE并且没有打开IE窗口,则只会打开一个IE窗口和一个选项卡。我不知道为什么会这样以及如何解决它。有人可以帮忙吗?

谢谢!

I need to open multiple IE tabs in C# (windows application). Below is my code:

string[] pcList = txtInput.Text.Trim().Split(',');
foreach (string pc in pcList)
{
  if (pc.Trim() != "") 
  {
    System.Diagnostics.Process.Start("http://myCom/Lookup?type=ProductCode&name=" +   pc.Trim());
  }
}

If the default browser is firefox, there is no problem.

If the default browser is IE, and one IE window was opened, there is no problem either.
Multiple tabs will be opened according to the input in txtInput.

The problem I'm having is: if the default browser is IE and no IE window was opened, only one IE window and one tab will be opened. I do not know why is that and how to fix it. Can anyone help?

Thanks!

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(2

赴月观长安 2024-11-06 13:56:44

这就是我为解决同样的问题所做的事情。

            Process internetBrowserProcess = new Process();

            ProcessStartInfo psiOjbect = new ProcessStartInfo("http://DefaultWebsiteOfmyCompany.com"); // You can also use "about:blank".

            internetBrowserProcess.StartInfo = psiOjbect;
            internetBrowserProcess.Start();
            Thread.Sleep(2000); //Need to wait a little till the slow IE browser opens up.

            foreach (string websiteUrl in Properties.Settings.Default.WebSiteURLs)
            {
                Process.Start(websiteUrl );
            }

This is what I did to get around the same problem.

            Process internetBrowserProcess = new Process();

            ProcessStartInfo psiOjbect = new ProcessStartInfo("http://DefaultWebsiteOfmyCompany.com"); // You can also use "about:blank".

            internetBrowserProcess.StartInfo = psiOjbect;
            internetBrowserProcess.Start();
            Thread.Sleep(2000); //Need to wait a little till the slow IE browser opens up.

            foreach (string websiteUrl in Properties.Settings.Default.WebSiteURLs)
            {
                Process.Start(websiteUrl );
            }
白龙吟 2024-11-06 13:56:44

您可以调用 Process.Start("url") 将打开浏览器(如果未运行),否则打开一个新选项卡(如果支持)

类似的问题:在 IE 中打开新选项卡

You can call a Process.Start("url") will open browser (if it is not running) otherwise Open a new Tab(if it supports it)

Similar SO question : Open new tab in IE

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文