gpt4 book ai didi

C# 如何通过给定的进程 ID 最小化另一个应用程序?

转载 作者:太空狗 更新时间:2023-10-29 22:36:15 28 4
gpt4 key购买 nike

我想通过进程 ID 最小化应用程序。我搜索了 SO 并找到了以下代码

private const int SW_MAXIMIZE = 3;
private const int SW_MINIMIZE = 6;
[DllImport("user32.dll", EntryPoint = "FindWindow")]
public static extern IntPtr FindWindowByCaption(IntPtr ZeroOnly, string lpWindowName);
[DllImport("user32.dll")]
[return: MarshalAs(UnmanagedType.Bool)]
static extern bool ShowWindow(IntPtr hWnd, int nCmdShow);

public void MinimizeWindow()
{
IntPtr hwnd = FindWindowByCaption(IntPtr.Zero, "NotePad");
ShowWindow(hwnd, SW_MINIMIZE);
}

但我不想按标题查找窗口,因为应用程序的标题会更改。我有一个给定的进程 ID,它来自另一个模块,该模块请求最小化具有给定进程 ID 的应用程序。

有这样的事情吗?

  public static extern IntPtr FindWindowByProcess(IntPtr ZeroOnly, int lpProcessID);

或者如果没有,无论如何都要四处走走?

最佳答案

只需使用 Process类。

Process.GetProcessById(YourProcessID).MainWindowHandle

关于C# 如何通过给定的进程 ID 最小化另一个应用程序?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/39458046/

28 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com