主页
搜索
最近更新
数据统计
赞助我们
系统公告
1
/
1
请查看完所有公告
全网唯一一个自动化、病毒、游戏教程!
最后更新于 2025-06-16 09:50:05
作者
deepthinks
分类
科技·工程
复制 Markdown
查看原文
更新内容
c++自动化、病毒、游戏教程! # 学前基础 在学习这几项非常牛的东西前,我们先要了解一些很重要的东西: ## 项目  这里,我用 Dev-c++ 编译器表示,首先,我们电击我们经常点击的“文件”,位于编译器左上角,电击整个目录最上面的“新建”,我们把鼠标移到我们编程经常用的“源代码”上面——好吧,源代码被冷落了,取代它的是做开发的码农经常点击的“项目”。 点进去以后,编译器弹出一个这样的画面:  我们选择 Basic 下面的 Windows Application ,一般,只有开发~~360安全卫士~~、~~病毒~~ 、自动化、爬虫的人才会点开 Windows Application 。 有时候你要 AI 生成一些游戏什么的代码,你放到源文件里是**编译不了的!** 记得一定要 `-std=c++11` ! # 自动化 ## 一、定义 **自动化**是指利用程序,使系统、设备或过程在无需或仅需**少量人工干预**的情况下,按照预设程序或规则**自主**运行,以完成任务或优化效率的技术与方法。其核心目标是减少**人力参与**、**提高效率**、**增强精确性**,并可能实现人类难以完成的任务。 (摘选于 deepseek ) ## 二、作用 - 工业自动化:机器人装配线、数控机床。 - 软件自动化:脚本处理数据、自动化测试。 - 智能自动化: AI 客服、自动驾驶。 ## 三、大纲 声明:自动化是一个炸药包,有什么责任不管我的事! 编一个自动化程序,你先要有想要做的东西,~~比如关注我的程序,拉黑某某某~~。然后就是编代码、调试、大功告成(公布)! **记得写在项目里面!** ## 四、框架 其实自动化非常简单,只要记住几行代码就行了。 1、头文件: ```cpp #include <bits/stdc++.h>//方便输出什么的 #include <windows.h>//几乎每个有关系统的函数都要用 ``` 2、点击鼠标左键函数: ```cpp void PressMouseLeftButton() { INPUT input={0};//定义输入结构 input.type=INPUT_MOUSE; input.mi.dwFlags=MOUSEEVENTF_LEFTDOWN;//按下左键 SendInput(1, &input, sizeof(INPUT));//发送输入事件 }//注意:这里只是按下了鼠标,还没有释放。 ``` 3、释放鼠标左键函数: ```cpp void ReleaseMouseLeftButton() { INPUT input={0};//定义输入结构 input.type=INPUT_MOUSE; input.mi.dwFlags=MOUSEEVENTF_LEFTUP; //释放左键 SendInput(1,&input,sizeof(INPUT));//发送输入事件 } ``` 4、按下并释放键盘某件: ```cpp void SimulateKeyPress(WORD vkCode)//此处填虚拟键码 { //按下部分 INPUT input={0}; input.type=INPUT_KEYBOARD; input.ki.wVk=vkCode; SendInput(1, &input, sizeof(INPUT));//按下键 Sleep(10);//延迟,方便被识别 //释放部分 input.ki.dwFlags = KEYEVENTF_KEYUP; SendInput(1, &input, sizeof(INPUT)); } ``` 注意:模拟键盘输入可能需要**管理员权限**,并且在某些应用程序(如安全软件或游戏)中可能**无法正常工作**,因为这些应用程序可能会拦截或忽略模拟的输入事件。还有,频繁或滥用模拟键盘输入可能会导致系统**不稳定或影响安全问题**,因此请谨慎使用这些技术。 5、同时按下一些键(这里是 $Ctrl + W $) ```cpp int x,y; SetCursorPos(x,y);//x和y你自己决定,这样才能选中网页,按下Ctrl+W。 PressMouseLeftButton();//需要写2号里面的函数 Sleep(10); ReleaseMouseLeftButton();//需要写3号里面的函数 //按下Ctrl键 INPUT input={0}; input.type=INPUT_KEYBOARD; input.ki.wVk=VK_CONTROL;//Ctrl的虚拟键码 SendInput(1,&input,sizeof(INPUT)); //按下W键 INPUT input2={0}; input2.type=INPUT_KEYBOARD; input2.ki.wVk='W'; SendInput(1,&input2,sizeof(INPUT)); //释放Ctrl键 INPUT inputUp={0}; inputUp.type=INPUT_KEYBOARD; inputUp.ki.wVk=VK_CONTROL;//Ctrl的虚拟键码 inputUp.ki.dwFlags=KEYEVENTF_KEYUP; SendInput(1,&inputUp,sizeof(INPUT)); //释放W键 INPUT inputUp2={0}; inputUp2.type=INPUT_KEYBOARD; inputUp2.ki.wVk='W'; inputUp2.ki.dwFlags=KEYEVENTF_KEYUP; SendInput(1,&inputUp2,sizeof(INPUT)); ``` 提示:如果要按下多个按键,以此类推。 6、按下鼠标右键函数: ```cpp void SimulateRightMouseButtonDown() { INPUT input={0}; input.type=INPUT_MOUSE; input.mi.dwFlags=MOUSEEVENTF_RIGHTDOWN;//右键按下 SendInput(1,&input,sizeof(INPUT)); } ``` 7、释放鼠标右键函数: ```cpp void SimulateRightMouseButtonUp() { INPUT input={0}; input.type=INPUT_MOUSE; input.mi.dwFlags=MOUSEEVENTF_RIGHTUP;//释放右键 SendInput(1,&input,sizeof(INPUT)); } ``` 8、移动鼠标: ```cpp SetCursorPos(x, y);//x、y是屏幕坐标 ``` 9、打开软件 ```cpp system("start chrome.exe);//可以改动“chrome.exe”,通过看软件属性你可以知道一个软件的名称。 ``` 11、打开网址 ```cpp system("start https://www.luogu.com.cn"); ``` 12、用特定软件打开某事物 ```cpp system("start chrome.exe https://www.luogu.com.cn"); ``` ## 四、调试 调试鼠标的屏幕坐标: ```cpp while(1) { POINT cursorPos; GetCursorPos(&cursorPos); cout << "x:" <<cursorPos.x<< ",y:"<<cursorPos.y; system("cls");//清屏 }//POINT是一个头文件自带的结构体,里面有x、y两个变量 ``` ## 五、写程序 给大家一个标准的自动化程序: ```cpp #include <bits/stdc++.h> #include <stdio.h> #include <pthread.h> #include <Windows.h> #include <cstdlib> #include <ctime> using namespace std; void PressMouseLeftButton() { INPUT input = {0}; input.type = INPUT_MOUSE; input.mi.dwFlags = MOUSEEVENTF_LEFTDOWN; SendInput(1, &input, sizeof(INPUT)); } void ReleaseMouseLeftButton() { INPUT input = {0}; input.type = INPUT_MOUSE; input.mi.dwFlags = MOUSEEVENTF_LEFTUP; SendInput(1, &input, sizeof(INPUT)); } int main() { system("start https://www.luogu.com.cn/user/1358016#main"); Sleep(3500); int x = 1180; int y = 394; SetCursorPos(x, y); PressMouseLeftButton(); ReleaseMouseLeftButton() ; Sleep(3000); SetCursorPos(x, y); PressMouseLeftButton(); ReleaseMouseLeftButton() ; INPUT input = {0}; input.type = INPUT_KEYBOARD; input.ki.wVk = VK_CONTROL; SendInput(1, &input, sizeof(INPUT)); INPUT input2 = {0}; input2.type = INPUT_KEYBOARD; input2.ki.wVk = 'W'; SendInput(1, &input2, sizeof(INPUT)); INPUT inputUp = {0}; inputUp.type = INPUT_KEYBOARD; inputUp.ki.wVk = VK_CONTROL; inputUp.ki.dwFlags = KEYEVENTF_KEYUP; SendInput(1, &inputUp, sizeof(INPUT)); INPUT inputUp2 = {0}; inputUp2.type = INPUT_KEYBOARD; inputUp2.ki.wVk = 'W'; inputUp2.ki.dwFlags = KEYEVENTF_KEYUP; SendInput(1, &inputUp2, sizeof(INPUT)); return 0; } ``` 提示:其中的Sleep是为了打开网址后的缓冲时间。 ## 六、总结
正在渲染内容...
点赞
0
收藏
0