VB将键击发送到最小化的窗口/应用程序

时间:2012-04-26 01:49:20

标签: vb.net

我是vb中的complet noob我一直试图弄清楚如何将击键发送回我自己的应用程序,同时最小化/或专注于其他窗口。 我想我需要使用PostMessageA。我在论坛上看到它。但它对我来说就像中文。 我的目标是在100台电脑上运行这些小程序。他们只是在自己的应用程序中按一个键,一遍又一遍。 请有人帮助我。 感谢

我在想这样的事情

Private Declare Function PostMessage Lib "user32.dll" Alias "PostMessageA" (ByVal hwnd As Long,  ByVal wMsg As Long, ByVal wParam As Long, ByVal lParam As Long) As Long
Private Const WM_CHAR As Long = &H102

PostMessage("notepad", WM_CHAR, "T", 1)

作为测试。我做错了什么

1 个答案:

答案 0 :(得分:0)

有些事情,例如你在VB6论坛中找到了你的代码。从那时起,整数的大小发生了变化。 VB6中的Long等同于VB.Net中的Integersee this Msdn link)。第二个问题是,您正在向String提供PostMessage所需的窗口句柄。我建议您查看有关如何Send strings to another application by using Windows messages

的CodeProject文章

您的PostMessage声明应如下所示。

Private Declare Function PostMessage Lib "user32.dll" Alias "PostMessageA" (ByVal hwnd As Integer, ByVal wMsg As Integer, ByVal wParam As Integer, ByVal lParam As Integer) As Integer