以下是我的代码,大家
#include<iostream>
#include<windows.h>
using namespace std;
int main() {
cout << "1、单独轰炸" << endl;
cout << "2、群发轰炸" << endl;
cout << "3、退出" << endl;
int i = 0;
cin >> i;
if (i == 1)
{
char name[30] = " ";
cout << "请输入您要输入的对象:";
cin >> name;
int times = 0;
cout << "请输入您要轰炸的次数:";
cin >> times;
HWND qqhwnd = FindWindowA(NULL, name); //定义一个变量,存放一个窗口的ID
for (int i = 0; i < times; i++)
{
//发送消息
//向某一个窗口发送消息
SendMessageA(qqhwnd, WM_PASTE, 0, 0); //粘贴
SendMessageA(qqhwnd, WM_KEYDOWN, VK_RETURN, 0); //按键回车
}
}
else if (i == 2)
{
//群体轰炸的功能
//得到qq联系人界面的窗口id
HWND qqhwnd = FindWindowA(NULL, "QQ");
while (1)
{
//1 选中主界面
SetForegroundWindow(qqhwnd); //设置
//2、TAB TAB
keybd_event(VK_TAB, 0, 0, 0); //按下TAB
Sleep(50);
keybd_event(VK_TAB, 0, 2, 0); //弹起TAB
Sleep(50);
keybd_event(VK_TAB, 0, 0, 0); //按下TAB
Sleep(50);
keybd_event(VK_TAB, 0, 2, 0); //弹起TAB
Sleep(50);
while (1)
{
keybd_event(VK_DOWN, 0, 0, 0); //按下下键
Sleep(50);
keybd_event(VK_DOWN, 0, 2, 0); //弹起下键
Sleep(50);
keybd_event(VK_RETURN, 0, 0, 0); //按下回车
Sleep(50);
keybd_event(VK_RETURN, 0, 2, 0); //弹起回车
Sleep(50);
if (qqhwnd != GetForegroundWindow())
break;
}
//4、粘贴
keybd_event(VK_CONTROL, 0, 0, 0); //按下ctrl
Sleep(50);
keybd_event('V', 0, 0, 0); //按下v
Sleep(50);
keybd_event('V', 0, 2, 0); //弹起v
Sleep(50);
keybd_event(VK_CONTROL, 0, 2, 0); //弹起ctrl
Sleep(50);
//5、发送
keybd_event(VK_RETURN, 0, 0, 0); //按下回车
Sleep(50);
keybd_event(VK_RETURN, 0, 2, 0); //弹起回车
Sleep(50);
//6、关闭对话框
keybd_event(VK_ESCAPE, 0, 0, 0); //按下esc
Sleep(50);
keybd_event(VK_ESCAPE, 0, 2, 0); //按下esc
Sleep(50);
//while(1)
// {
//1、选中主界面
//2、TAB TAB
//3、不断地按【回车和下键】,打开对话框
//4、粘贴
//5、发送
//6、关闭对话框
// }
}
}
return 0;
}
你这1里的代码比2里也少的太多了吧,既然2是好的,那你看看除了循环次数之外,1到底还少什么东西啊
你连SetForegroundWindow(qqhwnd);都没执行,窗体都没获得焦点,能粘进去吗