zoukankan      html  css  js  c++  java
  • 键盘自动机

    自己研究的自动的打字机

    效率大概在700字/min吧

    源码cpp:

        #include<iostream>
        #include<cstdio>
        #include<windows.h>
        using namespace std;
        void PutKeyState(char ch){
            if(ch=='    '){
                keybd_event(VK_TAB,(BYTE)0, 0 ,0);
                keybd_event(VK_TAB, (BYTE)0, KEYEVENTF_KEYUP,0);
                return;
            }
            if(ch==';'){
                keybd_event(186,(BYTE)0, 0 ,0);
                keybd_event(186, (BYTE)0, KEYEVENTF_KEYUP,0);
                return;
            }
            if(ch==','){
                keybd_event(188,(BYTE)0, 0 ,0);
                keybd_event(188, (BYTE)0, KEYEVENTF_KEYUP,0);
                return;
            }
            if(ch=='.'){
                keybd_event(190,(BYTE)0, 0 ,0);
                keybd_event(190, (BYTE)0, KEYEVENTF_KEYUP,0);
                return;
            }
            if(ch==39){
                keybd_event(222,(BYTE)0, 0 ,0);
                keybd_event(222, (BYTE)0, KEYEVENTF_KEYUP,0);
                return;
            }
            if(ch=='"'){
                keybd_event(VK_SHIFT,(BYTE)0, 0 ,0);
                Sleep(10);
                keybd_event(222,(BYTE)0, 0 ,0);
                keybd_event(222, (BYTE)0, KEYEVENTF_KEYUP,0);
                Sleep(10);
                keybd_event(VK_SHIFT, (BYTE)0, KEYEVENTF_KEYUP,0);
                return;
            }
            if(ch=='
    '){
                keybd_event(VK_RETURN,(BYTE)0, 0 ,0);
                keybd_event(VK_RETURN, (BYTE)0, KEYEVENTF_KEYUP,0);
                return;
            }
            if(ch==' '){
                keybd_event(VK_SPACE,(BYTE)0, 0 ,0);
                keybd_event(VK_SPACE, (BYTE)0, KEYEVENTF_KEYUP,0);
                return;
            }
            if(ch>='A' and ch<='Z'){
                keybd_event(VK_SHIFT,(BYTE)0, 0 ,0);
                Sleep(10);
                keybd_event(ch,(BYTE)0, 0 ,0);
                keybd_event(ch, (BYTE)0, KEYEVENTF_KEYUP,0);
                Sleep(10);
                keybd_event(VK_SHIFT, (BYTE)0, KEYEVENTF_KEYUP,0);
                return;
            }
            if(ch>='0' and ch<='9'){
                keybd_event(ch,(BYTE)0, 0 ,0);
                keybd_event(ch, (BYTE)0, KEYEVENTF_KEYUP,0);
                return;
            }
            if(ch>='a' and ch<='z'){
                keybd_event(ch-'a'+'A',(BYTE)0, 0 ,0);
                keybd_event(ch-'a'+'A', (BYTE)0, KEYEVENTF_KEYUP,0);
                return;
            }
            keybd_event(VK_SPACE,(BYTE)0, 0 ,0);
            keybd_event(VK_SPACE, (BYTE)0, KEYEVENTF_KEYUP,0);
        }
        char ch;
        int main(){
            freopen("get.txt","r",stdin);
            Sleep(10000);
            while(scanf("%c",&ch)!=EOF){
                PutKeyState(ch);
            }
            return 0;
    }
    
  • 相关阅读:
    spring security5.0源码导入idea
    汇编学习笔记(13)
    汇编学习笔记(12)
    汇编学习笔记(11)
    汇编学习笔记(10)-IO端口与指令
    汇编学习笔记(9)-汇编程序的基本语法(NASM)
    汇编学习笔记(8)-IDA+VMware调试MBR
    汇编学习笔记(7)-NASM环境搭建(nasm with vs2017)
    汇编学习笔记(6)-从MASM至NASM
    汇编学习笔记(4)-伪指令(MASM)
  • 原文地址:https://www.cnblogs.com/ezoihy/p/8899646.html
Copyright © 2011-2022 走看看