C# 从任务栏中删除第三方应用程序
本文关键字:第三方 应用程序 删除 任务栏 | 更新日期: 2023-09-27 18:33:41
如何通过句柄从Windows任务栏中删除第三方应用程序?
我发现这个:使用 C# 包装器从任务栏中删除应用程序?
但它对我不起作用。它只将另一种样式(小 x 关闭,没有最大化/最小化按钮)设置为我选择的窗口(记事本)。
对此有什么想法吗?
编辑:我不想从任务栏中删除我的应用程序,我想通过句柄删除外部应用程序
如果你有窗口的句柄,你可以通过 Win32 API 调用ShowWindow()
。然后你可以做:
// Let the window disappear (even from taskbar)
ShowWindow(this.Handle, WindowShowStyle.Hide);
// Revive the window back to the user
ShowWindow(this.Handle, WindowShowStyle.ShowNoActivate);
所以从现在开始,你所有的问题都是获取你想要隐藏的窗口的句柄:
Process[] procs = Process.GetProcesses();
IntPtr hWnd;
foreach(Process proc in procs)
{
if ((hWnd = proc.MainWindowHandle) != IntPtr.Zero)
{
Console.WriteLine("{0} : {1}", proc.ProcessName, hWnd);
}
}
要从Windows任务栏中隐藏它,您只需要将ShowInTaskbar属性设置为false:
this.ShowInTaskbar = false;
至于窗口的移动,您可以使用spy++来检查窗口事件并识别它。
如何从Windows任务栏中删除应用程序?
this.ShowInTaskbar = false;
简单:
this.ShowInTaskbar = false;
至于表单移动:您可以使用布局事件下的Move
事件