【问题标题】:Run chrome in minimized mode以最小化模式运行 chrome
【发布时间】:2014-10-15 11:06:42
【问题描述】:

我正在尝试使用 C# 打开 google chrome,但我不想在它打开时看到它。 我尝试添加

process.StartInfo.WindowStyle = ProcessWindowStyle.Minimized;

但它什么也没做。 我发现我可以使用参数来午餐 chrome,比如 --new-window 但在新窗口旁边,没有其他参数在工作。 我试图在屏幕上的其他位置吃午饭,但它也没有效果。我试图改变窗口大小,但它也没有做任何事情。

当我午餐时,我的 chrome 总是在最大化窗口中打开(尽管我没有向他传递这个参数),我不明白为什么它总是在最大化模式下运行,但我认为这就是我不能的原因移动它或重新调整窗口大小。

如何在不看到窗口的情况下运行 chrome?将其最小化甚至午餐将其移出屏幕会很棒。 谢谢你的帮助

【问题讨论】:

  • 我只是找到了我在回答中写的解决方案。

标签: c# google-chrome minimized


【解决方案1】:

首先确保chrome已完全加载(它的窗口已加载,我暂时不知道)然后使用此代码将其最小化。

private const int SW_SHOWMINIMIZED = 2;

[DllImport("user32.dll")]
private static extern bool ShowWindowAsync(IntPtr hWnd, int nCmdShow);

private void hideChrome()
{
    Process proc;
    foreach (Process process in Process.GetProcesses())
    {
        if (process.ProcessName.Equals("chrome"))
            proc = process;
    }

    IntPtr hWnd = proc.MainWindowHandle;
    if (!hWnd.Equals(IntPtr.Zero))
    {
        ShowWindowAsync(hWnd, SW_SHOWMINIMIZED);
    }
}

【讨论】:

  • 首先感谢您的帮助,它成功了。但是,我正在使用 chrome 并且我尝试隐藏浏览器的进程(而不是选项卡),显然对于我当前打开的所有 4 个窗口只有 1 个浏览器进程。当我使用此功能时,它会最小化最后一个具有焦点的功能。我怎样才能最小化第二个?
  • @user2462683:起初,我很抱歉我是在 Firefox 上完成的,在这里没有编辑就复制了它 :) 是的,你是对的,尝试 this 获取所有窗口处理程序。
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 2015-02-23
  • 2023-03-14
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2012-05-04
  • 1970-01-01
相关资源
最近更新 更多