易语言不知道怎么调用一个DLL的问题
刚刚在网上下载了一个DLL文件!DX后台模拟键盘输入的DLL,但是不知道怎么调用到易语言里面使用!README 这个TXT是说明文件
然手我在易语言新建一个DLL声明。
新建按钮事件,调用这个函数!
然后运行,提示这个
没找到,然后在网上下载了一个DLL函数查看器,发现没有这个函数!
而且这4个函数的参数都是0 没有传递参数! 大佬们,帮我看看怎么能让他跑起来!
附件为什么不能上传rar,不能上传啊!
说明文件TXT内容如下!
命令 dxkeydown(句柄,"按键")
第一次使用需要花费5秒钟来绑定游戏进程,之后就会很快,直接向dx发送数据
按键对应如下(来自directx文档): 比如要发送TAB按键,就用 plugin.dxkey.dxkeydown(h,"tab")
比如要发送~按键,就用 dxkeydown(h,"grave")
ESCAPE = $01;
{$EXTERNALSYM ESCAPE}
1 = $02;
{$EXTERNALSYM 1}
2 = $03;
{$EXTERNALSYM 2}
3 = $04;
{$EXTERNALSYM 3}
4 = $05;
{$EXTERNALSYM 4}
5 = $06;
{$EXTERNALSYM 5}
6 = $07;
{$EXTERNALSYM 6}
7 = $08;
{$EXTERNALSYM 7}
8 = $09;
{$EXTERNALSYM 8}
9 = $0A;
{$EXTERNALSYM 9}
0 = $0B;
{$EXTERNALSYM 0}
MINUS = $0C; (* - on main keyboard *)
{$EXTERNALSYM MINUS}
EQUALS = $0D;
{$EXTERNALSYM EQUALS}
BACK = $0E; (* backspace *)
{$EXTERNALSYM BACK}
TAB = $0F;
{$EXTERNALSYM TAB}
Q = $10;
{$EXTERNALSYM Q}
W = $11;
{$EXTERNALSYM W}
E = $12;
{$EXTERNALSYM E}
R = $13;
{$EXTERNALSYM R}
T = $14;
{$EXTERNALSYM T}
Y = $15;
{$EXTERNALSYM Y}
U = $16;
{$EXTERNALSYM U}
I = $17;
{$EXTERNALSYM I}
O = $18;
{$EXTERNALSYM O}
P = $19;
{$EXTERNALSYM P}
LBRACKET = $1A;
{$EXTERNALSYM LBRACKET}
RBRACKET = $1B;
{$EXTERNALSYM RBRACKET}
RETURN = $1C; (* Enter on main keyboard *)
{$EXTERNALSYM RETURN}
LCONTROL = $1D;
{$EXTERNALSYM LCONTROL}
A = $1E;
{$EXTERNALSYM A}
S = $1F;
{$EXTERNALSYM S}
D = $20;
{$EXTERNALSYM D}
F = $21;
{$EXTERNALSYM F}
G = $22;
{$EXTERNALSYM G}
H = $23;
{$EXTERNALSYM H}
J = $24;
{$EXTERNALSYM J}
K = $25;
{$EXTERNALSYM K}
L = $26;
{$EXTERNALSYM L}
SEMICOLON = $27;
{$EXTERNALSYM SEMICOLON}
APOSTROPHE = $28;
{$EXTERNALSYM APOSTROPHE}
GRAVE = $29; (* accent grave *)
{$EXTERNALSYM GRAVE}
LSHIFT = $2A;
{$EXTERNALSYM LSHIFT}
BACKSLASH = $2B;
{$EXTERNALSYM BACKSLASH}
Z = $2C;
{$EXTERNALSYM Z}
X = $2D;
{$EXTERNALSYM X}
C = $2E;
{$EXTERNALSYM C}
V = $2F;
{$EXTERNALSYM V}
B = $30;
{$EXTERNALSYM B}
N = $31;
{$EXTERNALSYM N}
M = $32;
{$EXTERNALSYM M}
COMMA = $33;
{$EXTERNALSYM COMMA}
PERIOD = $34; (* . on main keyboard *)
{$EXTERNALSYM PERIOD}
SLASH = $35; (* / on main keyboard *)
{$EXTERNALSYM SLASH}
RSHIFT = $36;
{$EXTERNALSYM RSHIFT}
MULTIPLY = $37; (* * on numeric keypad *)
{$EXTERNALSYM MULTIPLY}
LMENU = $38; (* left Alt *)
{$EXTERNALSYM LMENU}
SPACE = $39;
{$EXTERNALSYM SPACE}
CAPITAL = $3A;
{$EXTERNALSYM CAPITAL}
F1 = $3B;
{$EXTERNALSYM F1}
F2 = $3C;
{$EXTERNALSYM F2}
F3 = $3D;
{$EXTERNALSYM F3}
F4 = $3E;
{$EXTERNALSYM F4}
F5 = $3F;
{$EXTERNALSYM F5}
F6 = $40;
{$EXTERNALSYM F6}
F7 = $41;
{$EXTERNALSYM F7}
F8 = $42;
{$EXTERNALSYM F8}
F9 = $43;
{$EXTERNALSYM F9}
F10 = $44;
{$EXTERNALSYM F10}
NUMLOCK = $45;
{$EXTERNALSYM NUMLOCK}
SCROLL = $46; (* Scroll Lock *)
{$EXTERNALSYM SCROLL}
NUMPAD7 = $47;
{$EXTERNALSYM NUMPAD7}
NUMPAD8 = $48;
{$EXTERNALSYM NUMPAD8}
NUMPAD9 = $49;
{$EXTERNALSYM NUMPAD9}
SUBTRACT = $4A; (* - on numeric keypad *)
{$EXTERNALSYM SUBTRACT}
NUMPAD4 = $4B;
{$EXTERNALSYM NUMPAD4}
NUMPAD5 = $4C;
{$EXTERNALSYM NUMPAD5}
NUMPAD6 = $4D;
{$EXTERNALSYM NUMPAD6}
ADD = $4E; (* + on numeric keypad *)
{$EXTERNALSYM ADD}
NUMPAD1 = $4F;
{$EXTERNALSYM NUMPAD1}
NUMPAD2 = $50;
{$EXTERNALSYM NUMPAD2}
NUMPAD3 = $51;
{$EXTERNALSYM NUMPAD3}
NUMPAD0 = $52;
{$EXTERNALSYM NUMPAD0}
DECIMAL = $53; (* . on numeric keypad *)
{$EXTERNALSYM DECIMAL}
OEM_102 = $56; (* <> or \| on RT 102-key keyboard (Non-U.S.) *)
{$EXTERNALSYM OEM_102}
F11 = $57;
{$EXTERNALSYM F11}
F12 = $58;
{$EXTERNALSYM F12}
F13 = $64; (* (NEC PC98) *)
{$EXTERNALSYM F13}
F14 = $65; (* (NEC PC98) *)
{$EXTERNALSYM F14}
F15 = $66; (* (NEC PC98) *)
{$EXTERNALSYM F15}
KANA = $70; (* (Japanese keyboard) *)
{$EXTERNALSYM KANA}
ABNT_C1 = $73; (* /? on Brazilian keyboard *)
{$EXTERNALSYM ABNT_C1}
CONVERT = $79; (* (Japanese keyboard) *)
{$EXTERNALSYM CONVERT}
NOCONVERT = $7B; (* (Japanese keyboard) *)
{$EXTERNALSYM NOCONVERT}
YEN = $7D; (* (Japanese keyboard) *)
{$EXTERNALSYM YEN}
ABNT_C2 = $7E; (* Numpad . on Brazilian keyboard *)
{$EXTERNALSYM ABNT_C2}
NUMPADEQUALS = $8D; (* = on numeric keypad (NEC PC98) *)
{$EXTERNALSYM NUMPADEQUALS}
PREVTRACK = $90; (* Previous Track (CIRCUMFLEX on Japanese keyboard) *)
{$EXTERNALSYM PREVTRACK}
AT = $91; (* (NEC PC98) *)
{$EXTERNALSYM AT}
COLON = $92; (* (NEC PC98) *)
{$EXTERNALSYM COLON}
UNDERLINE = $93; (* (NEC PC98) *)
{$EXTERNALSYM UNDERLINE}
KANJI = $94; (* (Japanese keyboard) *)
{$EXTERNALSYM KANJI}
STOP = $95; (* (NEC PC98) *)
{$EXTERNALSYM STOP}
AX = $96; (* (Japan AX) *)
{$EXTERNALSYM AX}
UNLABELED = $97; (* (J3100) *)
{$EXTERNALSYM UNLABELED}
NEXTTRACK = $99; (* Next Track *)
{$EXTERNALSYM NEXTTRACK}
NUMPADENTER = $9C; (* Enter on numeric keypad *)
{$EXTERNALSYM NUMPADENTER}
RCONTROL = $9D;
{$EXTERNALSYM RCONTROL}
MUTE = $A0; (* Mute *)
{$EXTERNALSYM MUTE}
CALCULATOR = $A1; (* Calculator *)
{$EXTERNALSYM CALCULATOR}
PLAYPAUSE = $A2; (* Play / Pause *)
{$EXTERNALSYM PLAYPAUSE}
MEDIASTOP = $A4; (* Media Stop *)
{$EXTERNALSYM MEDIASTOP}
VOLUMEDOWN = $AE; (* Volume - *)
{$EXTERNALSYM VOLUMEDOWN}
VOLUMEUP = $B0; (* Volume + *)
{$EXTERNALSYM VOLUMEUP}
WEBHOME = $B2; (* Web home *)
{$EXTERNALSYM WEBHOME}
NUMPADCOMMA = $B3; (* , on numeric keypad (NEC PC98) *)
{$EXTERNALSYM NUMPADCOMMA}
DIVIDE = $B5; (* / on numeric keypad *)
{$EXTERNALSYM DIVIDE}
SYSRQ = $B7;
{$EXTERNALSYM SYSRQ}
RMENU = $B8; (* right Alt *)
{$EXTERNALSYM RMENU}
PAUSE = $C5; (* Pause *)
{$EXTERNALSYM PAUSE}
HOME = $C7; (* Home on arrow keypad *)
{$EXTERNALSYM HOME}
UP = $C8; (* UpArrow on arrow keypad *)
{$EXTERNALSYM UP}
PRIOR = $C9; (* PgUp on arrow keypad *)
{$EXTERNALSYM PRIOR}
LEFT = $CB; (* LeftArrow on arrow keypad *)
{$EXTERNALSYM LEFT}
RIGHT = $CD; (* RightArrow on arrow keypad *)
{$EXTERNALSYM RIGHT}
END = $CF; (* End on arrow keypad *)
{$EXTERNALSYM END}
DOWN = $D0; (* DownArrow on arrow keypad *)
{$EXTERNALSYM DOWN}
NEXT = $D1; (* PgDn on arrow keypad *)
{$EXTERNALSYM NEXT}
INSERT = $D2; (* Insert on arrow keypad *)
{$EXTERNALSYM INSERT}
DELETE = $D3; (* Delete on arrow keypad *)
{$EXTERNALSYM DELETE}
LWIN = $DB; (* Left Windows key *)
{$EXTERNALSYM LWIN}
RWIN = $DC; (* Right Windows key *)
{$EXTERNALSYM RWIN}
APPS = $DD; (* AppMenu key *)
{$EXTERNALSYM APPS}
POWER = $DE; (* System Power *)
{$EXTERNALSYM POWER}
SLEEP = $DF; (* System Sleep *)
{$EXTERNALSYM SLEEP}
WAKE = $E3; (* System Wake *)
{$EXTERNALSYM WAKE}
WEBSEARCH = $E5; (* Web Search *)
{$EXTERNALSYM WEBSEARCH}
WEBFAVORITES = $E6; (* Web Favorites *)
{$EXTERNALSYM WEBFAVORITES}
WEBREFRESH = $E7; (* Web Refresh *)
{$EXTERNALSYM WEBREFRESH}
WEBSTOP = $E8; (* Web Stop *)
{$EXTERNALSYM WEBSTOP}
WEBFORWARD = $E9; (* Web Forward *)
{$EXTERNALSYM WEBFORWARD}
WEBBACK = $EA; (* Web Back *)
{$EXTERNALSYM WEBBACK}
MYCOMPUTER = $EB; (* My Computer *)
{$EXTERNALSYM MYCOMPUTER}
MAIL = $EC; (* Mail *)
{$EXTERNALSYM MAIL}
MEDIASELECT = $ED; (* Media Select *)
{$EXTERNALSYM MEDIASELECT}
多开时请使用createobject("dxkey.kbd")创建多个对象,速度飞快哦
还有2个命令我测试用的,不推荐使用,sethandle(只是注入游戏进程)和dxkdown(只是发送键盘数据)
不防试试这个思路 斗战胜猴 发表于 2021-7-11 17:16
不防试试这个思路
键盘模拟输入时调用的系统API,对DX窗口是没反应的!!! 这是COM接口函数,先要注册dll到系统,然后创建obj调用 对象.创建()
对象.方法("") 用大漠吧方便点 本帖最后由 boxer 于 2021-7-12 09:56 编辑
dll发上来啊
是硬件级模拟吗? 易语言不知道怎么调用一个DLL的问题 songip02 发表于 2021-7-11 17:22
键盘模拟输入时调用的系统API,对DX窗口是没反应的!!!
那就试试这个好了
页:
[1]