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;
    }
    
  • 相关阅读:
    hanlp在jdk11 maven8编译后在jdk8 报错
    Linux top命令输出到文件——持续输出某个进程的信息
    maven with depend
    解决mount时发生错误wrong fs type, bad option, bad superblock
    leetcode中 01背包问题相关汇总
    leetcode刷题总结901-950
    Xgboost如何处理缺失值/
    leetcode刷题总结851-900
    leetcode刷题总结801-850
    leetcode刷题总结751-800
  • 原文地址:https://www.cnblogs.com/ezoihy/p/8899646.html
Copyright © 2011-2022 走看看