带来一个智障代码

写了一个智障代码,输入英文,就可以在画图(mspaint)上转成图像上的一个个像素。
以下是一个例子:Hello,world!会被画成这样:


代码如下( 很可能,不对,是几乎肯定不兼容,因为太智障。语言:C++):

#include<iostream>
#include<windows.h>
 
using namespace std;

int i;
string s;

void PressKey(WORD key)
{
    // 创建一个KEYBDINPUT结构体,用于描述一个键盘事件
    KEYBDINPUT keyboardInput = { 0 };

    // 设置要模拟的按键
    keyboardInput.wVk = key;

    // 创建一个INPUT结构体,用于描述一个用户输入事件
    INPUT input = { 0 };

    // 设置输入类型为键盘事件
    input.type = INPUT_KEYBOARD;

    // 设置键盘事件的详细信息
    input.ki = keyboardInput;

    // 模拟按键按下
    SendInput(1, &input, sizeof(input));

    // 设置按键为已释放
    input.ki.dwFlags = KEYEVENTF_KEYUP;

    // 模拟按键释放
    SendInput(1, &input, sizeof(input));
}

void KeyboardPush(int x){
    bool Lock=0;
    int Level=100;
    while(Level){
        if( x / Level || Lock ) {
            PressKey((char)(x / Level + '0'));
            Lock=1;
            //cout<<(char)(x / Level + '0')<<endl;
        }
        x %= Level;
        Level/=10;
    }
}

void MouseMove(int x,int y){
	SetCursorPos(x, y);//1380,800
}

void Click(){
	// 创建并发送鼠标左键按下消息
    INPUT input;
    ZeroMemory(&input, sizeof(INPUT));
    input.type = INPUT_MOUSE;
    input.mi.dwFlags = MOUSEEVENTF_LEFTDOWN;
    SendInput(1, &input, sizeof(INPUT));
    
    // 等待一段时间后再发送鼠标左键松开消息
    Sleep(100);
    input.mi.dwFlags = MOUSEEVENTF_LEFTUP;
    SendInput(1, &input, sizeof(INPUT));
}

int main() {
	getline(cin,s);
	Sleep(2000);
    // 获取当前活动窗口的句柄
    HWND hwnd = GetForegroundWindow();
    
    while(i<s.size()){
    	// 设置鼠标位置为指定坐标(x, y)
	    MouseMove(1004, 72);//1380,800
	    
	    Click();
	    
	    Sleep(100);//下一次点击 
	    
	    // 设置鼠标位置为指定坐标(x, y)
	    MouseMove(907, 475);//1380,800   907,508    907,541
	    
	    Click();//双击 
	    Click();
	    
	    Sleep(100);
	    
	    KeyboardPush( (int) ( s[ i ++ ] ) );
	    
	    Sleep(100);
	    
	    // 设置鼠标位置为指定坐标(x, y)
	    MouseMove(907, 508);//1380,800   907,508    907,541
	    
	    Click();//双击 
	    Click();
	    
	    Sleep(100);
	    
	    KeyboardPush( (int) ( s[ i ++ ] ) );
	    
	    Sleep(100);
	    
	    // 设置鼠标位置为指定坐标(x, y)
	    MouseMove(907, 541);//1380,800   907,508    907,541
	    
	    Click();//双击 
	    Click();
	    
	    Sleep(100);
	    
	    KeyboardPush( (int) ( s[ i ++ ] ) );
	    
	    Sleep(100);
	    
	    // 设置鼠标位置为指定坐标(x, y)
	    MouseMove(466, 568);//1380,800   907,508    907,541
	    
	    Click();//466,568确认 
	    
	    Sleep(100);
	    
	    // 设置鼠标位置为指定坐标(x, y)
	    MouseMove(10+8*i/3-8, 168);//1380,800   907,508    907,541
	    
	    Click();//绘画 
	    
	    Sleep(100);
	}
    
    return 0;
}

666