Files
wow/test_hw.py

63 lines
1.7 KiB
Python
Raw Permalink Normal View History

import sys
import os
import ctypes
from ctypes import *
import win32com.client
import time
# 路径配置
dll_path = os.path.abspath("ddl/wyhkm.dll")
print(f"测试 DLL: {dll_path}")
# 1. 注册并创建对象
try:
hkmdll = windll.LoadLibrary(dll_path)
hkmdll.DllInstall.argtypes = (c_long, c_longlong)
if hkmdll.DllInstall(1, 2) < 0:
print("注册失败!")
sys.exit(0)
wyhkm = win32com.client.Dispatch("wyp.hkm")
print(f"硬件对象已创建,版本: {hex(wyhkm.GetVersion())}")
except Exception as e:
print(f"初始化异常: {e}")
sys.exit(0)
# 2. 打开设备并配置模式 (使用已验证的 Index 0)
dev_id = wyhkm.SearchDevice(0x2612, 0x1701, 0)
if dev_id == -1 or not wyhkm.Open(dev_id, 0):
print("无法打开硬件设备")
sys.exit(0)
# 关键模式设置
wyhkm.SetMode(1, 1) # 键盘增强模式
wyhkm.SetMode(2, 1) # 鼠标仿真模式
wyhkm.SetKeyInterval(30, 50) # 设置合理的按键间隔
print(f"\n--- 硬件就绪 (ID: {dev_id}) ---")
print("请在 5 秒内切换到记事本进行按键测试...")
time.sleep(5)
# 3. 常用按键序列测试
test_keys = [
("方向键", ["W", "A", "S", "D"]),
("功能键", ["SPACE", "X", "B", "M", "TAB", "ESCAPE"]),
("数字键", ["1", "2", "3", "4", "5", "6", "7", "8", "9", "0"]),
("组合键测试", ["CTRL+C", "ALT+Z"])
]
for category, keys in test_keys:
print(f"\n正在测试 {category}: {keys}")
for k in keys:
print(f" 发送按键: {k}")
wyhkm.KeyPress(k)
time.sleep(0.5)
# 4. 鼠标同步测试
print("\n正在测试鼠标移动 (MoveR 100, 100)...")
wyhkm.MoveR(100, 100)
time.sleep(1)
wyhkm.Close()
print("\n所有常用按键测试完成!")