windows - 使用 WM_SHOWWINDOW 代替 ShowWindow() 来显示窗口

标签 windows winapi sendmessage windows-messages

我正在尝试使用热键实用程序(或 NirCMD 等)的 SendMessage 功能来弹出隐藏窗口。例如,我可以通过发送 0x0010 (WM_CLOSE) 来关闭窗口,但是当我尝试发送 wParam 为 1 和 lParam 为 0 的 0x0018 (WM_SHOWWINDOW) 时,没有任何反应。

我环顾四周,有人提示 WM_SHOWWINDOW 不起作用的几个地方,他们很高兴地接受了改用 ShowWindow() 的建议。

但是我没有可用的 ShowWindow();我只能发送 Windows 消息。但是 ShowWindow() 并不神奇,它肯定可以通过 SendMessage-ing WM_SHOWWINDOW 或幕后的东西来工作。

如何通过发送消息让窗口显示自己?

谢谢。

最佳答案

试试这两条消息:

SendMessage(h,WM_SYSCOMMAND,SC_MINIMIZE,0);
SendMessage(h,WM_SYSCOMMAND,SC_RESTORE,0);

或者如果可以使用 3rd 方应用程序,请尝试 cmdow

关于windows - 使用 WM_SHOWWINDOW 代替 ShowWindow() 来显示窗口,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/3631470/

相关文章:

c++ - IVdsPack::创建卷

javascript - 在 Chrome 扩展中将(对象)数组从 popup.js 传递到 content.js

python - "subprocess.Popen().readline()"在多线程python中无法返回

c++ - 有什么方法可以通过 Windows 上的代码创建动态磁盘吗?

c - 为什么具有相同源和目标的 MoveFile 会随机失败?

c++ - DllMain Attach 和 Detach 过程中的使用限制

C# Skype4COM SendMessage 用户名

java - 从数据库中提取时间并在该特定时间发送消息

windows - 使用 Inno Setup 安装时应用程序不工作

c++ - Windows 上的写时复制文件映射