将鼠标事件发送到另一个窗口,Win 7下的C#

时间:2010-07-16 23:29:29

标签: c# events winapi windows-7 mouse

有没有办法将鼠标事件发送到Window 7中的另一个窗口?
我曾经这样做过:
[DllImport("user32.dll", CharSet = CharSet.Auto, CallingConvention = CallingConvention.StdCall)] public static extern void mouse_event(long dwFlags, long dx, long dy, long cButtons, long dwExtraInfo);

但是这在Win7中似乎不再起作用了 有任何想法吗 ?

感谢。

3 个答案:

答案 0 :(得分:5)

不工作怎么样?

可能相关的一件事(因为你给出了很少的细节,这很难)是非高架(在UAC下)应用程序不允许与高架应用程序通信。因此,如果一个应用程序被提升而一个应用程序没有提升,你会说它“似乎不起作用”。但是你无法通过更改你使用的API来解决这个问题。

答案 1 :(得分:2)

答案 2 :(得分:-1)

user32.dll中的SendMessage:would do the trick

您可能还需要FindWindowWM constants

pinvoke.net对这类事情有好处。