• 大小: 3KB
    文件类型: .py
    金币: 1
    下载: 0 次
    发布日期: 2021-05-16
  • 语言: Python
  • 标签: python  winio  

资源简介

利用python+rabird.winio模块实现驱动级模拟按键,可以做任何游戏脚本,驱动级基本没办法被检测。其中电脑需要安装winio驱动才能运行。

资源截图

代码片段和文件信息

import rabird.winio
import time
import atexit

# KeyBoard Commands
# Command port
KBC_KEY_CMD = 0x64
# Data port
KBC_KEY_DATA = 0x60

__winio = None

def __get_winio():
    global __winio

    if __winio is None:
            __winio = rabird.winio.WinIO()
            def __clear_winio():
                    global __winio
                    __winio = None
            atexit.register(__clear_winio)

    return __winio

def wait_for_buffer_empty():
    ‘‘‘
    Wait keyboard buffer empty
    ‘‘‘

    winio = __get_winio()

    dwRegVal = 0x02
    while (dwRegVal & 0x02):
            dwRegVal = winio.get_port_byte(KBC_KEY_CMD)

def key_down(scancode):
    winio = __get_winio()

    wait_for_buffer_empty();
    winio.set_port_byte(KBC_KEY_CMD 0xd2);
    wait_for_buffer_empty();
    winio.set_port_byte(KBC_KEY_DATA scancode)

def SPkey_down(scancode):
    winio = __get_winio()

    wait_for_buffer_empty();
    winio.set_port_byte(KBC_KEY_CMD 0xd2);
    wait_for_buffer_empty();
    winio.set_port_byte(KBC_KEY_DATA 0xe0)
    wait_for_buffer_empty();
    winio.set_port_byte(KBC_KEY_CMD 0xd2);
    wait_for_buffer_empty();
    winio.set_port_byte(KBC_KEY_DATA scancode)

def key_up(scancode):
    winio = __get_winio()

    wait_for_buffer_empty();
    winio.set_port

评论

共有 条评论