想法
有个人跟我搁哪刷屏,于是我也刷,还挑衅我说 xxx永不投降!
不过这玩意真心刷的我手累,我就寻思着写个程序,输入指定内容,然后程序疯狂发送过去。
嘿嘿,这样解放双手和她刷个天黑
一开始的想法是好的,但是我发现,点击程序,然后就让某一个软件自动发送指定信息似乎有点没思路在我看来
- 要么这个软件提供一个api,让我可以通过这个api来完成这个功能
- 要么进程注入(这个没搞过,不会,但是有了解过,也不知道可不可以,尴尬了)
如果有其他方式欢迎指点(手动挠头)
方法
最后!我想到一个好办法!
程序模拟ctrl + v, 然后再模拟按下enter, 如此往复
只要我提前复制好内容,然后启动程序,然后我把我的焦点放在信息框中,程序开始!完美!
实现
有了想法,那么实现也很简单了,现在有了ai,这不是嘎嘎简单,直接让ai帮我们写!
不过很明显,ai的代码是有问题的,具体是什么问题有代码基础的兄弟可以自己看看
这里我放出改进后的代码
#include <windows.h>
// 模拟按下和释放指定的虚拟键码
void pressKey(WORD keyCode) {
keybd_event(VK_CONTROL, 0, 0, 0); // 按下按键
keybd_event('V', 0, 0, 0); // 按下按键
keybd_event(VK_CONTROL, 0, KEYEVENTF_KEYUP, 0); // 释放按键
keybd_event('V', 0, KEYEVENTF_KEYUP, 0); // 释放按键
}
int main() {
Sleep(5000); // 延时5秒,为了确保焦点位于目标窗口
int i;
for (i = 0; i < 100; i++)
{
// 执行粘贴操作(Ctrl+V)
pressKey(VK_CONTROL); // ctrl + c
// 模拟按下Enter键
keybd_event(VK_RETURN, 0, 0, 0);
keybd_event(VK_RETURN, 0, KEYEVENTF_KEYUP, 0);
Sleep(100);
}
return 0;
}
代码逻辑很简单
- 程序开始时延迟5秒,此时可以将我们的焦点放在信息框或者聊天框中
- 循环操作,粘贴然后enter发送内容,为了防止发送的太快,我这里每次发送延迟100毫秒
缺点就是只能发送单一的内容, 也就是粘贴板的内容。
但是可以的话,是不是可以通过程序来控制粘贴板的内容从而达到发送不同内容的效果呢?
哈哈,答案当然是可以的,有兴趣的小伙伴可以自己试试。