gpt4 book ai didi

c# - Windows 如何从桌面快捷方式强制 "minimized"状态?

转载 作者:太空宇宙 更新时间:2023-11-03 10:37:12 25 4
gpt4 key购买 nike

我有一个旨在最小化到系统托盘的应用程序。没有问题。

我遇到的问题是,当我为该可执行文件设置桌面快捷方式并启动它时,我无法确定 Windows 正在做什么来强制最小化状态,例如:

enter image description here

我在表单的构造函数中放置了一些调试输出并通过快捷方式启动。我没有得到任何命令行参数,并且 WindowState 的检查结果为 Normal。然而,应用程序开始最小化到任务栏。

然而,这就是问题所在:我希望它开始最小化到系统托盘,就像表单在屏幕上并且用户将其最小化一样。当然,不是所有时候,只是在使用“最小化”快捷方式时,或者当用户单击表单上的“最小化”时。

编辑: 出于好奇...我的初始测试存在缺陷,因为我 checkin 了构造函数。将测试置于 Load 方法中会产生一个 Minimized 状态,然后我可以对此使用react并调用我的代码来执行“最小化到托盘”。

最佳答案

Windows 正在启动带有参数的进程以最小化主窗口。

在 C# 中,您可以通过设置 WindowStyle (MSDN) 来完成相同的操作在 ProcessStartInfo 中用于 Process.Start()

在本地世界中,您将使用 CreateProcess (MSDN) API 并传递一个 STARTUPINFO , 将 wShowWindow 设置为 SW_MINIMIZE

查询窗口状态,使用GetWindowInfo (MSDN) ,查看 dwStyle 并检查是否设置了 WS_MINIMIZE。在 C# 中,这应该在 Form.WindowState 中.

关于c# - Windows 如何从桌面快捷方式强制 "minimized"状态?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/27257808/

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