10得票2回答
在哪里调用base.WndProc()或base.DefWndProc()?

我有一些关于重写Windows Form / NativeWindow的WndProc方法的问题。 WndProc和DefWndProc之间到底有什么区别(编辑:之前我认为它叫做“DefaultWndProc”)?我只能重写WndProc,但是我可以随时调用DefWndProc,那么DefW...

8得票2回答
如何控制电源按钮按下关机?

我正在开发一个类似于信息亭的应用程序,需要在按下电源按钮时控制PC的关机/重启。感谢这篇文章,我已经完成了90%的工作。 In control panel set the acpi power button press action to shutdown. Listen for the ...

8得票1回答
在父窗口中捕获子窗口消息的Win32方法

在我的Win32应用程序中,由第三方SDK创建了一个子窗口。窗口创建过程是透明的,我无法将WndProc方法与子窗口关联起来。我希望能够在父窗口中捕获子窗口消息。有什么方法可以做到这一点吗?非常感谢您的帮助。

7得票3回答
为什么Windows钩子无法接收某些消息?

微软不推荐使用DirectInput进行键盘和鼠标输入。因此,我编写了一个输入管理器类,该类使用SetWindowsHookEx钩入WndProc和GetMsg。尽管这些钩子看起来设置得很好,但它们似乎是各种问题的原因。 我的WndProc和GetMsg钩子都没有接收到实际WndProc接收...

7得票1回答
通过PostMessage发送/接收字符串

尽管已经有一些关于这个主题的资源在线上,但我仍然没有找到适合我的答案。 我希望在我的VB.net进程和C++进程之间实现完全的通信。我想要能够发送一个字符串到C++进程,并从C++进程接收一个字符串,但目前为止,我需要实现以下功能: 将一个字符串发送到C++进程,并处理它。 这会产生一些...

7得票5回答
C#表单移动停止事件

在C#中,是否有任何事件在窗体停止移动时触发。而不是在移动过程中触发。 如果没有相应的事件,是否可以通过WndProc来实现?

7得票3回答
如何在Windows窗体标题栏中绘制自定义按钮?

如何在窗体的标题栏旁边绘制自定义按钮,与最小化、最大化和关闭按钮并排显示? 我知道需要使用Win32 API调用并重写WndProc过程,但我一直没有找到一个可行的解决方案。 有人知道该怎么做吗?更具体地说,有人知道在Vista中如何实现这个功能吗?

7得票2回答
C#:如何通过窗体及其控件拖动窗体?

我使用以下代码来拖动一个无边框窗体,通过点击和拖动窗体本身。它可以工作,但是当你点击并拖动位于窗体上的控件时却不起作用。我需要能够在单击某些控件但不是其他控件时拖动它 - 拖动标签,但不是按钮和文本框。我该怎么做? protected override void WndProc(ref Me...

7得票1回答
钩取另一个应用程序的WndProc?

我有一个小问题,希望有人能帮忙解答。有没有办法钩入其他应用程序的WNDPROC?情况是我想在其他应用程序菜单栏中插入一个菜单,并为每个菜单项定义命令。我已经使用一些Win32 API函数(user32.dll)插入了具有菜单项的菜单,但我无法设置菜单项的命令,以便在单击时实际执行某些操作。通过...

7得票2回答
拦截单击或双击鼠标 - 只在双击时执行双击代码

我有一个情况,需要在表单上处理单击和双击事件。在两种情况下都需要加载一些内容,但是当发生双击时,我不希望执行与单击事件相关的代码。 是否有一种方法可以拦截鼠标点击并检查是双击还是单击,然后适当地执行正确的事件? 也许通过拦截窗口的WndProc之类的方式可以实现?