
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE wml PUBLIC "-//WAPFORUM//DTD WML 1.1//EN" "http://www.wapforum.org/DTD/wml_1.1.xml">
<wml>
	<head><meta forua="true" http-equiv="Cache-Control" content="max-age=0" /></head><card id="MainCard" title="&#x6B22;&#x8FCE;&#x5149;&#x4E34;"><p><a href="wap.asp">&#x6728;&#x5B50;&#x5C4B;</a><br/>&nbsp;</p><p><b>&#x6807;&#x9898;&#x3A;</b> &#x56;&#x42;&#x6A21;&#x62DF;&#x952E;&#x76D8;&#x8F93;&#x5165;&#x7684;&#x4E;&#x79CD;&#x65B9;&#x6CD5;</p><p><b>&#x4F5C;&#x8005;&#x3A;</b> &#x64;&#x6E;&#x61;&#x77;&#x6F;</p><p><b>&#x65E5;&#x671F;&#x3A;</b> &#x32;&#x30;&#x30;&#x39;&#x2D;&#x30;&#x39;&#x2D;&#x30;&#x32;&#x20;&#x30;&#x32;&#x3A;&#x33;&#x30;&#x20;&#x50;&#x4D;</p><p><b>&#x5206;&#x7C7B;&#x3A;</b> <a href="wap.asp?do=showLog&amp;cateID=16">&#x57;&#x69;&#x6E;&#x7F16;&#x7A0B;</a></p><p><b>&#x5185;&#x5BB9;&#x3A;</b> &#x952E;&#x76D8;&#x662F;&#x6211;&#x4EEC;&#x4F7F;&#x7528;&#x8BA1;&#x7B97;&#x673A;&#x7684;&#x4E00;&#x4E2A;&#x5F88;&#x91CD;&#x8981;&#x7684;&#x8F93;&#x5165;&#x8BBE;&#x5907;&#x4E86;&#xFF0C;&#x5373;&#x4F7F;&#x5728;&#x9F20;&#x6807;&#x5927;&#x884C;&#x5176;&#x9053;&#x7684;&#x4ECA;&#x5929;&#xFF0C;&#x5F88;&#x591A;&#x7A0B;&#x5E8F;&#x4F9D;&#x7136;&#x79BB;&#x4E0D;&#x5F00;&#x952E;&#x76D8;&#x6765;&#x64CD;&#x4F5C;&#x3002;&#x4F46;&#x662F;&#x6709;&#x65F6;&#x5019;&#xFF0C;&#x4E00;&#x4E9B;&#x91CD;&#x590D;&#x6027;&#x7684;&#xFF0C;&#x5F88;&#x7E41;&#x7410;&#x7684;&#x952E;&#x76D8;&#x64CD;&#x4F5C;&#x603B;&#x4F1A;&#x8BA9;&#x4EBA;&#x75B2;&#x60EB;&#xFF0C;&#x4E8E;&#x662F;&#x5C31;&#x6709;&#x4E86;&#x7528;&#x7A0B;&#x5E8F;&#x6765;&#x4EE3;&#x66FF;&#x4EBA;&#x4EEC;&#x6309;&#x952E;&#x7684;&#x65B9;&#x6CD5;&#xFF0C;&#x8FD9;&#x6837;&#x53EF;&#x4EE5;&#x628A;&#x5F88;&#x591A;&#x91CD;&#x590D;&#x6027;&#x7684;&#x952E;&#x76D8;&#x64CD;&#x4F5C;&#x4EA4;&#x7ED9;&#x7A0B;&#x5E8F;&#x6765;&#x6A21;&#x62DF;&#xFF0C;&#x7701;&#x4E86;&#x5F88;&#x591A;&#x7CBE;&#x529B;&#xFF0C;&#x6309;&#x952E;&#x7CBE;&#x7075;&#x5C31;&#x662F;&#x8FD9;&#x6837;&#x7684;&#x4E00;&#x4E2A;&#x8F6F;&#x4EF6;&#x3002;&#x90A3;&#x4E48;&#x6211;&#x4EEC;&#x600E;&#x6837;&#x624D;&#x80FD;&#x7528;VB&#x6765;&#x5199;&#x4E00;&#x4E2A;&#x7A0B;&#x5E8F;&#xFF0C;&#x8FBE;&#x5230;&#x4E0E;&#x6309;&#x952E;&#x7CBE;&#x7075;&#x7C7B;&#x4F3C;&#x7684;&#x529F;&#x80FD;&#x5462;&#xFF1F;&#x90A3;&#x5C31;&#x8BA9;&#x6211;&#x4EEC;&#x6765;&#x5148;&#x4E86;&#x89E3;&#x4E00;&#x4E0B;windows&#x4E2D;&#x54CD;&#x5E94;&#x952E;&#x76D8;&#x4E8B;&#x4EF6;&#x7684;&#x673A;&#x5236;&#x3002;&nbsp;&nbsp; <br/>&#x5F53;&#x7528;&#x6237;&#x6309;&#x4E0B;&#x952E;&#x76D8;&#x4E0A;&#x7684;&#x4E00;&#x4E2A;&#x952E;&#x65F6;&#xFF0C;&#x952E;&#x76D8;&#x5185;&#x7684;&#x82AF;&#x7247;&#x4F1A;&#x68C0;&#x6D4B;&#x5230;&#x8FD9;&#x4E2A;&#x52A8;&#x4F5C;&#xFF0C;&#x5E76;&#x628A;&#x8FD9;&#x4E2A;&#x4FE1;&#x53F7;&#x4F20;&#x9001;&#x5230;&#x8BA1;&#x7B97;&#x673A;&#x3002;&#x5982;&#x4F55;&#x533A;&#x522B;&#x662F;&#x54EA;&#x4E00;&#x4E2A;&#x952E;&#x88AB;&#x6309;&#x4E0B;&#x4E86;&#x5462;&#xFF1F;&#x952E;&#x76D8;&#x4E0A;&#x7684;&#x6240;&#x6709;&#x6309;&#x952E;&#x90FD;&#x6709;&#x4E00;&#x4E2A;&#x7F16;&#x7801;&#xFF0C;&#x79F0;&#x4F5C;&#x952E;&#x76D8;&#x626B;&#x63CF;&#x7801;&#x3002;&#x5F53;&#x4F60;&#x6309;&#x4E0B;&#x4E00;&#x4E2A;&#x952E;&#x65F6;&#xFF0C;&#x8FD9;&#x4E2A;&#x952E;&#x7684;&#x626B;&#x63CF;&#x7801;&#x5C31;&#x88AB;&#x4F20;&#x7ED9;&#x7CFB;&#x7EDF;&#x3002;&#x626B;&#x63CF;&#x7801;&#x662F;&#x8DDF;&#x5177;&#x4F53;&#x7684;&#x786C;&#x4EF6;&#x76F8;&#x5173;&#x7684;&#xFF0C;&#x540C;&#x4E00;&#x4E2A;&#x952E;&#xFF0C;&#x5728;&#x4E0D;&#x540C;&#x952E;&#x76D8;&#x4E0A;&#x7684;&#x626B;&#x63CF;&#x7801;&#x6709;&#x53EF;&#x80FD;&#x4E0D;&#x540C;&#x3002;&#x952E;&#x76D8;&#x63A7;&#x5236;&#x5668;&#x5C31;&#x662F;&#x5C06;&#x8FD9;&#x4E2A;&#x626B;&#x63CF;&#x7801;&#x4F20;&#x7ED9;&#x8BA1;&#x7B97;&#x673A;&#xFF0C;&#x7136;&#x540E;&#x4EA4;&#x7ED9;&#x952E;&#x76D8;&#x9A71;&#x52A8;&#x7A0B;&#x5E8F;&#x3002;&#x952E;&#x76D8;&#x9A71;&#x52A8;&#x7A0B;&#x5E8F;&#x4F1A;&#x5B8C;&#x6210;&#x76F8;&#x5173;&#x7684;&#x5DE5;&#x4F5C;&#xFF0C;&#x5E76;&#x628A;&#x8FD9;&#x4E2A;&#x626B;&#x63CF;&#x7801;&#x8F6C;&#x6362;&#x4E3A;&#x952E;&#x76D8;&#x865A;&#x62DF;&#x7801;&#x3002;&#x4EC0;&#x4E48;&#x662F;&#x865A;&#x62DF;&#x7801;&#x5462;&#xFF1F;&#x56E0;&#x4E3A;&#x626B;&#x63CF;&#x7801;&#x4E0E;&#x786C;&#x4EF6;&#x76F8;&#x5173;&#xFF0C;&#x4E0D;&#x5177;&#x6709;&#x901A;&#x7528;&#x6027;&#xFF0C;&#x4E3A;&#x4E86;&#x7EDF;&#x4E00;&#x952E;&#x76D8;&#x4E0A;&#x6240;&#x6709;&#x952E;&#x7684;&#x7F16;&#x7801;&#xFF0C;&#x4E8E;&#x662F;&#x5C31;&#x63D0;&#x51FA;&#x4E86;&#x865A;&#x62DF;&#x7801;&#x6982;&#x5FF5;&#x3002;&#x65E0;&#x8BBA;&#x4EC0;&#x4E48;&#x952E;&#x76D8;&#xFF0C;&#x540C;&#x4E00;&#x4E2A;&#x6309;&#x952E;&#x7684;&#x865A;&#x62DF;&#x7801;&#x603B;&#x662F;&#x76F8;&#x540C;&#x7684;&#xFF0C;&#x8FD9;&#x6837;&#x7A0B;&#x5E8F;&#x5C31;&#x53EF;&#x4EE5;&#x8BC6;&#x522B;&#x4E86;&#x3002;&#x7B80;&#x5355;&#x70B9;&#x8BF4;&#xFF0C;&#x865A;&#x62DF;&#x7801;&#x5C31;&#x662F;&#x6211;&#x4EEC;&#x7ECF;&#x5E38;&#x53EF;&#x4EE5;&#x770B;&#x5230;&#x7684;&#x50CF;VK_A,VK_B&#x8FD9;&#x6837;&#x7684;&#x5E38;&#x6570;&#xFF0C;&#x6BD4;&#x5982;&#x952E;A&#x7684;&#x865A;&#x62DF;&#x7801;&#x662F;65&#xFF0C;&#x5199;&#x6210;16&#x8FDB;&#x5236;&#x5C31;&#x662F;&amp;H41&#xFF0C;&#x6CE8;&#x610F;&#xFF0C;&#x4EBA;&#x4EEC;&#x7ECF;&#x5E38;&#x7528;16&#x8FDB;&#x5236;&#x6765;&#x8868;&#x793A;&#x865A;&#x62DF;&#x7801;&#x3002;&#x5F53;&#x952E;&#x76D8;&#x9A71;&#x52A8;&#x7A0B;&#x5E8F;&#x628A;&#x626B;&#x63CF;&#x7801;&#x8F6C;&#x6362;&#x4E3A;&#x865A;&#x62DF;&#x7801;&#x540E;&#xFF0C;&#x4F1A;&#x628A;&#x8FD9;&#x4E2A;&#x952E;&#x76D8;&#x64CD;&#x4F5C;&#x7684;&#x626B;&#x63CF;&#x7801;&#x548C;&#x865A;&#x62DF;&#x7801;&#x8FD8;&#x6709;&#x5176;&#x5B83;&#x4FE1;&#x606F;&#x4E00;&#x8D77;&#x4F20;&#x9012;&#x7ED9;&#x64CD;&#x4F5C;&#x7CFB;&#x7EDF;&#x3002;&#x7136;&#x540E;&#x64CD;&#x4F5C;&#x7CFB;&#x7EDF;&#x5219;&#x4F1A;&#x628A;&#x8FD9;&#x4E9B;&#x4FE1;&#x606F;&#x5C01;&#x88C5;&#x5728;&#x4E00;&#x4E2A;&#x6D88;&#x606F;&#x4E2D;&#xFF0C;&#x5E76;&#x628A;&#x8FD9;&#x4E2A;&#x952E;&#x76D8;&#x6D88;&#x606F;&#x63D2;&#x5165;&#x5230;&#x6D88;&#x606F;&#x5217;&#x961F;&#x3002;&#x6700;&#x540E;&#xFF0C;&#x8981;&#x662F;&#x4E0D;&#x51FA;&#x610F;&#x5916;&#x7684;&#x8BDD;&#xFF0C;&#x8FD9;&#x4E2A;&#x952E;&#x76D8;&#x6D88;&#x606F;&#x6700;&#x7EC8;&#x4F1A;&#x88AB;&#x9001;&#x5230;&#x5F53;&#x524D;&#x7684;&#x6D3B;&#x52A8;&#x7A97;&#x53E3;&#x90A3;&#x91CC;&#xFF0C;&#x6D3B;&#x52A8;&#x7A97;&#x53E3;&#x6240;&#x5728;&#x7684;&#x5E94;&#x7528;&#x7A0B;&#x5E8F;&#x63A5;&#x6536;&#x5230;&#x8FD9;&#x4E2A;&#x6D88;&#x606F;&#x540E;&#xFF0C;&#x5C31;&#x77E5;&#x9053;&#x952E;&#x76D8;&#x4E0A;&#x54EA;&#x4E2A;&#x952E;&#x88AB;&#x6309;&#x4E0B;&#xFF0C;&#x4E5F;&#x5C31;&#x53EF;&#x4EE5;&#x51B3;&#x5B9A;&#x8BE5;&#x4F5C;&#x51FA;&#x4EC0;&#x4E48;&#x54CD;&#x5E94;&#x7ED9;&#x7528;&#x6237;&#x4E86;&#x3002;&#x8FD9;&#x4E2A;&#x8FC7;&#x7A0B;&#x53EF;&#x4EE5;&#x7B80;&#x5355;&#x7684;&#x5982;&#x4E0B;&#x8868;&#x793A;&#xFF1A; <br/>&nbsp;&nbsp;<br/>&#x7528;&#x6237;&#x6309;&#x4E0B;&#x6309;&#x952E;-----&#x952E;&#x76D8;&#x9A71;&#x52A8;&#x7A0B;&#x5E8F;&#x5C06;&#x6B64;&#x4E8B;&#x4EF6;&#x4F20;&#x9012;&#x7ED9;&#x64CD;&#x4F5C;&#x7CFB;&#x7EDF;-----&#x64CD;&#x4F5C;&#x7CFB;&#x7EDF;&#x5C06;&#x952E;&#x76D8;&#x4E8B;&#x4EF6;&#x63D2;&#x5165;&#x6D88;&#x606F;&#x961F;&#x5217;-----&#x952E;&#x76D8;&#x6D88;&#x606F;&#x88AB;&#x53D1;&#x9001;&#x5230;&#x5F53;&#x524D;&#x6D3B;&#x52A8;&#x7A97;&#x53E3; <br/>&nbsp;&nbsp;<br/>&#x660E;&#x767D;&#x4E86;&#x8FD9;&#x4E2A;&#x8FC7;&#x7A0B;&#xFF0C;&#x6211;&#x4EEC;&#x5C31;&#x53EF;&#x4EE5;&#x7F16;&#x7A0B;&#x5B9E;&#x73B0;&#x5728;&#x5176;&#x4E2D;&#x7684;&#x67D0;&#x4E2A;&#x73AF;&#x8282;&#x6765;&#x6A21;&#x62DF;&#x952E;&#x76D8;&#x64CD;&#x4F5C;&#x4E86;&#x3002;&#x5728;VB&#x4E2D;&#xFF0C;&#x6709;&#x591A;&#x79CD;&#x65B9;&#x6CD5;&#x53EF;&#x4EE5;&#x5B9E;&#x73B0;&#x952E;&#x76D8;&#x6A21;&#x62DF;&#xFF0C;&#x6211;&#x4EEC;&#x5C31;&#x4ECB;&#x7ECD;&#x51E0;&#x79CD;&#x6BD4;&#x8F83;&#x5178;&#x578B;&#x7684;&#x3002;&nbsp;&nbsp; <br/> <br/>1.&#x5C40;&#x90E8;&#x7EA7;&#x6A21;&#x62DF;<br/>&nbsp;&nbsp;&nbsp;&nbsp;<br/>&#x4ECE;&#x4E0A;&#x9762;&#x7684;&#x6D41;&#x7A0B;&#x53EF;&#x4EE5;&#x770B;&#x51FA;&#xFF0C;&#x952E;&#x76D8;&#x4E8B;&#x4EF6;&#x662F;&#x6700;&#x7EC8;&#x88AB;&#x9001;&#x5230;&#x6D3B;&#x52A8;&#x7A97;&#x53E3;&#xFF0C;&#x7136;&#x540E;&#x624D;&#x5F15;&#x8D77;&#x76EE;&#x6807;&#x7A0B;&#x5E8F;&#x54CD;&#x5E94;&#x7684;&#x3002;&#x90A3;&#x4E48;&#x6700;&#x76F4;&#x63A5;&#x7684;&#x6A21;&#x62DF;&#x65B9;&#x6CD5;&#x5C31;&#x662F;&#xFF1A;&#x76F4;&#x63A5;&#x4F2A;&#x9020;&#x4E00;&#x4E2A;&#x952E;&#x76D8;&#x6D88;&#x606F;&#x53D1;&#x7ED9;&#x76EE;&#x6807;&#x7A0B;&#x5E8F;&#x3002;&#x54C8;&#x54C8;&#xFF0C;&#x8FD9;&#x5B9E;&#x5728;&#x662F;&#x5F88;&#x7B80;&#x5355;&#xFF0C;windows&#x63D0;&#x4F9B;&#x4E86;&#x51E0;&#x4E2A;&#x8FD9;&#x6837;&#x7684;API&#x51FD;&#x6570;&#x53EF;&#x4EE5;&#x5B9E;&#x73B0;&#x76F4;&#x63A5;&#x5411;&#x76EE;&#x6807;&#x7A0B;&#x5E8F;&#x53D1;&#x9001;&#x6D88;&#x606F;&#x7684;&#x529F;&#x80FD;&#xFF0C;&#x5E38;&#x7528;&#x7684;&#x6709;SendMessage&#x548C;PostMessage&#xFF0C;&#x5B83;&#x4EEC;&#x7684;&#x533A;&#x522B;&#x662F;PostMessage&#x51FD;&#x6570;&#x76F4;&#x63A5;&#x628A;&#x6D88;&#x606F;&#x4ECD;&#x7ED9;&#x76EE;&#x6807;&#x7A0B;&#x5E8F;&#x5C31;&#x4E0D;&#x7BA1;&#x4E86;&#xFF0C;&#x800C;SendMessage&#x628A;&#x6D88;&#x606F;&#x53D1;&#x51FA;&#x53BB;&#x540E;&#xFF0C;&#x8FD8;&#x8981;&#x7B49;&#x5F85;&#x76EE;&#x6807;&#x7A0B;&#x5E8F;&#x8FD4;&#x56DE;&#x4E9B;&#x4EC0;&#x4E48;&#x4E1C;&#x897F;&#x624D;&#x597D;&#x3002;&#x8FD9;&#x91CC;&#x8981;&#x6CE8;&#x610F;&#x7684;&#x662F;&#xFF0C;&#x6A21;&#x62DF;&#x952E;&#x76D8;&#x6D88;&#x606F;&#x4E00;&#x5B9A;&#x8981;&#x7528;PostMessage&#x51FD;&#x6570;&#x624D;&#x597D;&#xFF0C;&#x7528;SendMessage&#x662F;&#x4E0D;&#x6B63;&#x786E;&#x7684;(&#x56E0;&#x4E3A;&#x6A21;&#x62DF;&#x952E;&#x76D8;&#x6D88;&#x606F;&#x662F;&#x4E0D;&#x9700;&#x8981;&#x8FD4;&#x56DE;&#x503C;&#x7684;&#xFF0C;&#x4E0D;&#x7136;&#x76EE;&#x6807;&#x7A0B;&#x5E8F;&#x4F1A;&#x6CA1;&#x53CD;&#x5E94;)&#xFF0C;&#x5207;&#x8BB0;&#x5207;&#x8BB0;&#xFF01;PostMessage&#x51FD;&#x6570;&#x7684;VB&#x58F0;&#x660E;&#x5982;&#x4E0B;&#xFF1A;<br/>&nbsp;&nbsp; <br/>&#x590D;&#x5236;&#x5185;&#x5BB9;&#x5230;&#x526A;&#x8D34;&#x677F; &#x7A0B;&#x5E8F;&#x4EE3;&#x7801;Declare Function PostMessage Lib &#34;user32&#34; Alias &#34;PostMessageA&#34; (ByVal hwnd As Long, ByVal wMsg As Long, ByVal wParam As Long, lParam As Any) As Long<br/>&#x53C2;&#x6570;hwnd&nbsp;&nbsp; &#x662F;&#x4F60;&#x8981;&#x53D1;&#x9001;&#x6D88;&#x606F;&#x7684;&#x76EE;&#x6807;&#x7A0B;&#x5E8F;&#x4E0A;&#x67D0;&#x4E2A;&#x63A7;&#x4EF6;&#x7684;&#x53E5;&#x67C4;&#xFF0C;&#x53C2;&#x6570;wMsg&nbsp;&nbsp; &#x662F;&#x6D88;&#x606F;&#x7684;&#x7C7B;&#x578B;&#xFF0C;&#x8868;&#x793A;&#x4F60;&#x8981;&#x53D1;&#x9001;&#x4EC0;&#x4E48;&#x6837;&#x7684;&#x6D88;&#x606F;&#xFF0C;&#x6700;&#x540E;wParam&nbsp;&nbsp; &#x548C;lParam&nbsp;&nbsp; &#x8FD9;&#x4E24;&#x4E2A;&#x53C2;&#x6570;&#x662F;&#x968F;&#x6D88;&#x606F;&#x9644;&#x52A0;&#x7684;&#x6570;&#x636E;&#xFF0C;&#x5177;&#x4F53;&#x5185;&#x5BB9;&#x8981;&#x7531;&#x6D88;&#x606F;&#x51B3;&#x5B9A;&#x3002;&nbsp;&nbsp; <br/>&#x518D;&#x6765;&#x770B;&#x770B;wMsg&nbsp;&nbsp; &#x8FD9;&#x4E2A;&#x53C2;&#x6570;&#xFF0C;&#x8981;&#x6A21;&#x62DF;&#x6309;&#x952E;&#x5C31;&#x9760;&#x8FD9;&#x4E2A;&#x4E86;&#x3002;&#x952E;&#x76D8;&#x6D88;&#x606F;&#x5E38;&#x7528;&#x7684;&#x6709;&#x5982;&#x4E0B;&#x51E0;&#x4E2A;&#xFF1A;&nbsp;&nbsp; <br/>WM_KEYDOWN&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; &#x8868;&#x793A;&#x4E00;&#x4E2A;&#x666E;&#x901A;&#x952E;&#x88AB;&#x6309;&#x4E0B;&nbsp;&nbsp; <br/>WM_KEYUP&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; &#x8868;&#x793A;&#x4E00;&#x4E2A;&#x666E;&#x901A;&#x952E;&#x88AB;&#x91CA;&#x653E;&nbsp;&nbsp; <br/>WM_SYSKEYDOWN&nbsp;&nbsp;&nbsp;&nbsp; &#x8868;&#x793A;&#x4E00;&#x4E2A;&#x7CFB;&#x7EDF;&#x952E;&#x88AB;&#x6309;&#x4E0B;&#xFF0C;&#x6BD4;&#x5982;Alt&#x952E;&nbsp;&nbsp; <br/>WM_SYSKEYUP&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; &#x8868;&#x793A;&#x4E00;&#x4E2A;&#x7CFB;&#x7EDF;&#x952E;&#x88AB;&#x91CA;&#x653E;&#xFF0C;&#x6BD4;&#x5982;Alt&#x952E;&nbsp;&nbsp; <br/>&#x5982;&#x679C;&#x4F60;&#x786E;&#x5B9A;&#x8981;&#x53D1;&#x9001;&#x4EE5;&#x4E0A;&#x51E0;&#x4E2A;&#x952E;&#x76D8;&#x6D88;&#x606F;&#xFF0C;&#x90A3;&#x4E48;&#x518D;&#x6765;&#x770B;&#x770B;&#x5982;&#x4F55;&#x786E;&#x5B9A;&#x952E;&#x76D8;&#x6D88;&#x606F;&#x4E2D;&#x7684;wParam&nbsp;&nbsp; &#x548C;lParam&nbsp;&nbsp; &#x8FD9;&#x4E24;&#x4E2A;&#x53C2;&#x6570;&#x3002;&#x5728;&#x4E00;&#x4E2A;&#x952E;&#x76D8;&#x6D88;&#x606F;&#x4E2D;&#xFF0C;wParam&nbsp;&nbsp; &#x53C2;&#x6570;&#x7684;&#x542B;&#x4E49;&#x8F83;&#x7B80;&#x5355;&#xFF0C;&#x5B83;&#x8868;&#x793A;&#x4F60;&#x8981;&#x53D1;&#x9001;&#x7684;&#x952E;&#x76D8;&#x4E8B;&#x4EF6;&#x7684;&#x6309;&#x952E;&#x865A;&#x62DF;&#x7801;&#xFF0C;&#x6BD4;&#x5982;&#x4F60;&#x8981;&#x5BF9;&#x76EE;&#x6807;&#x7A0B;&#x5E8F;&#x6A21;&#x62DF;&#x6309;&#x4E0B;A&#x952E;&#xFF0C;&#x90A3;&#x4E48;wParam&nbsp;&nbsp; &#x53C2;&#x6570;&#x7684;&#x503C;&#x5C31;&#x8BBE;&#x4E3A;VK_A&nbsp;&nbsp; ,&#x81F3;&#x4E8E;lParam&nbsp;&nbsp; &#x8FD9;&#x4E2A;&#x53C2;&#x6570;&#x5C31;&#x6BD4;&#x8F83;&#x590D;&#x6742;&#x4E86;&#xFF0C;&#x56E0;&#x4E3A;&#x5B83;&#x5305;&#x542B;&#x4E86;&#x591A;&#x4E2A;&#x4FE1;&#x606F;&#xFF0C;&#x4E00;&#x822C;&#x53EF;&#x4EE5;&#x628A;&#x5B83;&#x8BBE;&#x4E3A;0&#xFF0C;&#x4F46;&#x662F;&#x5982;&#x679C;&#x4F60;&#x60F3;&#x8981;&#x4F60;&#x7684;&#x6A21;&#x62DF;&#x66F4;&#x771F;&#x5B9E;&#x4E00;&#x4E9B;&#xFF0C;&#x90A3;&#x4E48;&#x5EFA;&#x8BAE;&#x4F60;&#x8FD8;&#x662F;&#x8BBE;&#x7F6E;&#x4E00;&#x4E0B;&#x8FD9;&#x4E2A;&#x53C2;&#x6570;&#x3002;&#x90A3;&#x4E48;&#x6211;&#x4EEC;&#x5C31;&#x8BE6;&#x7EC6;&#x4E86;&#x89E3;&#x4E00;&#x4E0B;lParam&#x5427;&#x3002;lParam&nbsp;&nbsp; &#x662F;&#x4E00;&#x4E2A;long&#x7C7B;&#x578B;&#x7684;&#x53C2;&#x6570;&#xFF0C;&#x5B83;&#x5728;&#x5185;&#x5B58;&#x4E2D;&#x5360;4&#x4E2A;&#x5B57;&#x8282;&#xFF0C;&#x5199;&#x6210;&#x4E8C;&#x8FDB;&#x5236;&#x5C31;&#x662F;00000000&nbsp;&nbsp; 00000000&nbsp;&nbsp; 00000000&nbsp;&nbsp; 00000000&nbsp;&nbsp;&nbsp;&nbsp; &#x4E00;&#x5171;&#x662F;32&#x4F4D;&#xFF0C;&#x6211;&#x4EEC;&#x4ECE;&#x53F3;&#x5411;&#x5DE6;&#x6570;&#xFF0C;&#x5047;&#x8BBE;&#x6700;&#x53F3;&#x8FB9;&#x90A3;&#x4F4D;&#x4E3A;&#x7B2C;0&#x4F4D;(&#x6CE8;&#x610F;&#x662F;&#x4ECE;0&#x800C;&#x4E0D;&#x662F;&#x4ECE;1&#x5F00;&#x59CB;&#x8BA1;&#x6570;)&#xFF0C;&#x6700;&#x5DE6;&#x8FB9;&#x7684;&#x5C31;&#x662F;&#x7B2C;31&#x4F4D;&#xFF0C;&#x90A3;&#x4E48;&#x8BE5;&#x53C2;&#x6570;&#x7684;&#x7684;0-15&#x4F4D;&#x8868;&#x793A;&#x952E;&#x7684;&#x53D1;&#x9001;&#x6B21;&#x6570;&#x7B49;&#x6269;&#x5C55;&#x4FE1;&#x606F;&#xFF0C;16-23&#x4F4D;&#x4E3A;&#x6309;&#x952E;&#x7684;&#x626B;&#x63CF;&#x7801;&#xFF0C;24-31&#x4F4D;&#x8868;&#x793A;&#x662F;&#x6309;&#x4E0B;&#x952E;&#x8FD8;&#x662F;&#x91CA;&#x653E;&#x952E;&#x3002;&#x5927;&#x5BB6;&#x4E00;&#x822C;&#x4E60;&#x60EF;&#x5199;&#x6210;16&#x8FDB;&#x5236;&#x7684;&#xFF0C;&#x90A3;&#x4E48;&#x5C31;&#x5E94;&#x8BE5;&#x662F;&amp;H00&nbsp;&nbsp; 00&nbsp;&nbsp; 00&nbsp;&nbsp; 00&nbsp;&nbsp; &#xFF0C;&#x7B2C;0-15&#x4F4D;&#x4E00;&#x822C;&#x4E3A;&amp;H0001&#xFF0C;&#x5982;&#x679C;&#x662F;&#x6309;&#x4E0B;&#x952E;&#xFF0C;&#x90A3;&#x4E48;24-31&#x4F4D;&#x4E3A;&amp;H00&#xFF0C;&#x91CA;&#x653E;&#x952E;&#x5219;&#x4E3A;&amp;HC0,&#x90A3;&#x4E48;16-23&#x4F4D;&#x7684;&#x626B;&#x63CF;&#x7801;&#x600E;&#x4E48;&#x4F1A;&#x5F97;&#x5462;&#xFF1F;&#x8FD9;&#x9700;&#x8981;&#x7528;&#x5230;&#x4E00;&#x4E2A;API&#x51FD;&#x6570;MapVirtualKey&#xFF0C;&#x8FD9;&#x4E2A;&#x51FD;&#x6570;&#x53EF;&#x4EE5;&#x5C06;&#x865A;&#x62DF;&#x7801;&#x8F6C;&#x6362;&#x4E3A;&#x626B;&#x63CF;&#x7801;&#xFF0C;&#x6216;&#x5C06;&#x626B;&#x63CF;&#x7801;&#x8F6C;&#x6362;&#x4E3A;&#x865A;&#x62DF;&#x7801;&#xFF0C;&#x8FD8;&#x53EF;&#x4EE5;&#x628A;&#x865A;&#x62DF;&#x7801;&#x8F6C;&#x6362;&#x4E3A;&#x5BF9;&#x5E94;&#x5B57;&#x7B26;&#x7684;ASCII&#x7801;&#x3002;&#x5B83;&#x7684;VB&#x58F0;&#x660E;&#x5982;&#x4E0B;&#xFF1A;<br/>&#x590D;&#x5236;&#x5185;&#x5BB9;&#x5230;&#x526A;&#x8D34;&#x677F; &#x7A0B;&#x5E8F;&#x4EE3;&#x7801;Declare Function MapVirtualKey Lib &#34;user32&#34; Alias &#34;MapVirtualKeyA&#34; (ByVal wCode As Long, ByVal wMapType As Long) As Long<br/>&#x53C2;&#x6570;wCode&nbsp;&nbsp; &#x8868;&#x793A;&#x5F85;&#x8F6C;&#x6362;&#x7684;&#x7801;&#xFF0C;&#x53C2;&#x6570;wMapType&nbsp;&nbsp; &#x8868;&#x793A;&#x4ECE;&#x4EC0;&#x4E48;&#x8F6C;&#x6362;&#x4E3A;&#x4EC0;&#x4E48;&#xFF0C;&#x5982;&#x679C;&#x662F;&#x865A;&#x62DF;&#x7801;&#x8F6C;&#x626B;&#x63CF;&#x7801;&#xFF0C;&#x5219;wMapType&nbsp;&nbsp; &#x8BBE;&#x7F6E;&#x4E3A;0&#xFF0C;&#x5982;&#x679C;&#x662F;&#x865A;&#x62DF;&#x626B;&#x63CF;&#x7801;&#x8F6C;&#x865A;&#x62DF;&#x7801;&#xFF0C;&#x5219;wMapType&nbsp;&nbsp; &#x8BBE;&#x7F6E;&#x4E3A;1&#xFF0C;&#x5982;&#x679C;&#x662F;&#x865A;&#x62DF;&#x7801;&#x8F6C;ASCII&#x7801;&#xFF0C;&#x5219;wMapType&nbsp;&nbsp; &#x8BBE;&#x7F6E;&#x4E3A;2.&#x76F8;&#x4FE1;&#x6709;&#x4E86;&#x8FD9;&#x4E9B;&#xFF0C;&#x6211;&#x4EEC;&#x5C31;&#x53EF;&#x4EE5;&#x6784;&#x9020;&#x952E;&#x76D8;&#x4E8B;&#x4EF6;&#x7684;lParam&#x53C2;&#x6570;&#x4E86;&#x3002;&#x4E0B;&#x9762;&#x7ED9;&#x51FA;&#x4E00;&#x4E2A;&#x6784;&#x9020;lParam&#x53C2;&#x6570;&#x7684;&#x51FD;&#x6570;&#xFF1A;&nbsp;&nbsp; <br/>&#x590D;&#x5236;&#x5185;&#x5BB9;&#x5230;&#x526A;&#x8D34;&#x677F; &#x7A0B;&#x5E8F;&#x4EE3;&#x7801;Declare Function MapVirtualKey Lib &#34;user32&#34; Alias &#34;MapVirtualKeyA&#34; (ByVal wCode As Long, ByVal wMapType As Long) As Long<br/>Function MakeKeyLparam(ByVal VirtualKey As Long, ByVal flag As Long) As Long<br/>&nbsp;&nbsp;&nbsp;&nbsp;&#39;&#x53C2;&#x6570;VirtualKey&#x8868;&#x793A;&#x6309;&#x952E;&#x865A;&#x62DF;&#x7801;,flag&#x8868;&#x793A;&#x662F;&#x6309;&#x4E0B;&#x952E;&#x8FD8;&#x662F;&#x91CA;&#x653E;&#x952E;&#xFF0C;&#x7528;WM_KEYDOWN&#x548C;WM_KEYUP&#x8FD9;&#x4E24;&#x4E2A;&#x5E38;&#x6570;&#x8868;&#x793A;<br/>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Dim s&nbsp;&nbsp;&nbsp;&nbsp; As String<br/>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Dim Firstbyte&nbsp;&nbsp;&nbsp;&nbsp; As String&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; &#39;lparam&#x53C2;&#x6570;&#x7684;24-31&#x4F4D;<br/>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;If flag = WM_KEYDOWN Then&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; &#39;&#x5982;&#x679C;&#x662F;&#x6309;&#x4E0B;&#x952E;<br/>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Firstbyte = &#34;00&#34;<br/>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Else<br/>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Firstbyte = &#34;C0&#34;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; &#39;&#x5982;&#x679C;&#x662F;&#x91CA;&#x653E;&#x952E;<br/>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;End If<br/>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Dim Scancode&nbsp;&nbsp;&nbsp;&nbsp; As Long<br/>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&#39;&#x83B7;&#x5F97;&#x952E;&#x7684;&#x626B;&#x63CF;&#x7801;<br/>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Scancode = MapVirtualKey(VirtualKey, 0)<br/>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Dim Secondbyte&nbsp;&nbsp;&nbsp;&nbsp; As String&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; &#39;lparam&#x53C2;&#x6570;&#x7684;16-23&#x4F4D;&#xFF0C;&#x5373;&#x865A;&#x62DF;&#x952E;&#x626B;&#x63CF;&#x7801;<br/>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Secondbyte = Right(&#34;00&#34; &amp; Hex(Scancode), 2)<br/>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;s = Firstbyte &amp; Secondbyte &amp; &#34;0001&#34;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; &#39;0001&#x4E3A;lparam&#x53C2;&#x6570;&#x7684;0-15&#x4F4D;&#xFF0C;&#x5373;&#x53D1;&#x9001;&#x6B21;&#x6570;&#x548C;&#x5176;&#x5B83;&#x6269;&#x5C55;&#x4FE1;&#x606F;<br/>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;MakeKeyLparam = Val(&#34;&amp;H&#34; &amp; s)<br/>End Function<br/>&#x8FD9;&#x4E2A;&#x51FD;&#x6570;&#x50CF;&#x8FD9;&#x6837;&#x8C03;&#x7528;&#xFF0C;&#x6BD4;&#x5982;&#x6309;&#x4E0B;A&#x952E;&#xFF0C;&#x90A3;&#x4E48;lParam=MakeKeyLparam(VK_A,WM_KEYDOWN)&nbsp;&nbsp; &#xFF0C;&#x5F88;&#x7B80;&#x5355;&#x5427;&#x3002;&#x503C;&#x5F97;&#x6CE8;&#x610F;&#x7684;&#x662F;&#xFF0C;&#x5373;&#x4F7F;&#x4F60;&#x53D1;&#x9001;&#x6D88;&#x606F;&#x65F6;&#x8BBE;&#x7F6E;&#x4E86;lParam&#x53C2;&#x6570;&#x7684;&#x503C;&#xFF0C;&#x4F46;&#x662F;&#x7CFB;&#x7EDF;&#x5728;&#x4F20;&#x9012;&#x6D88;&#x606F;&#x65F6;&#x4ECD;&#x7136;&#x53EF;&#x80FD;&#x4F1A;&#x6839;&#x636E;&#x5F53;&#x65F6;&#x7684;&#x60C5;&#x51B5;&#x91CD;&#x65B0;&#x8BBE;&#x7F6E;&#x8BE5;&#x53C2;&#x6570;&#xFF0C;&#x90A3;&#x4E48;&#x76EE;&#x6807;&#x7A0B;&#x5E8F;&#x6536;&#x5230;&#x7684;&#x6D88;&#x606F;&#x4E2D;lParam&#x7684;&#x503C;&#x53EF;&#x80FD;&#x4F1A;&#x548C;&#x4F60;&#x53D1;&#x9001;&#x65F6;&#x7684;&#x6709;&#x6240;&#x4E0D;&#x540C;&#x3002;&#x6240;&#x4EE5;&#xFF0C;&#x5982;&#x679C;&#x4F60;&#x5F88;&#x61D2;&#x7684;&#x8BDD;&#xFF0C;&#x8FD8;&#x662F;&#x76F4;&#x63A5;&#x628A;&#x5B83;&#x8BBE;&#x4E3A;0&#x5427;&#xFF0C;&#x5BF9;&#x5927;&#x591A;&#x6570;&#x7A0B;&#x5E8F;&#x4E0D;&#x4F1A;&#x6709;&#x5F71;&#x54CD;&#x7684;&#xFF0C;&#x5475;&#x5475;&#x3002;&nbsp;&nbsp; <br/>&#x597D;&#x4E86;&#xFF0C;&#x505A;&#x5B8C;&#x4EE5;&#x4E0A;&#x7684;&#x4E8B;&#x60C5;&#xFF0C;&#x73B0;&#x5728;&#x6211;&#x4EEC;&#x53EF;&#x4EE5;&#x5411;&#x76EE;&#x6807;&#x7A0B;&#x5E8F;&#x53D1;&#x9001;&#x952E;&#x76D8;&#x6D88;&#x606F;&#x4E86;&#x3002;&#x9996;&#x5148;&#x53D6;&#x5F97;&#x76EE;&#x6807;&#x7A0B;&#x5E8F;&#x63A5;&#x53D7;&#x8FD9;&#x4E2A;&#x6D88;&#x606F;&#x7684;&#x63A7;&#x4EF6;&#x7684;&#x53E5;&#x67C4;&#xFF0C;&#x6BD4;&#x5982;&#x76EE;&#x6807;&#x53E5;&#x67C4;&#x662F;12345&#xFF0C;&#x90A3;&#x4E48;&#x6211;&#x4EEC;&#x6765;&#x5BF9;&#x76EE;&#x6807;&#x6A21;&#x62DF;&#x6309;&#x4E0B;&#x5E76;&#x91CA;&#x653E;A&#x952E;&#xFF0C;&#x50CF;&#x8FD9;&#x6837;&#xFF1A;(&#x4E3A;&#x4E86;&#x7B80;&#x5355;&#x8D77;&#x89C1;&#xFF0C;lPa&#xC;lm&#x8FD9;&#x4E2A;&#x53C2;&#x6570;&#x5C31;&#x4E0D;&#x6784;&#x9020;&#x4E86;&#xFF0C;&#x76F4;&#x63A5;&#x4F20;0)&nbsp;&nbsp; <br/>&#x590D;&#x5236;&#x5185;&#x5BB9;&#x5230;&#x526A;&#x8D34;&#x677F; &#x7A0B;&#x5E8F;&#x4EE3;&#x7801;PostMessage&nbsp;&nbsp; 12345,WM_KEYDOWN,VK_A,0&amp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; &#39;&#x6309;&#x4E0B;A&#x952E;&nbsp;&nbsp; <br/>PostMessage&nbsp;&nbsp; 12345,WM_UP,VK_A,0&amp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; &#39;&#x91CA;&#x653E;A&#x952E;<br/>&#x597D;&#x4E86;&#xFF0C;&#x4E00;&#x6B21;&#x6309;&#x952E;&#x5C31;&#x5B8C;&#x6210;&#x4E86;&#x3002;&#x73B0;&#x5728;&#x4F60;&#x53EF;&#x4EE5;&#x8FEB;&#x4E0D;&#x53CA;&#x5F85;&#x7684;&#x6253;&#x5F00;&#x8BB0;&#x4E8B;&#x672C;&#x505A;&#x5B9E;&#x9A8C;&#xFF0C;&#x5148;&#x7528;FindWindowEx&#x8FD9;&#x7C7B;API&#x51FD;&#x6570;&#x627E;&#x5230;&#x8BB0;&#x4E8B;&#x672C;&#x7A0B;&#x5E8F;&#x7684;&#x53E5;&#x67C4;&#xFF0C;&#x518D;&#x5411;&#x5B83;&#x53D1;&#x9001;&#x952E;&#x76D8;&#x6D88;&#x606F;&#xFF0C;&#x671F;&#x671B;&#x8BB0;&#x4E8B;&#x672C;&#x91CC;&#x80FD;&#x8BE1;&#x5F02;&#x7684;&#x81EA;&#x52A8;&#x51FA;&#x73B0;&#x5B57;&#x7B26;&#x3002;&#x53EF;&#x662F;&#x4F60;&#x9A6C;&#x4E0A;&#x5C31;&#x662F;&#x5931;&#x671B;&#x4E86;&#xFF0C;&#x54A6;&#xFF0C;&#x600E;&#x4E48;&#x4E00;&#x70B9;&#x53CD;&#x5E94;&#x4E5F;&#x6CA1;&#x6709;&#xFF1F;&#x4F60;&#x6B3A;&#x9A97;&#x611F;&#x60C5;&#x554A;~~~~~~~~~~55555555555555&nbsp;&nbsp;&nbsp;&nbsp; &#x4E0D;&#x662F;&#x7684;&#x54E6;&#xFF0C;&#x63A5;&#x7740;&#x5F80;&#x4E0B;&#x770B;&#x554A;&#x3002;&nbsp;&nbsp; <br/>&#x4E00;&#x822C;&#x76EE;&#x6807;&#x7A0B;&#x5E8F;&#x90FD;&#x4F1A;&#x542B;&#x6709;&#x591A;&#x4E2A;&#x63A7;&#x4EF6;&#xFF0C;&#x5E76;&#x4E0D;&#x662F;&#x6BCF;&#x4E2A;&#x63A7;&#x4EF6;&#x90FD;&#x4F1A;&#x5BF9;&#x952E;&#x76D8;&#x6D88;&#x606F;&#x4F5C;&#x51FA;&#x53CD;&#x5E94;&#xFF0C;&#x53EA;&#x6709;&#x628A;&#x952E;&#x76D8;&#x6D88;&#x606F;&#x53D1;&#x9001;&#x7ED9;&#x63A5;&#x53D7;&#x5B83;&#x7684;&#x63A7;&#x4EF6;&#x624D;&#x4F1A;&#x5F97;&#x5230;&#x671F;&#x671B;&#x7684;&#x53CD;&#x5E94;&#x3002;&#x90A3;&#x8BB0;&#x4E8B;&#x672C;&#x6765;&#x8BF4;&#xFF0C;&#x5B83;&#x7684;&#x7F16;&#x8F91;&#x6846;&#x5176;&#x5B9E;&#x662F;&#x4E2A;edit&#x7C7B;&#xFF0C;&#x53EA;&#x6709;&#x8FD9;&#x4E2A;&#x63A7;&#x4EF6;&#x624D;&#x5BF9;&#x952E;&#x76D8;&#x4E8B;&#x4EF6;&#x6709;&#x53CD;&#x5E94;&#xFF0C;&#x5982;&#x679C;&#x53EA;&#x662F;&#x628A;&#x6D88;&#x606F;&#x53D1;&#x7ED9;&#x8BB0;&#x4E8B;&#x672C;&#x7684;&#x7A97;&#x4F53;&#xFF0C;&#x90A3;&#x662F;&#x6CA1;&#x6709;&#x7528;&#x7684;&#x3002;&#x73B0;&#x5728;&#x4F60;&#x627E;&#x51FA;&#x8BB0;&#x4E8B;&#x672C;&#x90A3;&#x4E2A;&#x7F16;&#x8F91;&#x6846;&#x7684;&#x53E5;&#x67C4;&#xFF0C;&#x6BD4;&#x5982;&#x662F;54321&#xFF0C;&#x90A3;&#x4E48;&#x5199;&#x5982;&#x4E0B;&#x4EE3;&#x7801;&#xFF1A;&nbsp;&nbsp;<br/>&nbsp;&nbsp; <br/>&#x590D;&#x5236;&#x5185;&#x5BB9;&#x5230;&#x526A;&#x8D34;&#x677F; &#x7A0B;&#x5E8F;&#x4EE3;&#x7801;PostMessage&nbsp;&nbsp; 54321,WM_KEYDOWN,VK_F1,0&amp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; &#39;&#x6309;&#x4E0B;F1&#x952E;&nbsp;&nbsp; <br/>PostMessage&nbsp;&nbsp; 54321,WM_UP,VK_F1,0&amp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; &#39;&#x91CA;&#x653E;F1&#x952E;<br/>&#x600E;&#x4E48;&#x6837;&#xFF0C;&#x662F;&#x4E0D;&#x662F;&#x6253;&#x5F00;&#x4E86;&#x8BB0;&#x4E8B;&#x672C;&#x7684;&#x201C;&#x5E2E;&#x52A9;&#x201D;&#x4FE1;&#x606F;&#xFF1F;&#x8FD9;&#x8BF4;&#x660E;&#x76EE;&#x6807;&#x7A0B;&#x5E8F;&#x5DF2;&#x7ECF;&#x6536;&#x5230;&#x4E86;&#x4F60;&#x53D1;&#x7684;&#x6D88;&#x606F;&#xFF0C;&#x8FD8;&#x4E0D;&#x9519;&#x5427;~~~~~~~~&nbsp;&nbsp; <br/>&#x53EF;&#x4EE5;&#x9A6C;&#x4E0A;&#x65B0;&#x95EE;&#x9898;&#x5C31;&#x6765;&#x4E86;&#xFF0C;&#x4F60;&#x60F3;&#x6A21;&#x62DF;&#x5411;&#x8BB0;&#x4E8B;&#x672C;&#x6309;&#x4E0B;A&#x8FD9;&#x4E2A;&#x952E;&#xFF0C;&#x597D;&#x5728;&#x8BB0;&#x4E8B;&#x672C;&#x91CC;&#x81EA;&#x52A8;&#x8F93;&#x5165;&#x5B57;&#x7B26;&#xFF0C;&#x53EF;&#x662F;&#xFF0C;&#x6CA1;&#x6709;&#x4EFB;&#x4F55;&#x53CD;&#x5E94;&#xFF01;&#x8FD9;&#x662F;&#x600E;&#x4E48;&#x4E00;&#x56DE;&#x4E8B;&#x5462;&#xFF1F;&nbsp;&nbsp; <br/>&#x539F;&#x6765;&#xFF0C;&#x5982;&#x679C;&#x8981;&#x5411;&#x76EE;&#x6807;&#x7A0B;&#x5E8F;&#x53D1;&#x9001;&#x5B57;&#x7B26;&#xFF0C;&#x5149;&#x9760;WM_KEYDOWN&#x548C;WM_UP&#x8FD9;&#x4E24;&#x4E2A;&#x4E8B;&#x4EF6;&#x8FD8;&#x4E0D;&#x884C;&#xFF0C;&#x8FD8;&#x9700;&#x8981;&#x4E00;&#x4E2A;&#x4E8B;&#x4EF6;&#xFF1A;WM_CHAR&#xFF0C;&#x8FD9;&#x4E2A;&#x6D88;&#x606F;&#x8868;&#x793A;&#x4E00;&#x4E2A;&#x5B57;&#x7B26;&#xFF0C;&#x7A0B;&#x5E8F;&#x9700;&#x9760;&#x5B83;&#x770B;&#x6765;&#x63A5;&#x53D7;&#x8F93;&#x5165;&#x7684;&#x5B57;&#x7B26;&#x3002;&#x4E00;&#x822C;&#x53EA;&#x6709;A&#xFF0C;B&#xFF0C;C&#x7B49;&#x8FD9;&#x6837;&#x7684;&#x6309;&#x952E;&#x624D;&#x6709;WM_CHAR&#x6D88;&#x606F;&#xFF0C;&#x522B;&#x7684;&#x952E;(&#x6BD4;&#x5982;&#x65B9;&#x5411;&#x952E;&#x548C;&#x529F;&#x80FD;&#x952E;)&#x662F;&#x6CA1;&#x6709;&#x8FD9;&#x4E2A;&#x6D88;&#x606F;&#x7684;&#xFF0C;WM_CHAR&#x6D88;&#x606F;&#x4E00;&#x822C;&#x53D1;&#x751F;&#x5728;WM_KEYDOWN&#x6D88;&#x606F;&#x4E4B;&#x540E;&#x3002;WM_CHAR&#x6D88;&#x606F;&#x7684;lParam&#x53C2;&#x6570;&#x7684;&#x542B;&#x4E49;&#x4E0E;&#x5176;&#x5B83;&#x952E;&#x76D8;&#x6D88;&#x606F;&#x4E00;&#x6837;&#xFF0C;&#x800C;&#x5B83;&#x7684;wParam&#x5219;&#x8868;&#x793A;&#x76F8;&#x5E94;&#x5B57;&#x7B26;&#x7684;ASCII&#x7F16;&#x7801;(&#x53EF;&#x4EE5;&#x8F93;&#x5165;&#x4E2D;&#x6587;&#x7684;&#x54E6;^_^)&#xFF0C;&#x73B0;&#x5728;&#x4F60;&#x53EF;&#x4EE5;&#x5199;&#x51FA;&#x4E00;&#x4E2A;&#x5B8C;&#x6574;&#x7684;&#x5411;&#x8BB0;&#x4E8B;&#x672C;&#x91CC;&#x81EA;&#x52A8;&#x5199;&#x5165;&#x5B57;&#x7B26;&#x7684;&#x7A0B;&#x5E8F;&#x4E86;&#xFF0C;&#x4E0B;&#x9762;&#x662F;&#x4E00;&#x4E2A;&#x4F8B;&#x5B50;&#xFF0C;&#x5E76;&#x9644;&#x6709;&#x8FD9;&#x4E9B;&#x6D88;&#x606F;&#x5E38;&#x6570;&#x7684;&#x5177;&#x4F53;&#x503C;&#xFF1A; <br/>&#x590D;&#x5236;&#x5185;&#x5BB9;&#x5230;&#x526A;&#x8D34;&#x677F; &#x7A0B;&#x5E8F;&#x4EE3;&#x7801;Declare Function PostMessage Lib &#34;user32&#34; Alias &#34;PostMessageA&#34; (ByVal hwnd As Long, ByVal wMsg As Long, ByVal wParam As Long, lParam As Any) As Long<br/>Declare Function MapVirtualKey Lib &#34;user32&#34; Alias &#34;MapVirtualKeyA&#34; (ByVal wCode As Long, ByVal wMapType As Long) As Long<br/>Public Const WM_KEYDOWN = &amp;H100<br/>Public Const WM_KEYUP = &amp;H101<br/>Public Const WM_CHAR = &amp;H102<br/>Public Const VK_A = &amp;H41<br/>Function MakeKeyLparam(ByVal VirtualKey As Long, ByVal flag As Long) As Long<br/>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Dim s&nbsp;&nbsp;&nbsp;&nbsp; As String<br/>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Dim Firstbyte&nbsp;&nbsp;&nbsp;&nbsp; As String&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; &#39;lparam&#x53C2;&#x6570;&#x7684;24-31&#x4F4D;<br/>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;If flag = WM_KEYDOWN Then&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; &#39;&#x5982;&#x679C;&#x662F;&#x6309;&#x4E0B;&#x952E;<br/>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Firstbyte = &#34;00&#34;<br/>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Else<br/>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Firstbyte = &#34;C0&#34;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; &#39;&#x5982;&#x679C;&#x662F;&#x91CA;&#x653E;&#x952E;<br/>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;End If<br/>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Dim Scancode&nbsp;&nbsp;&nbsp;&nbsp; As Long<br/>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&#39;&#x83B7;&#x5F97;&#x952E;&#x7684;&#x626B;&#x63CF;&#x7801;<br/>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Scancode = MapVirtualKey(VirtualKey, 0)<br/>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Dim Secondbyte&nbsp;&nbsp;&nbsp;&nbsp; As String&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; &#39;lparam&#x53C2;&#x6570;&#x7684;16-23&#x4F4D;&#xFF0C;&#x5373;&#x865A;&#x62DF;&#x952E;&#x626B;&#x63CF;&#x7801;<br/>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Secondbyte = Right(&#34;00&#34; &amp; Hex(Scancode), 2)<br/>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;s = Firstbyte &amp; Secondbyte &amp; &#34;0001&#34;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; &#39;0001&#x4E3A;lparam&#x53C2;&#x6570;&#x7684;0-15&#x4F4D;&#xFF0C;&#x5373;&#x53D1;&#x9001;&#x6B21;&#x6570;&#x548C;&#x5176;&#x5B83;&#x6269;&#x5C55;&#x4FE1;&#x606F;<br/>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;MakeKeyLparam = Val(&#34;&amp;H&#34; &amp; s)<br/>End Function<br/>Private Sub Form_Load()<br/>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Dim hwnd&nbsp;&nbsp;&nbsp;&nbsp; As Long<br/>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;hwnd = XXXXXX&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; &#39;XXXXX&#x8868;&#x793A;&#x8BB0;&#x4E8B;&#x672C;&#x7F16;&#x8F91;&#x6846;&#x7684;&#x53E5;&#x67C4;<br/>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;PostMessage hwnd, WM_KEYDOWN, VK_A, MakeKeyLparam(VK_A, WM_KEYDOWN)&nbsp;&nbsp; &#39;&#x6309;&#x4E0B;A&#x952E;<br/>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;PostMessage hwnd, WM_CHAR, Asc(&#34;A&#34;), MakeKeyLparam(VK_A, WM_KEYDOWN)&nbsp;&nbsp; &#39;&#x8F93;&#x5165;&#x5B57;&#x7B26;A<br/>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;PostMessage hwnd, WM_UP, VK_A, MakeKeyLparam(VK_A, WM_UP)&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; &#39;&#x91CA;&#x653E;A&#x952E;<br/>End Sub<br/>&#x8FD9;&#x5C31;&#x662F;&#x901A;&#x8FC7;&#x5C40;&#x90E8;&#x952E;&#x76D8;&#x6D88;&#x606F;&#x6765;&#x6A21;&#x62DF;&#x6309;&#x952E;&#x3002;&#x8FD9;&#x4E2A;&#x65B9;&#x6CD5;&#x6709;&#x4E00;&#x4E2A;&#x6781;&#x5927;&#x7684;&#x597D;&#x5904;&#xFF0C;&#x5C31;&#x662F;&#xFF1A;&#x5B83;&#x53EF;&#x4EE5;&#x5B9E;&#x73B0;&#x540E;&#x53F0;&#x6309;&#x952E;&#xFF0C;&#x4E5F;&#x5C31;&#x662F;&#x8BF4;&#x4ED6;&#x5BF9;&#x4F60;&#x7684;&#x524D;&#x53F0;&#x64CD;&#x4F5C;&#x4E0D;&#x4F1A;&#x6709;&#x4EC0;&#x4E48;&#x5F71;&#x54CD;&#x3002;&#x6BD4;&#x5982;&#xFF0C;&#x4F60;&#x53EF;&#x4EE5;&#x7528;&#x8FD9;&#x4E2A;&#x65B9;&#x6CD5;&#x505A;&#x4E2A;&#x7A0B;&#x5E8F;&#x5728;&#x6E38;&#x620F;&#x4E2D;&#x6A21;&#x62DF;&#x6309;&#x952E;&#x6765;&#x4E0D;&#x65AD;&#x5730;&#x6267;&#x884C;&#x67D0;&#x4E9B;&#x91CD;&#x590D;&#x7684;&#x64CD;&#x4F5C;&#xFF0C;&#x800C;&#x4F60;&#x5219;&#x4E00;&#x8FB9;&#x559D;&#x8336;&#x4E00;&#x8FB9;&#x4E0E;QQ&#x4E0A;&#x7684;MM&#x4EEC;&#x804A;&#x5F97;&#x706B;&#x70ED;&#xFF0C;&#x5B83;&#x4E1D;&#x6BEB;&#x4E0D;&#x4F1A;&#x5F71;&#x54CD;&#x4F60;&#x7684;&#x524D;&#x53F0;&#x64CD;&#x4F5C;&#x3002;&#x65E0;&#x8BBA;&#x76EE;&#x6807;&#x7A0B;&#x5E8F;&#x662F;&#x5426;&#x83B7;&#x5F97;&#x7126;&#x70B9;&#x90FD;&#x6CA1;&#x6709;&#x5F71;&#x54CD;&#xFF0C;&#x8FD9;&#x5C31;&#x662F;&#x540E;&#x53F0;&#x6A21;&#x62DF;&#x6309;&#x952E;&#x7684;&#x539F;&#x7406;&#x5566;~~~~&nbsp;&nbsp; <br/>2.&#x5168;&#x5C40;&#x7EA7;&#x6A21;&#x62DF;<br/>&#x4F60;&#x4F1A;&#x53D1;&#x73B0;&#xFF0C;&#x7528;&#x4E0A;&#x9762;&#x7684;&#x65B9;&#x6CD5;&#x6A21;&#x62DF;&#x6309;&#x952E;&#x5E76;&#x4E0D;&#x662F;&#x5BF9;&#x6240;&#x6709;&#x7A0B;&#x5E8F;&#x90FD;&#x6709;&#x6548;&#x7684;&#xFF0C;&#x6709;&#x7684;&#x7A0B;&#x5E8F;&#x554A;&#xFF0C;&#x4F60;&#x5411;&#x5B83;&#x53D1;&#x4E86;&#x4E00;&#x5927;&#x5806;&#x6D88;&#x606F;&#xFF0C;&#x53EF;&#x662F;&#x5B83;&#x5374;&#x4E00;&#x70B9;&#x53CD;&#x5E94;&#x4E5F;&#x6CA1;&#x6709;&#x3002;&#x8FD9;&#x662F;&#x600E;&#x4E48;&#x56DE;&#x4E8B;&#x5462;&#xFF1F;&#x8FD9;&#x5C31;&#x8981;&#x770B;&#x5177;&#x4F53;&#x7684;&#x60C5;&#x51B5;&#x4E86;&#xFF0C;&#x6709;&#x4E9B;&#x7A0B;&#x5E8F;(&#x7279;&#x522B;&#x662F;&#x4E00;&#x4E9B;&#x6E38;&#x620F;)&#x51FA;&#x4E8E;&#x67D0;&#x4E9B;&#x539F;&#x56E0;&#xFF0C;&#x4F1A;&#x7981;&#x6B62;&#x7528;&#x6237;&#x5BF9;&#x5B83;&#x4F7F;&#x7528;&#x6A21;&#x62DF;&#x6309;&#x952E;&#x7A0B;&#x5E8F;&#xFF0C;&#x8FD9;&#x4E2A;&#x600E;&#x4E48;&#x5B9E;&#x73B0;&#x5462;&#xFF1F;&#x6BD4;&#x5982;&#x53EF;&#x4EE5;&#x5728;&#x7A0B;&#x5E8F;&#x4E2D;&#x68C0;&#x67E5;&#x4E00;&#x4E0B;&#xFF0C;&#x5982;&#x679C;&#x53D1;&#x73B0;&#x81EA;&#x5DF1;&#x4E0D;&#x662F;&#x6D3B;&#x52A8;&#x7A97;&#x53E3;&#xFF0C;&#x5C31;&#x4E0D;&#x63A5;&#x53D7;&#x952E;&#x76D8;&#x6D88;&#x606F;&#x3002;&#x6216;&#x8005;&#x4ED4;&#x7EC6;&#x68C0;&#x67E5;&#x4E00;&#x4E0B;&#x6536;&#x5230;&#x7684;&#x952E;&#x76D8;&#x6D88;&#x606F;&#xFF0C;&#x4F60;&#x4F1A;&#x53D1;&#x73B0;&#x771F;&#x5B9E;&#x7684;&#x6309;&#x952E;&#x548C;&#x6A21;&#x62DF;&#x7684;&#x6309;&#x952E;&#x6D88;&#x606F;&#x603B;&#x662F;&#x6709;&#x4E00;&#x4E9B;&#x5C0F;&#x5DEE;&#x522B;&#xFF0C;&#x4ECE;&#x8FD9;&#x4E9B;&#x5C0F;&#x5DEE;&#x522B;&#x4E0A;&#xFF0C;&#x76EE;&#x6807;&#x7A0B;&#x5E8F;&#x5C31;&#x80FD;&#x5224;&#x65AD;&#x51FA;&#xFF1A;&#x8FD9;&#x662F;&#x5047;&#x7684;&#xFF01;&#x662F;&#x4F2A;&#x9020;&#x7684;&#xFF01;&#xFF01;&#x56E0;&#x6B64;&#xFF0C;&#x5982;&#x679C;&#x7528;PostMessage&#x53D1;&#x9001;&#x5C40;&#x90E8;&#x6D88;&#x606F;&#x6A21;&#x62DF;&#x6309;&#x952E;&#x4E0D;&#x6210;&#x529F;&#x7684;&#x8BDD;&#xFF0C;&#x4F60;&#x53EF;&#x4EE5;&#x8BD5;&#x4E00;&#x8BD5;&#x5168;&#x5C40;&#x7EA7;&#x7684;&#x952E;&#x76D8;&#x6D88;&#x606F;&#xFF0C;&#x770B;&#x770B;&#x80FD;&#x4E0D;&#x80FD;&#x9A97;&#x8FC7;&#x76EE;&#x6807;&#x7A0B;&#x5E8F;&#x3002;<br/>&#x6A21;&#x62DF;&#x5168;&#x5C40;&#x952E;&#x76D8;&#x6D88;&#x606F;&#x5E38;&#x89C1;&#x7684;&#x53EF;&#x4EE5;&#x6709;&#x4EE5;&#x4E0B;&#x4E00;&#x4E9B;&#x65B9;&#x6CD5;&#xFF1A; <br/>&nbsp;&nbsp;<br/>(1)&#x7528;API&#x51FD;&#x6570;keybd_event&#xFF0C;&#x8FD9;&#x4E2A;&#x51FD;&#x6570;&#x53EF;&#x4EE5;&#x7528;&#x6765;&#x6A21;&#x62DF;&#x4E00;&#x4E2A;&#x952E;&#x76D8;&#x4E8B;&#x4EF6;&#xFF0C;&#x5B83;&#x7684;VB&#x58F0;&#x660E;&#x4E3A;&#xFF1A;<br/>&nbsp;&nbsp; <br/>&#x590D;&#x5236;&#x5185;&#x5BB9;&#x5230;&#x526A;&#x8D34;&#x677F; &#x7A0B;&#x5E8F;&#x4EE3;&#x7801;Declare Sub keybd_event Lib &#34;user32&#34; (ByVal bVk As Byte, ByVal bScan As Byte, ByVal dwFlags As Long, ByVal dwExtraInfo As Long)<br/>&#x53C2;&#x6570;bVk&#x8868;&#x793A;&#x8981;&#x6A21;&#x62DF;&#x7684;&#x6309;&#x952E;&#x7684;&#x865A;&#x62DF;&#x7801;&#xFF0C;bScan&#x8868;&#x793A;&#x8BE5;&#x6309;&#x952E;&#x7684;&#x626B;&#x63CF;&#x7801;(&#x4E00;&#x822C;&#x53EF;&#x4EE5;&#x4F20;0)&#xFF0C;dwFlags&#x8868;&#x793A;&#x662F;&#x6309;&#x4E0B;&#x952E;&#x8FD8;&#x662F;&#x91CA;&#x653E;&#x952E;(&#x6309;&#x4E0B;&#x952E;&#x4E3A;0&#xFF0C;&#x91CA;&#x653E;&#x952E;&#x4E3A;2)&#xFF0C;dwExtraInfo&#x662F;&#x6269;&#x5C55;&#x6807;&#x5FD7;&#xFF0C;&#x4E00;&#x822C;&#x6CA1;&#x6709;&#x7528;&#x3002;&#x6BD4;&#x5982;&#x8981;&#x6A21;&#x62DF;&#x6309;&#x4E0B;A&#x952E;&#xFF0C;&#x53EF;&#x4EE5;&#x8FD9;&#x6837;&#xFF1A;<br/>&nbsp;&nbsp; <br/>&#x590D;&#x5236;&#x5185;&#x5BB9;&#x5230;&#x526A;&#x8D34;&#x677F; &#x7A0B;&#x5E8F;&#x4EE3;&#x7801;Const&nbsp;&nbsp; KEYEVENTF_KEYUP&nbsp;&nbsp; =&nbsp;&nbsp; &amp;H2&nbsp;&nbsp; <br/>keybd_event&nbsp;&nbsp; VK_A,&nbsp;&nbsp; 0,&nbsp;&nbsp; 0,&nbsp;&nbsp; 0&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; &#39;&#x6309;&#x4E0B;A&#x952E;&nbsp;&nbsp; <br/>keybd_event&nbsp;&nbsp; VK_A,&nbsp;&nbsp; 0,&nbsp;&nbsp; KEYEVENTF_KEYUP,&nbsp;&nbsp; 0&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; &#39;&#x91CA;&#x653E;A&#x952E;<br/>&#x6CE8;&#x610F;&#x6709;&#x65F6;&#x5019;&#x6309;&#x952E;&#x7684;&#x901F;&#x5EA6;&#x4E0D;&#x8981;&#x592A;&#x5FEB;&#xFF0C;&#x5426;&#x5219;&#x4F1A;&#x51FA;&#x95EE;&#x9898;&#xFF0C;&#x53EF;&#x4EE5;&#x7528;API&#x51FD;&#x6570;Sleep&#x6765;&#x8FDB;&#x884C;&#x5EF6;&#x65F6;&#xFF0C;&#x58F0;&#x660E;&#x5982;&#x4E0B;&#xFF1A; <br/>&nbsp;&nbsp;<br/>&#x590D;&#x5236;&#x5185;&#x5BB9;&#x5230;&#x526A;&#x8D34;&#x677F; &#x7A0B;&#x5E8F;&#x4EE3;&#x7801;Declare Sub Sleep Lib &#34;kernel32&#34; (ByVal dwMilliseconds As Long)<br/>&#x53C2;&#x6570;dwMilliseconds&#x8868;&#x793A;&#x5EF6;&#x65F6;&#x7684;&#x65F6;&#x95F4;&#xFF0C;&#x4EE5;&#x6BEB;&#x79D2;&#x4E3A;&#x5355;&#x4F4D;&#x3002;&nbsp;&nbsp; <br/>&#x90A3;&#x4E48;&#x5982;&#x679C;&#x8981;&#x6A21;&#x62DF;&#x6309;&#x4E0B;&#x529F;&#x80FD;&#x952E;&#x600E;&#x4E48;&#x505A;&#x5462;&#xFF1F;&#x6BD4;&#x5982;&#x8981;&#x6309;&#x4E0B;Ctrl+C&#x5B9E;&#x73B0;&#x62F7;&#x8D1D;&#x8FD9;&#x4E2A;&#x529F;&#x80FD;&#xFF0C;&#x53EF;&#x4EE5;&#x8FD9;&#x6837;&#xFF1A;&nbsp;&nbsp; <br/>&#x590D;&#x5236;&#x5185;&#x5BB9;&#x5230;&#x526A;&#x8D34;&#x677F; &#x7A0B;&#x5E8F;&#x4EE3;&#x7801;keybd_event&nbsp;&nbsp; VK_Ctrl,&nbsp;&nbsp; 0,&nbsp;&nbsp; 0,&nbsp;&nbsp; 0&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; &#39;&#x6309;&#x4E0B;Ctrl&#x952E;&nbsp;&nbsp; <br/>keybd_event&nbsp;&nbsp; VK_C,&nbsp;&nbsp; 0,&nbsp;&nbsp; 0,&nbsp;&nbsp; 0&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; &#39;&#x6309;&#x4E0B;C&#x952E;&nbsp;&nbsp; <br/>Sleep&nbsp;&nbsp; 500&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; &#39;&#x5EF6;&#x65F6;500&#x6BEB;&#x79D2;&nbsp;&nbsp; <br/>keybd_event&nbsp;&nbsp; VK_C,&nbsp;&nbsp; 0,&nbsp;&nbsp; KEYEVENTF_KEYUP,&nbsp;&nbsp; 0&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; &#39;&#x91CA;&#x653E;C&#x952E;&nbsp;&nbsp; <br/>keybd_event&nbsp;&nbsp; VK_Ctrl,&nbsp;&nbsp; 0,&nbsp;&nbsp; KEYEVENTF_KEYUP,&nbsp;&nbsp; 0&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; &#39;&#x91CA;&#x653E;Ctrl&#x952E;<br/>&#x597D;&#x4E86;&#xFF0C;&#x73B0;&#x5728;&#x4F60;&#x53EF;&#x4EE5;&#x8BD5;&#x8BD5;&#x662F;&#x4E0D;&#x662F;&#x53EF;&#x4EE5;&#x9A97;&#x8FC7;&#x76EE;&#x6807;&#x7A0B;&#x5E8F;&#x4E86;&#xFF0C;&#x8FD9;&#x4E2A;&#x51FD;&#x6570;&#x5BF9;&#x5927;&#x90E8;&#x5206;&#x7684;&#x7A97;&#x53E3;&#x7A0B;&#x5E8F;&#x90FD;&#x6709;&#x6548;&#xFF0C;&#x53EF;&#x662F;&#x4ECD;&#x7136;&#x6709;&#x4E00;&#x90E8;&#x5206;&#x6E38;&#x620F;&#x5BF9;&#x5B83;&#x4EA7;&#x751F;&#x7684;&#x952E;&#x76D8;&#x4E8B;&#x4EF6;&#x719F;&#x89C6;&#x65E0;&#x7779;&#xFF0C;&#x8FD9;&#x65F6;&#x5019;&#xFF0C;&#x4F60;&#x5C31;&#x8981;&#x7528;&#x4E0A;bScan&#x8FD9;&#x4E2A;&#x53C2;&#x6570;&#x4E86;&#x3002;&#x4E00;&#x822C;&#x7684;&#xFF0C;bScan&#x90FD;&#x4F20;0&#xFF0C;&#x4F46;&#x662F;&#x5982;&#x679C;&#x76EE;&#x6807;&#x7A0B;&#x5E8F;&#x662F;&#x4E00;&#x4E9B;DirectX&#x6E38;&#x620F;&#xFF0C;&#x90A3;&#x4E48;&#x4F60;&#x5C31;&#x9700;&#x8981;&#x6B63;&#x786E;&#x4F7F;&#x7528;&#x8FD9;&#x4E2A;&#x53C2;&#x6570;&#x4F20;&#x5165;&#x626B;&#x63CF;&#x7801;&#xFF0C;&#x7528;&#x4E86;&#x5B83;&#x53EF;&#x4EE5;&#x4EA7;&#x751F;&#x6B63;&#x786E;&#x7684;&#x786C;&#x4EF6;&#x4E8B;&#x4EF6;&#x6D88;&#x606F;&#xFF0C;&#x4EE5;&#x88AB;&#x6E38;&#x620F;&#x8BC6;&#x522B;&#x3002;&#x8FD9;&#x6837;&#x7684;&#x8BDD;&#xFF0C;&#x5C31;&#x53EF;&#x4EE5;&#x5199;&#x6210;&#x8FD9;&#x6837;&#xFF1A;<br/>&nbsp;&nbsp; <br/>&#x590D;&#x5236;&#x5185;&#x5BB9;&#x5230;&#x526A;&#x8D34;&#x677F; &#x7A0B;&#x5E8F;&#x4EE3;&#x7801;keybd_event&nbsp;&nbsp; VK_A,&nbsp;&nbsp; MapVirtualKey(VK_A,&nbsp;&nbsp; 0),&nbsp;&nbsp; 0,&nbsp;&nbsp; 0&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; &#39;&#x6309;&#x4E0B;A&#x952E;&nbsp;&nbsp; <br/>keybd_event&nbsp;&nbsp; VK_A,&nbsp;&nbsp; MapVirtualKey(VK_A,&nbsp;&nbsp; 0),&nbsp;&nbsp; KEYEVENTF_KEYUP,&nbsp;&nbsp; 0&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; &#39;&#x91CA;&#x653E;A&#x952E;<br/>&#x4EE5;&#x4E0A;&#x5C31;&#x662F;&#x7528;keybd_event&#x51FD;&#x6570;&#x6765;&#x6A21;&#x62DF;&#x952E;&#x76D8;&#x4E8B;&#x4EF6;&#x3002;&#x9664;&#x4E86;&#x8FD9;&#x4E2A;&#x51FD;&#x6570;&#xFF0C;SendInput&#x51FD;&#x6570;&#x4E5F;&#x53EF;&#x4EE5;&#x6A21;&#x62DF;&#x5168;&#x5C40;&#x952E;&#x76D8;&#x4E8B;&#x4EF6;&#x3002;SendInput&#x53EF;&#x4EE5;&#x76F4;&#x63A5;&#x628A;&#x4E00;&#x6761;&#x6D88;&#x606F;&#x63D2;&#x5165;&#x5230;&#x6D88;&#x606F;&#x961F;&#x5217;&#x4E2D;&#xFF0C;&#x7B97;&#x662F;&#x6BD4;&#x8F83;&#x5E95;&#x5C42;&#x7684;&#x4E86;&#x3002;&#x5B83;&#x7684;VB&#x58F0;&#x660E;&#x5982;&#x4E0B;&#xFF1A;<br/>&nbsp;&nbsp; <br/>&#x590D;&#x5236;&#x5185;&#x5BB9;&#x5230;&#x526A;&#x8D34;&#x677F; &#x7A0B;&#x5E8F;&#x4EE3;&#x7801;Declare Function SendInput Lib &#34;user32.dll&#34; (ByVal nInputs As Long, pInputs As GENERALINPUT, ByVal cbSize As Long) As Long<br/>&#x53C2;&#x6570;&#xFF1A;&nbsp;&nbsp;&nbsp;&nbsp; <br/>nlnprts&#xFF1A;&#x5B9A;&#x4E49;plnputs&#x6307;&#x5411;&#x7684;&#x7ED3;&#x6784;&#x7684;&#x6570;&#x76EE;&#x3002;&nbsp;&nbsp; <br/>plnputs&#xFF1A;&#x6307;&#x5411;INPUT&#x7ED3;&#x6784;&#x6570;&#x7EC4;&#x7684;&#x6307;&#x9488;&#x3002;&#x6BCF;&#x4E2A;&#x7ED3;&#x6784;&#x4EE3;&#x8868;&#x63D2;&#x4EBA;&#x5230;&#x952E;&#x76D8;&#x6216;&#x9F20;&#x6807;&#x8F93;&#x5165;&#x6D41;&#x4E2D;&#x7684;&#x4E00;&#x4E2A;&#x4E8B;&#x4EF6;&#x3002;&nbsp;&nbsp; <br/>cbSize&#xFF1A;&#x5B9A;&#x4E49;INPUT&#x7ED3;&#x6784;&#x7684;&#x5927;&#x5C0F;&#x3002;&#x82E5;cbSize&#x4E0D;&#x662F;INPUT&#x7ED3;&#x6784;&#x7684;&#x5927;&#x5C0F;&#xFF0C;&#x5219;&#x51FD;&#x6570;&#x8C03;&#x7528;&#x5931;&#x8D25;&#x3002;&nbsp;&nbsp; <br/>&#x8FD4;&#x56DE;&#x503C;&#xFF1A;&#x51FD;&#x6570;&#x8FD4;&#x56DE;&#x88AB;&#x6210;&#x529F;&#x5730;&#x63D2;&#x4EBA;&#x952E;&#x76D8;&#x6216;&#x9F20;&#x6807;&#x8F93;&#x5165;&#x6D41;&#x4E2D;&#x7684;&#x4E8B;&#x4EF6;&#x7684;&#x6570;&#x76EE;&#x3002;&#x82E5;&#x8981;&#x83B7;&#x5F97;&#x66F4;&#x591A;&#x7684;&#x9519;&#x8BEF;&#x4FE1;&#x606F;&#xFF0C;&#x53EF;&#x4EE5;&#x8C03;&#x7528;GetlastError&#x51FD;&#x6570;&#x3002;&nbsp;&nbsp; <br/>&#x5907;&#x6CE8;&#xFF1A;Sendlnput&#x51FD;&#x6570;&#x5C06;INPUT&#x7ED3;&#x6784;&#x4E2D;&#x7684;&#x4E8B;&#x4EF6;&#x987A;&#x5E8F;&#x5730;&#x63D2;&#x5165;&#x952E;&#x76D8;&#x6216;&#x9F20;&#x6807;&#x7684;&#x8F93;&#x5165;&#x6D41;&#x4E2D;&#x3002;&#x8FD9;&#x4E9B;&#x4E8B;&#x4EF6;&#x4E0E;&#x7528;&#x6237;&#x63D2;&#x5165;&#x7684;&#xFF08;&#x7528;&#x9F20;&#x6807;&#x6216;&#x952E;&#x76D8;&#xFF09;&#x6216;&#x8C03;&#x7528;keybd_event&#xFF0C;mouse_event&#xFF0C;&#x6216;&#x53E6;&#x5916;&#x7684;Sendlnput&#x63D2;&#x4EBA;&#x7684;&#x952E;&#x76D8;&#x6216;&#x9F20;&#x6807;&#x7684;&#x8F93;&#x5165;&#x6D41;&#x4E0D;&#x517C;&#x5BB9;&#x3002;&nbsp;&nbsp; <br/>&#x55EF;&#xFF0C;&#x8FD9;&#x4E2A;&#x51FD;&#x6570;&#x7528;&#x8D77;&#x6765;&#x86EE;&#x590D;&#x6742;&#x7684;&#xFF0C;&#x56E0;&#x4E3A;&#x5B83;&#x7684;&#x53C2;&#x6570;&#x90FD;&#x662F;&#x6307;&#x9488;&#x4E00;&#x7C7B;&#x7684;&#x4E1C;&#x897F;&#x3002;&#x8981;&#x7528;&#x5B83;&#x6765;&#x6A21;&#x62DF;&#x952E;&#x76D8;&#x8F93;&#x5165;&#xFF0C;&#x5148;&#x8981;&#x6784;&#x9020;&#x4E00;&#x7EC4;&#x6570;&#x636E;&#x7ED3;&#x6784;&#xFF0C;&#x628A;&#x4F60;&#x8981;&#x6A21;&#x62DF;&#x7684;&#x952E;&#x76D8;&#x6D88;&#x606F;&#x88C5;&#x8FDB;&#x53BB;&#xFF0C;&#x7136;&#x540E;&#x4F20;&#x7ED9;&#x5B83;&#x3002;&#x4E3A;&#x4E86;&#x65B9;&#x4FBF;&#x8D77;&#x89C1;&#xFF0C;&#x628A;&#x5B83;&#x505A;&#x5728;&#x4E00;&#x4E2A;&#x8FC7;&#x7A0B;&#x91CC;&#x9762;&#xFF0C;&#x8981;&#x7528;&#x7684;&#x65F6;&#x5019;&#x76F4;&#x63A5;&#x8C03;&#x7528;&#x597D;&#x4E86;&#xFF0C;&#x4EE3;&#x7801;&#x5982;&#x4E0B;&#xFF1A; <br/>&nbsp;&nbsp;&nbsp;&nbsp;<br/>&#x590D;&#x5236;&#x5185;&#x5BB9;&#x5230;&#x526A;&#x8D34;&#x677F; &#x7A0B;&#x5E8F;&#x4EE3;&#x7801;Declare Function SendInput Lib &#34;user32.dll&#34; (ByVal nInputs As Long, pInputs As GENERALINPUT, ByVal cbSize As Long) As Long<br/>Declare Sub CopyMemory Lib &#34;kernel32&#34; Alias &#34;RtlMoveMemory&#34; (pDst As Any, pSrc As Any, ByVal ByteLen As Long)<br/>Type GENERALINPUT<br/>&nbsp;&nbsp;&nbsp;&nbsp;dwType&nbsp;&nbsp; As Long<br/>&nbsp;&nbsp;&nbsp;&nbsp;xi(0 To 23)&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; As Byte<br/>End Type<br/>Type KEYBDINPUT<br/>&nbsp;&nbsp;wVk&nbsp;&nbsp; As Integer<br/>&nbsp;&nbsp;wScan&nbsp;&nbsp; As Integer<br/>&nbsp;&nbsp;dwFlags&nbsp;&nbsp; As Long<br/>&nbsp;&nbsp;time&nbsp;&nbsp; As Long<br/>&nbsp;&nbsp;dwExtraInfo&nbsp;&nbsp; As Long<br/>End Type<br/>Const INPUT_KEYBOARD = 1<br/>Sub MySendKey(bkey As Long)<br/>&nbsp;&nbsp;&nbsp;&nbsp;&#39;&#x53C2;&#x6570;bkey&#x4F20;&#x5165;&#x8981;&#x6A21;&#x62DF;&#x6309;&#x952E;&#x7684;&#x865A;&#x62DF;&#x7801;&#x5373;&#x53EF;&#x6A21;&#x62DF;&#x6309;&#x4E0B;&#x6307;&#x5B9A;&#x952E;<br/>&nbsp;&nbsp;&nbsp;&nbsp;Dim GInput(0 To 1)&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; As GENERALINPUT<br/>&nbsp;&nbsp;&nbsp;&nbsp;Dim KInput&nbsp;&nbsp;&nbsp;&nbsp; As KEYBDINPUT<br/>&nbsp;&nbsp;&nbsp;&nbsp;KInput.wVk = bkey&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; &#39;&#x4F60;&#x8981;&#x6A21;&#x62DF;&#x7684;&#x6309;&#x952E;<br/>&nbsp;&nbsp;&nbsp;&nbsp;KInput.dwFlags = 0&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; &#39;&#x6309;&#x4E0B;&#x952E;&#x6807;&#x5FD7;<br/>&nbsp;&nbsp;&nbsp;&nbsp;GInput(0).dwType = INPUT_KEYBOARD<br/>&nbsp;&nbsp;&nbsp;&nbsp;CopyMemory GInput(0).xi(0), KInput, Len(KInput)&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; &#39;&#x8FD9;&#x4E2A;&#x51FD;&#x6570;&#x7528;&#x6765;&#x628A;&#x5185;&#x5B58;&#x4E2D;KInput&#x7684;&#x6570;&#x636E;&#x590D;&#x5236;&#x5230;GInput<br/>&nbsp;&nbsp;&nbsp;&nbsp;KInput.wVk = bkey<br/>&nbsp;&nbsp;&nbsp;&nbsp;KInput.dwFlags = KEYEVENTF_KEYUP&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; &#39;&nbsp;&nbsp; &#x91CA;&#x653E;&#x6309;&#x952E;<br/>&nbsp;&nbsp;&nbsp;&nbsp;GInput(1).dwType = INPUT_KEYBOARD&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; &#39;&nbsp;&nbsp; &#x8868;&#x793A;&#x8BE5;&#x6D88;&#x606F;&#x4E3A;&#x952E;&#x76D8;&#x6D88;&#x606F;<br/>&nbsp;&nbsp;&nbsp;&nbsp;CopyMemory GInput(1).xi(0), KInput, Len(KInput)<br/>&nbsp;&nbsp;&nbsp;&nbsp;&#39;&#x4EE5;&#x4E0A;&#x5DE5;&#x4F5C;&#x628A;&#x6309;&#x4E0B;&#x952E;&#x548C;&#x91CA;&#x653E;&#x952E;&#x5171;2&#x6761;&#x952E;&#x76D8;&#x6D88;&#x606F;&#x52A0;&#x5165;&#x5230;GInput&#x6570;&#x636E;&#x7ED3;&#x6784;&#x4E2D;<br/>&nbsp;&nbsp;&nbsp;&nbsp;SendInput 2, GInput(0), Len(GInput(0))&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; &#39;&#x628A;GInput&#x4E2D;&#x5B58;&#x653E;&#x7684;&#x6D88;&#x606F;&#x63D2;&#x5165;&#x5230;&#x6D88;&#x606F;&#x5217;&#x961F;<br/>End Sub<br/>&#x9664;&#x4E86;&#x4EE5;&#x4E0A;&#x8FD9;&#x4E9B;&#xFF0C;&#x7528;&#x5168;&#x5C40;&#x94A9;&#x5B50;&#x4E5F;&#x53EF;&#x4EE5;&#x6A21;&#x62DF;&#x952E;&#x76D8;&#x6D88;&#x606F;&#x3002;&#x5982;&#x679C;&#x4F60;&#x5BF9;windows&#x4E2D;&#x6D88;&#x606F;&#x94A9;&#x5B50;&#x7684;&#x7528;&#x6CD5;&#x5DF2;&#x7ECF;&#x6709;&#x6240;&#x4E86;&#x89E3;&#xFF0C;&#x90A3;&#x4E48;&#x4F60;&#x53EF;&#x4EE5;&#x901A;&#x8FC7;&#x8BBE;&#x7F6E;&#x4E00;&#x4E2A;&#x5168;&#x5C40;HOOK&#x6765;&#x6A21;&#x62DF;&#x952E;&#x76D8;&#x6D88;&#x606F;&#xFF0C;&#x6BD4;&#x5982;&#xFF0C;&#x4F60;&#x53EF;&#x4EE5;&#x7528;WH_JOURNALPLAYBACK&#x8FD9;&#x4E2A;&#x94A9;&#x5B50;&#x6765;&#x6A21;&#x62DF;&#x6309;&#x952E;&#x3002;WH_JOURNALPLAYBACK&#x662F;&#x4E00;&#x4E2A;&#x7CFB;&#x7EDF;&#x7EA7;&#x7684;&#x5168;&#x5C40;&#x94A9;&#x5B50;&#xFF0C;&#x5B83;&#x548C;WH_JOURNALRECORD&#x7684;&#x529F;&#x80FD;&#x662F;&#x76F8;&#x5BF9;&#x7684;&#xFF0C;&#x5E38;&#x7528;&#x5B83;&#x4EEC;&#x6765;&#x8BB0;&#x5F55;&#x5E76;&#x56DE;&#x653E;&#x952E;&#x76D8;&#x9F20;&#x6807;&#x64CD;&#x4F5C;&#x3002;WH_JOURNALRECORD&#x94A9;&#x5B50;&#x7528;&#x6765;&#x5C06;&#x952E;&#x76D8;&#x9F20;&#x6807;&#x7684;&#x64CD;&#x4F5C;&#x5FE0;&#x5B9E;&#x5730;&#x8BB0;&#x5F55;&#x4E0B;&#x6765;&#xFF0C;&#x8BB0;&#x5F55;&#x4E0B;&#x6765;&#x7684;&#x4FE1;&#x606F;&#x53EF;&#x4EE5;&#x4FDD;&#x5B58;&#x5230;&#x6587;&#x4EF6;&#x4E2D;&#xFF0C;&#x800C;WH_JOURNALPLAYBACK&#x5219;&#x53EF;&#x4EE5;&#x91CD;&#x73B0;&#x8FD9;&#x4E9B;&#x64CD;&#x4F5C;&#x3002;&#x5F53;&#x7136;&#x4EA6;&#x53EF;&#x4EE5;&#x5355;&#x72EC;&#x4F7F;&#x7528;WH_JOURNALPLAYBACK&#x6765;&#x6A21;&#x62DF;&#x952E;&#x76D8;&#x64CD;&#x4F5C;&#x3002;&#x4F60;&#x9700;&#x8981;&#x9996;&#x5148;&#x58F0;&#x660E;SetWindowsHookEx&#x51FD;&#x6570;&#xFF0C;&#x5B83;&#x53EF;&#x4EE5;&#x7528;&#x6765;&#x5B89;&#x88C5;&#x6D88;&#x606F;&#x94A9;&#x5B50;&#xFF1A;<br/>&#x590D;&#x5236;&#x5185;&#x5BB9;&#x5230;&#x526A;&#x8D34;&#x677F; &#x7A0B;&#x5E8F;&#x4EE3;&#x7801;Declare Function SetWindowsHookEx Lib &#34;user32&#34; Alias &#34;SetWindowsHookExA&#34; (ByVal idHook As Long, ByVal lpfn As Long, ByVal hmod As Long, ByVal dwThreadId As Long) As Long<br/>&#x5148;&#x5B89;&#x88C5;WH_JOURNALPLAYBACK&#x8FD9;&#x4E2A;&#x94A9;&#x5B50;&#xFF0C;&#x7136;&#x540E;&#x4F60;&#x9700;&#x8981;&#x81EA;&#x5DF1;&#x5199;&#x4E00;&#x4E2A;&#x94A9;&#x5B50;&#x51FD;&#x6570;&#xFF0C;&#x5728;&#x7CFB;&#x7EDF;&#x8C03;&#x7528;&#x5B83;&#x65F6;&#xFF0C;&#x628A;&#x4F60;&#x8981;&#x6A21;&#x62DF;&#x7684;&#x4E8B;&#x4EF6;&#x4F20;&#x9012;&#x7ED9;&#x94A9;&#x5B50;&#x53C2;&#x6570;lParam&#x6240;&#x6307;&#x5411;&#x7684;EVENTMSG&#x533A;&#x57DF;&#xFF0C;&#x5C31;&#x53EF;&#x4EE5;&#x8FBE;&#x5230;&#x6A21;&#x62DF;&#x6309;&#x952E;&#x7684;&#x6548;&#x679C;&#x3002;&#x4E0D;&#x8FC7;&#x7528;&#x8FD9;&#x4E2A;&#x94A9;&#x5B50;&#x6A21;&#x62DF;&#x952E;&#x76D8;&#x4E8B;&#x4EF6;&#x6709;&#x4E00;&#x4E2A;&#x526F;&#x4F5C;&#x7528;&#xFF0C;&#x5C31;&#x662F;&#x5B83;&#x4F1A;&#x9501;&#x5B9A;&#x771F;&#x5B9E;&#x7684;&#x9F20;&#x6807;&#x952E;&#x76D8;&#xFF0C;&#x4E0D;&#x8FC7;&#x5982;&#x679C;&#x4F60;&#x5C31;&#x662F;&#x60F3;&#x5728;&#x6A21;&#x62DF;&#x7684;&#x65F6;&#x5019;&#x4E0D;&#x4F1A;&#x53D7;&#x771F;&#x5B9E;&#x952E;&#x76D8;&#x64CD;&#x4F5C;&#x7684;&#x5E72;&#x6270;&#xFF0C;&#x90A3;&#x4E48;&#x7528;&#x7528;&#x5B83;&#x5012;&#x662F;&#x4E2A;&#x4E0D;&#x9519;&#x7684;&#x4E3B;&#x610F;&#x3002;<br/>3.&#x9A71;&#x52A8;&#x7EA7;&#x6A21;&#x62DF;&nbsp;&nbsp; <br/>&nbsp;&nbsp;&nbsp;&nbsp;<br/>&#x5982;&#x679C;&#x4E0A;&#x9762;&#x7684;&#x65B9;&#x6CD5;&#x4F60;&#x90FD;&#x8BD5;&#x8FC7;&#x4E86;&#xFF0C;&#x53EF;&#x662F;&#x4F60;&#x53D1;&#x73B0;&#x76EE;&#x6807;&#x7A0B;&#x5E8F;&#x5374;&#x4ECD;&#x7136;&#x987D;&#x56FA;&#x7684;&#x4E0D;&#x63A5;&#x53D7;&#x4F60;&#x6A21;&#x62DF;&#x7684;&#x6D88;&#x606F;&#xFF0C;&#x5BD2;~~~~~~~~~&#x8FD8;&#x597D;&#xFF0C;&#x6211;&#x8FD8;&#x5269;&#x4E0B;&#x6700;&#x540E;&#x4E00;&#x62DB;&#xFF0C;&#x8FD9;&#x5C31;&#x662F;&#x9A71;&#x52A8;&#x7EA7;&#x6A21;&#x62DF;&#xFF1A;&#x76F4;&#x63A5;&#x8BFB;&#x5199;&#x952E;&#x76D8;&#x7684;&#x786C;&#x4EF6;&#x7AEF;&#x53E3;&#xFF01;&nbsp;&nbsp; <br/>&#x6709;&#x4E00;&#x4E9B;&#x4F7F;&#x7528;DirectX&#x63A5;&#x53E3;&#x7684;&#x6E38;&#x620F;&#x7A0B;&#x5E8F;&#xFF0C;&#x5B83;&#x4EEC;&#x5728;&#x8BFB;&#x53D6;&#x952E;&#x76D8;&#x64CD;&#x4F5C;&#x65F6;&#x7ED5;&#x8FC7;&#x4E86;windows&#x7684;&#x6D88;&#x606F;&#x673A;&#x5236;&#xFF0C;&#x800C;&#x4F7F;&#x7528;DirectInput.&#x8FD9;&#x662F;&#x56E0;&#x4E3A;&#x6709;&#x4E9B;&#x6E38;&#x620F;&#x5BF9;&#x5B9E;&#x65F6;&#x6027;&#x63A7;&#x5236;&#x7684;&#x8981;&#x6C42;&#x6BD4;&#x8F83;&#x9AD8;&#xFF0C;&#x6BD4;&#x5982;&#x8D5B;&#x8F66;&#x6E38;&#x620F;&#xFF0C;&#x8981;&#x6C42;&#x4EE5;&#x6700;&#x5FEB;&#x901F;&#x5EA6;&#x54CD;&#x5E94;&#x952E;&#x76D8;&#x8F93;&#x5165;&#x3002;&#x800C;windows&#x6D88;&#x606F;&#x7531;&#x4E8E;&#x662F;&#x961F;&#x5217;&#x5F62;&#x5F0F;&#x7684;&#xFF0C;&#x6D88;&#x606F;&#x5728;&#x4F20;&#x9012;&#x65F6;&#x4F1A;&#x6709;&#x4E0D;&#x5C11;&#x5EF6;&#x8FDF;&#xFF0C;&#x6709;&#x65F6;1&#x79D2;&#x949F;&#x4E5F;&#x5C31;&#x4F20;&#x9012;&#x5341;&#x51E0;&#x6761;&#x6D88;&#x606F;&#xFF0C;&#x8FD9;&#x4E2A;&#x901F;&#x5EA6;&#x8FBE;&#x4E0D;&#x5230;&#x6E38;&#x620F;&#x7684;&#x8981;&#x6C42;&#x3002;&#x800C;DirectInput&#x5219;&#x7ED5;&#x8FC7;&#x4E86;windows&#x6D88;&#x606F;&#xFF0C;&#x76F4;&#x63A5;&#x4E0E;&#x952E;&#x76D8;&#x9A71;&#x52A8;&#x7A0B;&#x5E8F;&#x6253;&#x4EA4;&#x9053;&#xFF0C;&#x6548;&#x7387;&#x5F53;&#x7136;&#x63D0;&#x9AD8;&#x4E86;&#x4E0D;&#x5C11;&#x3002;&#x56E0;&#x6B64;&#x4E5F;&#x5C31;&#x9020;&#x6210;&#xFF0C;&#x5BF9;&#x8FD9;&#x6837;&#x7684;&#x7A0B;&#x5E8F;&#x65E0;&#x8BBA;&#x7528;PostMessage&#x6216;&#x8005;&#x662F;keybd_event&#x90FD;&#x4E0D;&#x4F1A;&#x6709;&#x53CD;&#x5E94;&#xFF0C;&#x56E0;&#x4E3A;&#x8FD9;&#x4E9B;&#x51FD;&#x6570;&#x90FD;&#x5728;&#x8F83;&#x9AD8;&#x5C42;&#x3002;&#x5BF9;&#x4E8E;&#x8FD9;&#x6837;&#x7684;&#x7A0B;&#x5E8F;&#xFF0C;&#x53EA;&#x597D;&#x7528;&#x76F4;&#x63A5;&#x8BFB;&#x5199;&#x952E;&#x76D8;&#x7AEF;&#x53E3;&#x7684;&#x65B9;&#x6CD5;&#x6765;&#x6A21;&#x62DF;&#x786C;&#x4EF6;&#x4E8B;&#x4EF6;&#x4E86;&#x3002;&#x8981;&#x7528;&#x8FD9;&#x4E2A;&#x65B9;&#x6CD5;&#x6765;&#x6A21;&#x62DF;&#x952E;&#x76D8;&#xFF0C;&#x9700;&#x8981;&#x5148;&#x4E86;&#x89E3;&#x4E00;&#x4E0B;&#x952E;&#x76D8;&#x7F16;&#x7A0B;&#x7684;&#x76F8;&#x5173;&#x77E5;&#x8BC6;&#x3002;&nbsp;&nbsp; <br/>&#x5728;DOS&#x65F6;&#x4EE3;&#xFF0C;&#x5F53;&#x7528;&#x6237;&#x6309;&#x4E0B;&#x6216;&#x8005;&#x653E;&#x5F00;&#x4E00;&#x4E2A;&#x952E;&#x65F6;&#xFF0C;&#x5C31;&#x4F1A;&#x4EA7;&#x751F;&#x4E00;&#x4E2A;&#x952E;&#x76D8;&#x4E2D;&#x65AD;(&#x5982;&#x679C;&#x952E;&#x76D8;&#x4E2D;&#x65AD;&#x662F;&#x5141;&#x8BB8;&#x7684;)&#xFF0C;&#x8FD9;&#x6837;&#x7A0B;&#x5E8F;&#x4F1A;&#x8DF3;&#x8F6C;&#x5230;BIOS&#x4E2D;&#x7684;&#x952E;&#x76D8;&#x4E2D;&#x65AD;&#x5904;&#x7406;&#x7A0B;&#x5E8F;&#x53BB;&#x6267;&#x884C;&#x3002;&#x6253;&#x5F00;windows&#x7684;&#x8BBE;&#x5907;&#x7BA1;&#x7406;&#x5668;&#xFF0C;&#x53EF;&#x4EE5;&#x67E5;&#x770B;&#x5230;&#x952E;&#x76D8;&#x63A7;&#x5236;&#x5668;&#x7531;&#x4E24;&#x4E2A;&#x7AEF;&#x53E3;&#x63A7;&#x5236;&#x3002;&#x5176;&#x4E2D;&amp;H60&#x662F;&#x6570;&#x636E;&#x7AEF;&#x53E3;&#xFF0C;&#x53EF;&#x4EE5;&#x8BFB;&#x51FA;&#x952E;&#x76D8;&#x6570;&#x636E;&#xFF0C;&#x800C;&amp;H64&#x662F;&#x63A7;&#x5236;&#x7AEF;&#x53E3;&#xFF0C;&#x7528;&#x6765;&#x53D1;&#x51FA;&#x63A7;&#x5236;&#x4FE1;&#x53F7;&#x3002;&#x4E5F;&#x5C31;&#x662F;&#xFF0C;&#x4ECE;&amp;H60&#x53F7;&#x7AEF;&#x53E3;&#x53EF;&#x4EE5;&#x8BFB;&#x6B64;&#x952E;&#x76D8;&#x7684;&#x6309;&#x952E;&#x4FE1;&#x606F;&#xFF0C;&#x5F53;&#x4ECE;&#x8FD9;&#x4E2A;&#x7AEF;&#x53E3;&#x8BFB;&#x53D6;&#x4E00;&#x4E2A;&#x5B57;&#x8282;&#xFF0C;&#x8BE5;&#x5B57;&#x8282;&#x7684;&#x4F4E;7&#x4F4D;&#x5C31;&#x662F;&#x6309;&#x952E;&#x7684;&#x626B;&#x63CF;&#x7801;&#xFF0C;&#x800C;&#x9AD8;1&#x4F4D;&#x5219;&#x8868;&#x793A;&#x662F;&#x6309;&#x4E0B;&#x952E;&#x8FD8;&#x662F;&#x91CA;&#x653E;&#x952E;&#x3002;&#x5F53;&#x6309;&#x4E0B;&#x952E;&#x65F6;&#xFF0C;&#x6700;&#x9AD8;&#x4F4D;&#x4E3A;0&#xFF0C;&#x79F0;&#x4E3A;&#x901A;&#x7801;&#xFF0C;&#x5F53;&#x91CA;&#x653E;&#x952E;&#x65F6;&#xFF0C;&#x6700;&#x9AD8;&#x4F4D;&#x4E3A;1&#xFF0C;&#x79F0;&#x4E3A;&#x65AD;&#x7801;&#x3002;&#x65E2;&#x7136;&#x4ECE;&#x8FD9;&#x4E2A;&#x7AEF;&#x53E3;&#x8BFB;&#x6570;&#x636E;&#x53EF;&#x4EE5;&#x83B7;&#x5F97;&#x6309;&#x952E;&#x4FE1;&#x606F;&#xFF0C;&#x90A3;&#x4E48;&#x5411;&#x8FD9;&#x4E2A;&#x7AEF;&#x53E3;&#x5199;&#x5165;&#x6570;&#x636E;&#x5C31;&#x53EF;&#x4EE5;&#x6A21;&#x62DF;&#x6309;&#x952E;&#x4E86;&#xFF01;&#x7528;&#x8FC7;QbASIC4.5&#x7684;&#x670B;&#x53CB;&#x53EF;&#x80FD;&#x77E5;&#x9053;&#xFF0C;QB&#x4E2D;&#x6709;&#x4E2A;OUT&#x547D;&#x4EE4;&#x53EF;&#x4EE5;&#x5411;&#x6307;&#x5B9A;&#x7AEF;&#x53E3;&#x5199;&#x5165;&#x6570;&#x636E;&#xFF0C;&#x800C;INP&#x51FD;&#x6570;&#x53EF;&#x4EE5;&#x8BFB;&#x53D6;&#x6307;&#x5B9A;&#x7AEF;&#x53E3;&#x7684;&#x6570;&#x636E;&#x3002;&#x90A3;&#x6211;&#x4EEC;&#x5148;&#x770B;&#x770B;&#x5982;&#x679C;&#x7528;QB&#x8BE5;&#x600E;&#x4E48;&#x5199;&#x4EE3;&#x7801;&#xFF1A;&nbsp;&nbsp; <br/>&#x5047;&#x5982;&#x4F60;&#x60F3;&#x6A21;&#x62DF;&#x6309;&#x4E0B;&#x4E00;&#x4E2A;&#x952E;&#xFF0C;&#x8FD9;&#x4E2A;&#x952E;&#x7684;&#x626B;&#x63CF;&#x7801;&#x4E3A;&amp;H50&#xFF0C;&#x90A3;&#x5C31;&#x8FD9;&#x6837;&nbsp;&nbsp; <br/>OUT&nbsp;&nbsp; &amp;H64,&amp;HD2&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; &#39;&#x628A;&#x6570;&#x636E;&amp;HD2&#x53D1;&#x9001;&#x5230;&amp;H64&#x7AEF;&#x53E3;&#x3002;&#x8FD9;&#x662F;&#x4E00;&#x4E2A;KBC&#x6307;&#x4EE4;&#xFF0C;&#x8868;&#x793A;&#x5C06;&#x8981;&#x5411;&#x952E;&#x76D8;&#x5199;&#x5165;&#x6570;&#x636E;&nbsp;&nbsp; <br/>OUT&nbsp;&nbsp; &amp;H60,&amp;H50&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; &#39;&#x628A;&#x626B;&#x63CF;&#x7801;&amp;H50&#x53D1;&#x9001;&#x5230;&amp;H60&#x7AEF;&#x53E3;&#xFF0C;&#x8868;&#x793A;&#x6A21;&#x62DF;&#x6309;&#x4E0B;&#x626B;&#x63CF;&#x7801;&#x4E3A;&amp;H50&#x7684;&#x8FD9;&#x4E2A;&#x952E;&nbsp;&nbsp;<br/>&#x90A3;&#x4E48;&#x8981;&#x91CA;&#x653E;&#x8FD9;&#x4E2A;&#x952E;&#x5462;&#xFF1F;&#x50CF;&#x8FD9;&#x6837;&#xFF0C;&#x53D1;&#x9001;&#x8BE5;&#x952E;&#x7684;&#x65AD;&#x7801;&#xFF1A;&nbsp;&nbsp; <br/>OUT&nbsp;&nbsp; &amp;H64,&amp;HD2&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; &#39;&#x628A;&#x6570;&#x636E;&amp;HD2&#x53D1;&#x9001;&#x5230;&amp;H64&#x7AEF;&#x53E3;&#x3002;&#x8FD9;&#x662F;&#x4E00;&#x4E2A;KBC&#x6307;&#x4EE4;&#xFF0C;&#x8868;&#x793A;&#x5C06;&#x8981;&#x5411;&#x952E;&#x76D8;&#x5199;&#x5165;&#x6570;&#x636E;&nbsp;&nbsp; <br/>OUT&nbsp;&nbsp; &amp;H60,(&amp;H50&nbsp;&nbsp; o&#114;&nbsp;&nbsp; &amp;H80)&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; &#39;&#x628A;&#x626B;&#x63CF;&#x7801;&amp;H50&#x4E0E;&#x6570;&#x636E;&amp;H80&#x8FDB;&#x884C;&#x6216;&#x8FD0;&#x7B97;&#xFF0C;&#x53EF;&#x4EE5;&#x628A;&#x5B83;&#x7684;&#x9AD8;&#x4F4D;&#x7F6E;1&#xFF0C;&#x5F97;&#x5230;&#x65AD;&#x7801;&#xFF0C;&#x8868;&#x793A;&#x91CA;&#x653E;&#x8FD9;&#x4E2A;&#x952E;&nbsp;&nbsp; <br/>&#x597D;&#x4E86;&#xFF0C;&#x73B0;&#x5728;&#x7684;&#x95EE;&#x9898;&#x5C31;&#x662F;&#x5728;VB&#x4E2D;&#x5982;&#x4F55;&#x5411;&#x7AEF;&#x53E3;&#x5199;&#x5165;&#x6570;&#x636E;&#x4E86;&#x3002;&#x56E0;&#x4E3A;&#x5728;windows&#x4E2D;&#xFF0C;&#x666E;&#x901A;&#x5E94;&#x7528;&#x7A0B;&#x5E8F;&#x662F;&#x65E0;&#x6743;&#x64CD;&#x4F5C;&#x7AEF;&#x53E3;&#x7684;&#xFF0C;&#x4E8E;&#x662F;&#x6211;&#x4EEC;&#x5C31;&#x9700;&#x8981;&#x4E00;&#x4E2A;&#x9A71;&#x52A8;&#x7A0B;&#x5E8F;&#x6765;&#x5E2E;&#x52A9;&#x6211;&#x4EEC;&#x5B9E;&#x73B0;&#x3002;&#x5728;&#x8FD9;&#x91CC;&#x6211;&#x4EEC;&#x53EF;&#x4EE5;&#x4F7F;&#x7528;&#x4E00;&#x4E2A;&#x7EC4;&#x4EF6;WINIO&#x6765;&#x5B8C;&#x6210;&#x8BFB;&#x5199;&#x7AEF;&#x53E3;&#x64CD;&#x4F5C;&#x3002;&#x4EC0;&#x4E48;&#x662F;WINIO&#xFF1F;WINIO&#x662F;&#x4E00;&#x4E2A;&#x5168;&#x514D;&#x8D39;&#x7684;&#x3001;&#x65E0;&#x9700;&#x6CE8;&#x518C;&#x7684;&#x3001;&#x542B;&#x6E90;&#x7A0B;&#x5E8F;&#x7684;WINDOWS2000&#x7AEF;&#x53E3;&#x64CD;&#x4F5C;&#x9A71;&#x52A8;&#x7A0B;&#x5E8F;&#x7EC4;&#x4EF6;(&#x53EF;&#x4EE5;&#x5230;http://www.internals.com/&#x4E0A;&#x53BB;&#x4E0B;&#x8F7D;)&#x3002;&#x5B83;&#x4E0D;&#x4EC5;&#x53EF;&#x4EE5;&#x64CD;&#x4F5C;&#x7AEF;&#x53E3;&#xFF0C;&#x8FD8;&#x53EF;&#x4EE5;&#x64CD;&#x4F5C;&#x5185;&#x5B58;&#xFF1B;&#x4E0D;&#x4EC5;&#x80FD;&#x5728;VB&#x4E0B;&#x7528;&#xFF0C;&#x8FD8;&#x53EF;&#x4EE5;&#x5728;DELPHI&#x3001;VC&#x7B49;&#x5176;&#x5B83;&#x73AF;&#x5883;&#x4E0B;&#x4F7F;&#x7528;&#xFF0C;&#x6027;&#x80FD;&#x7279;&#x522B;&#x4F18;&#x5F02;&#x3002;&#x4E0B;&#x8F7D;&#x8BE5;&#x7EC4;&#x4EF6;&#xFF0C;&#x89E3;&#x538B;&#x7F29;&#x540E;&#x53EF;&#x4EE5;&#x770B;&#x5230;&#x51E0;&#x4E2A;&#x6587;&#x4EF6;&#x5939;&#xFF0C;&#x5176;&#x4E2D;Release&#x6587;&#x4EF6;&#x5939;&#x4E0B;&#x7684;3&#x4E2A;&#x6587;&#x4EF6;&#x5C31;&#x662F;&#x6211;&#x4EEC;&#x9700;&#x8981;&#x7684;&#xFF0C;&#x8FD9;3&#x4E2A;&#x6587;&#x4EF6;&#x662F;WinIo.sys(&#x7528;&#x4E8E;win&nbsp;&nbsp; xp&#x4E0B;&#x7684;&#x9A71;&#x52A8;&#x7A0B;&#x5E8F;)&#xFF0C;WINIO.VXD(&#x7528;&#x4E8E;win&nbsp;&nbsp; 98&#x4E0B;&#x7684;&#x9A71;&#x52A8;&#x7A0B;&#x5E8F;)&#xFF0C;WinIo.dll(&#x5C01;&#x88C5;&#x51FD;&#x6570;&#x7684;&#x52A8;&#x6001;&#x94FE;&#x63A5;&#x5E93;)&#xFF0C;&#x6211;&#x4EEC;&#x53EA;&#x9700;&#x8981;&#x8C03;&#x7528;WinIo.dll&#x4E2D;&#x7684;&#x51FD;&#x6570;&#xFF0C;&#x7136;&#x540E;WinIo.dll&#x5C31;&#x4F1A;&#x5B89;&#x88C5;&#x5E76;&#x8C03;&#x7528;&#x9A71;&#x52A8;&#x7A0B;&#x5E8F;&#x6765;&#x5B8C;&#x6210;&#x76F8;&#x5E94;&#x7684;&#x529F;&#x80FD;&#x3002;&#x503C;&#x5F97;&#x4E00;&#x63D0;&#x7684;&#x662F;&#x8FD9;&#x4E2A;&#x7EC4;&#x4EF6;&#x5B8C;&#x5168;&#x662F;&#x7EFF;&#x8272;&#x7684;&#xFF0C;&#x65E0;&#x9700;&#x5B89;&#x88C5;&#xFF0C;&#x4F60;&#x53EA;&#x9700;&#x8981;&#x628A;&#x8FD9;3&#x4E2A;&#x6587;&#x4EF6;&#x590D;&#x5236;&#x5230;&#x4E0E;&#x4F60;&#x7684;&#x7A0B;&#x5E8F;&#x76F8;&#x540C;&#x7684;&#x6587;&#x4EF6;&#x5939;&#x4E0B;&#x5C31;&#x53EF;&#x4EE5;&#x4F7F;&#x7528;&#x4E86;&#x3002;&#x7528;&#x6CD5;&#x5F88;&#x7B80;&#x5355;&#xFF0C;&#x5148;&#x7528;&#x91CC;&#x9762;&#x7684;InitializeWinIo&#x51FD;&#x6570;&#x5B89;&#x88C5;&#x9A71;&#x52A8;&#x7A0B;&#x5E8F;&#xFF0C;&#x7136;&#x540E;&#x5C31;&#x53EF;&#x4EE5;&#x7528;GetPortVal&#x6765;&#x8BFB;&#x53D6;&#x7AEF;&#x53E3;&#x6216;&#x8005;&#x7528;SetPortVal&#x6765;&#x5199;&#x5165;&#x7AEF;&#x53E3;&#x4E86;&#x3002;&#x597D;&#xFF0C;&#x8BA9;&#x6211;&#x4EEC;&#x6765;&#x505A;&#x4E00;&#x4E2A;&#x9A71;&#x52A8;&#x7EA7;&#x7684;&#x952E;&#x76D8;&#x6A21;&#x62DF;&#x5427;&#x3002;&#x5148;&#x628A;winio&#x7684;3&#x4E2A;&#x6587;&#x4EF6;&#x62F7;&#x8D1D;&#x5230;&#x4F60;&#x7684;&#x7A0B;&#x5E8F;&#x7684;&#x6587;&#x4EF6;&#x5939;&#x4E0B;&#xFF0C;&#x7136;&#x540E;&#x5728;VB&#x4E2D;&#x65B0;&#x5EFA;&#x4E00;&#x4E2A;&#x5DE5;&#x7A0B;&#xFF0C;&#x6DFB;&#x52A0;&#x4E00;&#x4E2A;&#x6A21;&#x5757;&#xFF0C;&#x5728;&#x6A21;&#x5757;&#x4E2D;&#x52A0;&#x5165;&#x4E0B;&#x9762;&#x7684;winio&#x51FD;&#x6570;&#x58F0;&#x660E;:&nbsp;&nbsp; <br/>&nbsp;&nbsp;&nbsp;&nbsp;<br/>&#x590D;&#x5236;&#x5185;&#x5BB9;&#x5230;&#x526A;&#x8D34;&#x677F; &#x7A0B;&#x5E8F;&#x4EE3;&#x7801;Declare Function MapPhysToLin Lib &#34;WinIo.dll&#34; (ByVal PhysAddr As Long, ByVal PhysSize As Long, ByRef PhysMemHandle) As Long<br/>Declare Function UnmapPhysicalMemory Lib &#34;WinIo.dll&#34; (ByVal PhysMemHandle, ByVal LinAddr) As Boolean<br/>Declare Function GetPhysLong Lib &#34;WinIo.dll&#34; (ByVal PhysAddr As Long, ByRef PhysVal As Long) As Boolean<br/>Declare Function SetPhysLong Lib &#34;WinIo.dll&#34; (ByVal PhysAddr As Long, ByVal PhysVal As Long) As Boolean<br/>Declare Function GetPortVal Lib &#34;WinIo.dll&#34; (ByVal PortAddr As Integer, ByRef PortVal As Long, ByVal bSize As Byte) As Boolean<br/>Declare Function SetPortVal Lib &#34;WinIo.dll&#34; (ByVal PortAddr As Integer, ByVal PortVal As Long, ByVal bSize As Byte) As Boolean<br/>Declare Function InitializeWinIo Lib &#34;WinIo.dll&#34; () As Boolean<br/>Declare Function ShutdownWinIo Lib &#34;WinIo.dll&#34; () As Boolean<br/>Declare Function InstallWinIoDriver Lib &#34;WinIo.dll&#34; (ByVal DriverPath As String, ByVal Mode As Integer) As Boolean<br/>Declare Function RemoveWinIoDriver Lib &#34;WinIo.dll&#34; () As Boolean<br/>&#39;&nbsp;&nbsp; ------------------------------------&#x4EE5;&#x4E0A;&#x662F;WINIO&#x51FD;&#x6570;&#x58F0;&#x660E;-------------------------------------------<br/>Declare Function MapVirtualKey Lib &#34;user32&#34; Alias &#34;MapVirtualKeyA&#34; (ByVal wCode As Long, ByVal wMapType As Long) As Long<br/>&#39;-----------------------------------&#x4EE5;&#x4E0A;&#x662F;WIN32&nbsp;&nbsp; API&#x51FD;&#x6570;&#x58F0;&#x660E;-----------------------------------------<br/>&#x518D;&#x6DFB;&#x52A0;&#x4E0B;&#x9762;&#x8FD9;&#x4E2A;&#x8FC7;&#x7A0B;&#xFF1A;&nbsp;&nbsp;<br/> <br/>&#x590D;&#x5236;&#x5185;&#x5BB9;&#x5230;&#x526A;&#x8D34;&#x677F; &#x7A0B;&#x5E8F;&#x4EE3;&#x7801;Sub KBCWait4IBE()&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; &#39;&#x7B49;&#x5F85;&#x952E;&#x76D8;&#x7F13;&#x51B2;&#x533A;&#x4E3A;&#x7A7A;<br/>&nbsp;&nbsp;&nbsp;&nbsp;Dim dwVal&nbsp;&nbsp;&nbsp;&nbsp; As Long<br/>&nbsp;&nbsp;&nbsp;&nbsp;Do<br/>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;GetPortVal &amp;H64, dwVal, 1<br/>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&#39;&#x8FD9;&#x53E5;&#x8868;&#x793A;&#x4ECE;&amp;H64&#x7AEF;&#x53E3;&#x8BFB;&#x53D6;&#x4E00;&#x4E2A;&#x5B57;&#x8282;&#x5E76;&#x628A;&#x8BFB;&#x51FA;&#x7684;&#x6570;&#x636E;&#x653E;&#x5230;&#x53D8;&#x91CF;dwVal&#x4E2D;<br/>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&#39;GetPortVal&#x51FD;&#x6570;&#x7684;&#x7528;&#x6CD5;&#x662F;GetPortVal&nbsp;&nbsp; &#x7AEF;&#x53E3;&#x53F7;,&#x5B58;&#x653E;&#x8BFB;&#x51FA;&#x6570;&#x636E;&#x7684;&#x53D8;&#x91CF;,&#x8BFB;&#x5165;&#x7684;&#x957F;&#x5EA6;<br/>&nbsp;&nbsp;&nbsp;&nbsp;Loop While (dwVal And &amp;H2)<br/>End Sub<br/>&#x4E0A;&#x9762;&#x7684;&#x662F;&#x4E00;&#x4E2A;&#x6839;&#x636E;KBC&#x89C4;&#x8303;&#x5199;&#x7684;&#x8FC7;&#x7A0B;&#xFF0C;&#x5B83;&#x7684;&#x4F5C;&#x7528;&#x662F;&#x5728;&#x5411;&#x952E;&#x76D8;&#x7AEF;&#x53E3;&#x5199;&#x5165;&#x6570;&#x636E;&#x524D;&#x7B49;&#x5F85;&#x4E00;&#x6BB5;&#x65F6;&#x95F4;&#xFF0C;&#x540E;&#x9762;&#x5C06;&#x4F1A;&#x7528;&#x5230;&#x3002;&nbsp;&nbsp; <br/>&#x7136;&#x540E;&#x518D;&#x6DFB;&#x52A0;&#x5982;&#x4E0B;&#x8FC7;&#x7A0B;&#xFF0C;&#x8FD9;2&#x4E2A;&#x8FC7;&#x7A0B;&#x7528;&#x6765;&#x6A21;&#x62DF;&#x6309;&#x952E;&#xFF1A;&nbsp;&nbsp; <br/>&#160;&#160;&#160;&#160;<br/>&#x590D;&#x5236;&#x5185;&#x5BB9;&#x5230;&#x526A;&#x8D34;&#x677F; &#x7A0B;&#x5E8F;&#x4EE3;&#x7801;Public Const KBC_KEY_CMD = &amp;H64&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; &#39;&#x952E;&#x76D8;&#x547D;&#x4EE4;&#x7AEF;&#x53E3;<br/>Public Const KBC_KEY_DATA = &amp;H60&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; &#39;&#x952E;&#x76D8;&#x6570;&#x636E;&#x7AEF;&#x53E3;<br/>Sub MyKeyDown(ByVal vKeyCoad As Long)<br/>&nbsp;&nbsp;&nbsp;&nbsp;&#39;&#x8FD9;&#x4E2A;&#x7528;&#x6765;&#x6A21;&#x62DF;&#x6309;&#x4E0B;&#x952E;&#xFF0C;&#x53C2;&#x6570;vKeyCoad&#x4F20;&#x5165;&#x6309;&#x952E;&#x7684;&#x865A;&#x62DF;&#x7801;<br/>&nbsp;&nbsp;&nbsp;&nbsp;Dim btScancode&nbsp;&nbsp;&nbsp;&nbsp; As Long<br/>&nbsp;&nbsp;&nbsp;&nbsp;btScancode = MapVirtualKey(vKeyCoad, 0)<br/>&nbsp;&nbsp;&nbsp;&nbsp;<br/>&nbsp;&nbsp;&nbsp;&nbsp;KBCWait4IBE&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; &#39;&#x53D1;&#x9001;&#x6570;&#x636E;&#x524D;&#x5E94;&#x8BE5;&#x5148;&#x7B49;&#x5F85;&#x952E;&#x76D8;&#x7F13;&#x51B2;&#x533A;&#x4E3A;&#x7A7A;<br/>&nbsp;&nbsp;&nbsp;&nbsp;SetPortVal KBC_KEY_CMD, &amp;HD2, 1&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; &#39;&#x53D1;&#x9001;&#x952E;&#x76D8;&#x5199;&#x5165;&#x547D;&#x4EE4;<br/>&nbsp;&nbsp;&nbsp;&nbsp;&#39;SetPortVal&#x51FD;&#x6570;&#x7528;&#x4E8E;&#x5411;&#x7AEF;&#x53E3;&#x5199;&#x5165;&#x6570;&#x636E;&#xFF0C;&#x5B83;&#x7684;&#x7528;&#x6CD5;&#x662F;SetPortVal&nbsp;&nbsp; &#x7AEF;&#x53E3;&#x53F7;,&#x6B32;&#x5199;&#x5165;&#x7684;&#x6570;&#x636E;&#xFF0C;&#x5199;&#x5165;&#x6570;&#x636E;&#x7684;&#x957F;&#x5EA6;<br/>&nbsp;&nbsp;&nbsp;&nbsp;KBCWait4IBE<br/>&nbsp;&nbsp;&nbsp;&nbsp;SetPortVal KBC_KEY_DATA, btScancode, 1&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; &#39;&#x5199;&#x5165;&#x6309;&#x952E;&#x4FE1;&#x606F;,&#x6309;&#x4E0B;&#x952E;<br/>End Sub<br/>Sub MyKeyUp(ByVal vKeyCoad As Long)<br/>&nbsp;&nbsp;&nbsp;&nbsp;&#39;&#x8FD9;&#x4E2A;&#x7528;&#x6765;&#x6A21;&#x62DF;&#x91CA;&#x653E;&#x952E;&#xFF0C;&#x53C2;&#x6570;vKeyCoad&#x4F20;&#x5165;&#x6309;&#x952E;&#x7684;&#x865A;&#x62DF;&#x7801;<br/>&nbsp;&nbsp;&nbsp;&nbsp;Dim btScancode&nbsp;&nbsp;&nbsp;&nbsp; As Long<br/>&nbsp;&nbsp;&nbsp;&nbsp;btScancode = MapVirtualKey(vKeyCoad, 0)<br/>&nbsp;&nbsp;&nbsp;&nbsp;<br/>&nbsp;&nbsp;&nbsp;&nbsp;KBCWait4IBE&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; &#39;&#x7B49;&#x5F85;&#x952E;&#x76D8;&#x7F13;&#x51B2;&#x533A;&#x4E3A;&#x7A7A;<br/>&nbsp;&nbsp;&nbsp;&nbsp;SetPortVal KBC_KEY_CMD, &amp;HD2, 1&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; &#39;&#x53D1;&#x9001;&#x952E;&#x76D8;&#x5199;&#x5165;&#x547D;&#x4EE4;<br/>&nbsp;&nbsp;&nbsp;&nbsp;KBCWait4IBE<br/>&nbsp;&nbsp;&nbsp;&nbsp;SetPortVal KBC_KEY_DATA, (btScancode o&#114; &amp;H80), 1&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; &#39;&#x5199;&#x5165;&#x6309;&#x952E;&#x4FE1;&#x606F;&#xFF0C;&#x91CA;&#x653E;&#x952E;<br/>End Sub<br/>&#x5B9A;&#x4E49;&#x4E86;&#x4E0A;&#x9762;&#x7684;&#x8FC7;&#x7A0B;&#x540E;&#xFF0C;&#x5C31;&#x53EF;&#x4EE5;&#x7528;&#x5B83;&#x6765;&#x6A21;&#x62DF;&#x952E;&#x76D8;&#x8F93;&#x5165;&#x4E86;&#x3002;&#x5728;&#x7A97;&#x4F53;&#x6A21;&#x5757;&#x4E2D;&#x6DFB;&#x52A0;&#x4E00;&#x4E2A;&#x5B9A;&#x65F6;&#x5668;&#x63A7;&#x4EF6;&#xFF0C;&#x7136;&#x540E;&#x52A0;&#x5165;&#x4EE5;&#x4E0B;&#x4EE3;&#x7801;&#xFF1A;&nbsp;&nbsp; <br/>&nbsp;&nbsp;&nbsp;&nbsp;<br/>&#x590D;&#x5236;&#x5185;&#x5BB9;&#x5230;&#x526A;&#x8D34;&#x677F; &#x7A0B;&#x5E8F;&#x4EE3;&#x7801;Private Sub Form_Load()<br/>&nbsp;&nbsp;&nbsp;&nbsp;If InitializeWinIo = False Then<br/>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&#39;&#x7528;InitializeWinIo&#x51FD;&#x6570;&#x52A0;&#x8F7D;&#x9A71;&#x52A8;&#x7A0B;&#x5E8F;&#xFF0C;&#x5982;&#x679C;&#x6210;&#x529F;&#x4F1A;&#x8FD4;&#x56DE;true&#xFF0C;&#x5426;&#x5219;&#x8FD4;&#x56DE;false<br/>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;MsgBox &#34;&#x9A71;&#x52A8;&#x7A0B;&#x5E8F;&#x52A0;&#x8F7D;&#x5931;&#x8D25;!&#34;<br/>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Unload Me<br/>&nbsp;&nbsp;&nbsp;&nbsp;End If<br/>&nbsp;&nbsp;&nbsp;&nbsp;Timer1.Interval = 3000<br/>&nbsp;&nbsp;&nbsp;&nbsp;Timer1.Enabled = True<br/>End Sub<br/>Private Sub Form_Unload(Cancel As Integer)<br/> ShutdownWinIo&nbsp;&nbsp; &#39;&#x7A0B;&#x5E8F;&#x7ED3;&#x675F;&#x65F6;&#x8BB0;&#x5F97;&#x7528;ShutdownWinIo&#x51FD;&#x6570;&#x5378;&#x8F7D;&#x9A71;&#x52A8;&#x7A0B;&#x5E8F;<br/>End Sub<br/>Private Sub Timer1_Timer()<br/>&nbsp;&nbsp;&nbsp;&nbsp;Dim VK_A As Long<br/>&nbsp;&nbsp;&nbsp;&nbsp;VK_A = &amp;H41<br/>&nbsp;&nbsp;&nbsp;&nbsp;MyKeyDown VK_A<br/>&nbsp;&nbsp;&nbsp;&nbsp;MyKeyUp VK_A&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; &#39;&#x6A21;&#x62DF;&#x6309;&#x4E0B;&#x5E76;&#x91CA;&#x653E;A&#x952E;<br/>End Sub<br/>&#x8FD0;&#x884C;&#x4E0A;&#x9762;&#x7684;&#x7A0B;&#x5E8F;&#xFF0C;&#x5C31;&#x4F1A;&#x6BCF;&#x9694;3&#x79D2;&#x949F;&#x6A21;&#x62DF;&#x6309;&#x4E0B;&#x4E00;&#x6B21;A&#x952E;&#xFF0C;&#x8BD5;&#x8BD5;&#x770B;&#xFF0C;&#x600E;&#x4E48;&#x6837;&#xFF0C;&#x662F;&#x4E0D;&#x662F;&#x5BF9;&#x6240;&#x6709;&#x7A0B;&#x5E8F;&#x90FD;&#x6709;&#x6548;&#x679C;&#x4E86;&#xFF1F;&nbsp;&nbsp; <br/>&#x9700;&#x8981;&#x6CE8;&#x610F;&#x7684;&#x95EE;&#x9898;&#xFF1A;&nbsp;&nbsp; <br/>&#x8981;&#x5728;VB&#x7684;&#x8C03;&#x8BD5;&#x6A21;&#x5F0F;&#x4E0B;&#x4F7F;&#x7528;WINIO&#xFF0C;&#x9700;&#x8981;&#x628A;&#x90A3;3&#x4E2A;&#x6587;&#x4EF6;&#x62F7;&#x8D1D;&#x5230;VB&#x7684;&#x5B89;&#x88C5;&#x76EE;&#x5F55;&#x4E2D;&#x3002;&nbsp;&nbsp; <br/>&#x952E;&#x76D8;&#x4E0A;&#x6709;&#x4E9B;&#x952E;&#x5C5E;&#x4E8E;&#x6269;&#x5C55;&#x952E;(&#x6BD4;&#x5982;&#x952E;&#x76D8;&#x4E0A;&#x7684;&#x65B9;&#x5411;&#x952E;&#x5C31;&#x662F;&#x6269;&#x5C55;&#x952E;)&#xFF0C;&#x5BF9;&#x4E8E;&#x6269;&#x5C55;&#x952E;&#x4E0D;&#x5E94;&#x8BE5;&#x7528;&#x4E0A;&#x9762;&#x7684;MyKeyDown&#x548C;MyKeyUp&#x8FC7;&#x7A0B;&#x6765;&#x6A21;&#x62DF;&#xFF0C;&#x53EF;&#x4EE5;&#x4F7F;&#x7528;&#x4E0B;&#x9762;&#x7684;2&#x4E2A;&#x8FC7;&#x7A0B;&#x6765;&#x51C6;&#x786E;&#x6A21;&#x62DF;&#x6269;&#x5C55;&#x952E;&#xFF1A;&nbsp;&nbsp;<br/> <br/>&#x590D;&#x5236;&#x5185;&#x5BB9;&#x5230;&#x526A;&#x8D34;&#x677F; &#x7A0B;&#x5E8F;&#x4EE3;&#x7801;Sub&nbsp;&nbsp; MyKeyDownEx(ByVal&nbsp;&nbsp; vKeyCoad&nbsp;&nbsp; As&nbsp;&nbsp; Long)&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; &#39;&#x6A21;&#x62DF;&#x6269;&#x5C55;&#x952E;&#x6309;&#x4E0B;&#xFF0C;&#x53C2;&#x6570;vKeyCoad&#x662F;&#x6269;&#x5C55;&#x952E;&#x7684;&#x865A;&#x62DF;&#x7801;&nbsp;&nbsp; <br/>&#160;&#160;&#160;&#160;Dim&nbsp;&nbsp; btScancode&nbsp;&nbsp; As&nbsp;&nbsp; Long&nbsp;&nbsp; <br/>&#160;&#160;&#160;&#160;btScancode&nbsp;&nbsp; =&nbsp;&nbsp; MapVirtualKey(vKeyCoad,&nbsp;&nbsp; 0)&nbsp;&nbsp; <br/>&#160;&#160;&#160;&#160;<br/>&#160;&#160;&#160;&#160;KBCWait4IBE&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; &#39;&#x7B49;&#x5F85;&#x952E;&#x76D8;&#x7F13;&#x51B2;&#x533A;&#x4E3A;&#x7A7A;&nbsp;&nbsp; <br/>&#160;&#160;&#160;&#160;SetPortVal&nbsp;&nbsp; KBC_KEY_CMD,&nbsp;&nbsp; &amp;HD2,&nbsp;&nbsp; 1&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; &#39;&#x53D1;&#x9001;&#x952E;&#x76D8;&#x5199;&#x5165;&#x547D;&#x4EE4;&nbsp;&nbsp; <br/>&#160;&#160;&#160;&#160;KBCWait4IBE&nbsp;&nbsp; <br/>&#160;&#160;&#160;&#160;SetPortVal&nbsp;&nbsp; KBC_KEY_DATA,&nbsp;&nbsp; &amp;HE0,&nbsp;&nbsp; 1&nbsp;&nbsp;&nbsp;&nbsp; &#39;&#x5199;&#x5165;&#x6269;&#x5C55;&#x952E;&#x6807;&#x5FD7;&#x4FE1;&#x606F;&nbsp;&nbsp; <br/>&#160;&#160;&#160;&#160;<br/>&#160;&#160;&#160;&#160;<br/>&#160;&#160;&#160;&#160;KBCWait4IBE&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; &#39;&#x7B49;&#x5F85;&#x952E;&#x76D8;&#x7F13;&#x51B2;&#x533A;&#x4E3A;&#x7A7A;&nbsp;&nbsp; <br/>&#160;&#160;&#160;&#160;SetPortVal&nbsp;&nbsp; KBC_KEY_CMD,&nbsp;&nbsp; &amp;HD2,&nbsp;&nbsp; 1&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; &#39;&#x53D1;&#x9001;&#x952E;&#x76D8;&#x5199;&#x5165;&#x547D;&#x4EE4;&nbsp;&nbsp; <br/>&#160;&#160;&#160;&#160;KBCWait4IBE&nbsp;&nbsp; <br/>&#160;&#160;&#160;&#160;SetPortVal&nbsp;&nbsp; KBC_KEY_DATA,&nbsp;&nbsp; btScancode,&nbsp;&nbsp; 1&nbsp;&nbsp;&nbsp;&nbsp; &#39;&#x5199;&#x5165;&#x6309;&#x952E;&#x4FE1;&#x606F;,&#x6309;&#x4E0B;&#x952E;&nbsp;&nbsp; <br/>End&nbsp;&nbsp; Sub&nbsp;&nbsp; <br/>Sub&nbsp;&nbsp; MyKeyUpEx(ByVal&nbsp;&nbsp; vKeyCoad&nbsp;&nbsp; As&nbsp;&nbsp; Long)&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; &#39;&#x6A21;&#x62DF;&#x6269;&#x5C55;&#x952E;&#x5F39;&#x8D77;&nbsp;&nbsp; <br/>&#160;&#160;&#160;&#160;Dim&nbsp;&nbsp; btScancode&nbsp;&nbsp; As&nbsp;&nbsp; Long&nbsp;&nbsp; <br/>&#160;&#160;&#160;&#160;btScancode&nbsp;&nbsp; =&nbsp;&nbsp; MapVirtualKey(vKeyCoad,&nbsp;&nbsp; 0)&nbsp;&nbsp; <br/>&#160;&#160;&#160;&#160;<br/>&#160;&#160;&#160;&#160;KBCWait4IBE&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; &#39;&#x7B49;&#x5F85;&#x952E;&#x76D8;&#x7F13;&#x51B2;&#x533A;&#x4E3A;&#x7A7A;&nbsp;&nbsp; <br/>&#160;&#160;&#160;&#160;SetPortVal&nbsp;&nbsp; KBC_KEY_CMD,&nbsp;&nbsp; &amp;HD2,&nbsp;&nbsp; 1&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; &#39;&#x53D1;&#x9001;&#x952E;&#x76D8;&#x5199;&#x5165;&#x547D;&#x4EE4;&nbsp;&nbsp; <br/>&#160;&#160;&#160;&#160;KBCWait4IBE&nbsp;&nbsp; <br/>&#160;&#160;&#160;&#160;SetPortVal&nbsp;&nbsp; KBC_KEY_DATA,&nbsp;&nbsp; &amp;HE0,&nbsp;&nbsp; 1&nbsp;&nbsp;&nbsp;&nbsp; &#39;&#x5199;&#x5165;&#x6269;&#x5C55;&#x952E;&#x6807;&#x5FD7;&#x4FE1;&#x606F;&nbsp;&nbsp; <br/>&#160;&#160;&#160;&#160;<br/>&#160;&#160;&#160;&#160;<br/>&#160;&#160;&#160;&#160;KBCWait4IBE&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; &#39;&#x7B49;&#x5F85;&#x952E;&#x76D8;&#x7F13;&#x51B2;&#x533A;&#x4E3A;&#x7A7A;&nbsp;&nbsp; <br/>&#160;&#160;&#160;&#160;SetPortVal&nbsp;&nbsp; KBC_KEY_CMD,&nbsp;&nbsp; &amp;HD2,&nbsp;&nbsp; 1&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; &#39;&#x53D1;&#x9001;&#x952E;&#x76D8;&#x5199;&#x5165;&#x547D;&#x4EE4;&nbsp;&nbsp; <br/>&#160;&#160;&#160;&#160;KBCWait4IBE&nbsp;&nbsp; <br/>&#160;&#160;&#160;&#160;SetPortVal&nbsp;&nbsp; KBC_KEY_DATA,&nbsp;&nbsp; (btScancode&nbsp;&nbsp; o&#114;&nbsp;&nbsp; &amp;H80),&nbsp;&nbsp; 1&nbsp;&nbsp;&nbsp;&nbsp; &#39;&#x5199;&#x5165;&#x6309;&#x952E;&#x4FE1;&#x606F;&#xFF0C;&#x91CA;&#x653E;&#x952E;&nbsp;&nbsp; <br/>End&nbsp;&nbsp; Sub<br/>&#x8FD8;&#x5E94;&#x8BE5;&#x6CE8;&#x610F;&#x7684;&#x662F;&#xFF0C;&#x5982;&#x679C;&#x8981;&#x4ECE;&#x6269;&#x5C55;&#x952E;&#x8F6C;&#x6362;&#x5230;&#x666E;&#x901A;&#x952E;&#xFF0C;&#x90A3;&#x4E48;&#x666E;&#x901A;&#x952E;&#x7684;KeyDown&#x4E8B;&#x4EF6;&#x5E94;&#x8BE5;&#x53D1;&#x9001;&#x4E24;&#x6B21;&#x3002;&#x4E5F;&#x5C31;&#x662F;&#x8BF4;&#xFF0C;&#x5982;&#x679C;&#x6211;&#x60F3;&#x6A21;&#x62DF;&#x5148;&#x6309;&#x4E0B;&#x4E00;&#x4E2A;&#x6269;&#x5C55;&#x952E;&#xFF0C;&#x518D;&#x6309;&#x4E0B;&#x4E00;&#x4E2A;&#x666E;&#x901A;&#x952E;&#xFF0C;&#x90A3;&#x4E48;&#x5C31;&#x5E94;&#x8BE5;&#x5411;&#x7AEF;&#x53E3;&#x53D1;&#x9001;&#x4E24;&#x6B21;&#x8BE5;&#x666E;&#x901A;&#x952E;&#x88AB;&#x6309;&#x4E0B;&#x7684;&#x4FE1;&#x606F;&#x3002;&#x6BD4;&#x5982;&#xFF0C;&#x6211;&#x60F3;&#x6A21;&#x62DF;&#x5148;&#x6309;&#x4E0B;&#x5DE6;&#x65B9;&#x5411;&#x952E;&#xFF0C;&#x518D;&#x6309;&#x4E0B;&#x7A7A;&#x683C;&#x952E;&#x8FD9;&#x4E2A;&#x4E8B;&#x4EF6;&#xFF0C;&#x7531;&#x4E8E;&#x5DE6;&#x65B9;&#x5411;&#x952E;&#x662F;&#x6269;&#x5C55;&#x952E;&#xFF0C;&#x7A7A;&#x683C;&#x952E;&#x662F;&#x666E;&#x901A;&#x952E;&#xFF0C;&#x90A3;&#x4E48;&#x6D41;&#x7A0B;&#x5C31;&#x5E94;&#x8BE5;&#x662F;&#x8FD9;&#x6837;&#x7684;&#xFF1A; <br/> <br/>&#x590D;&#x5236;&#x5185;&#x5BB9;&#x5230;&#x526A;&#x8D34;&#x677F; &#x7A0B;&#x5E8F;&#x4EE3;&#x7801;MyKeyDownEx&nbsp;&nbsp; VK_LEFT&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; &#39;&#x6309;&#x4E0B;&#x5DE6;&#x65B9;&#x5411;&#x952E;&nbsp;&nbsp; <br/>Sleep&nbsp;&nbsp; 200&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; &#39;&#x5EF6;&#x65F6;200&#x6BEB;&#x79D2;&nbsp;&nbsp; <br/>MyKeyUpEx&nbsp;&nbsp; VK_LEFT&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; &#39;&#x91CA;&#x653E;&#x5DE6;&#x65B9;&#x5411;&#x952E;&nbsp;&nbsp; <br/>Sleep&nbsp;&nbsp; 500&nbsp;&nbsp; <br/>MyKeyDown&nbsp;&nbsp; VK_SPACE&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; &#39;&#x6309;&#x4E0B;&#x7A7A;&#x683C;&#x952E;&#xFF0C;&#x6CE8;&#x610F;&#x8981;&#x53D1;&#x9001;&#x4E24;&#x6B21;&nbsp;&nbsp; <br/>MyKeyDown&nbsp;&nbsp; VK_SPACE&nbsp;&nbsp; <br/>Sleep&nbsp;&nbsp; 200&nbsp;&nbsp; <br/>MyKeyUp&nbsp;&nbsp; VK_SPACE&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; &#39;&#x91CA;&#x653E;&#x7A7A;&#x683C;&#x952E; <br/>dnawo&#x6CE8;&#xFF1A;&#x5B9E;&#x9645;&#x6D4B;&#x8BD5;&#x597D;&#x50CF;&#x5E76;&#x4E0D;&#x9700;&#x8981;&#x53D1;&#x9001;&#x4E24;&#x6B21;<br/>&#x590D;&#x5236;&#x5185;&#x5BB9;&#x5230;&#x526A;&#x8D34;&#x677F; &#x7A0B;&#x5E8F;&#x4EE3;&#x7801;Private Sub Timer1_Timer()<br/>&nbsp;&nbsp;&nbsp;&nbsp;MyKeyDownEx &amp;H27&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; &#39;&#x6309;&#x4E0B;&#x53F3;&#x65B9;&#x5411;&#x952E;<br/>&nbsp;&nbsp;&nbsp;&nbsp;MyKeyUpEx &amp;H27&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; &#39;&#x91CA;&#x653E;&#x53F3;&#x65B9;&#x5411;&#x952E;<br/>&nbsp;&nbsp;&nbsp;&nbsp;<br/>&nbsp;&nbsp;&nbsp;&nbsp;MyKeyDown &amp;H42&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; &#39;&#x6309;&#x4E0B;B&#x952E;<br/>&nbsp;&nbsp;&nbsp;&nbsp;MyKeyUp &amp;H42&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; &#39;&#x91CA;&#x653E;B&#x952E;<br/>End Sub<br/>&#x597D;&#x4E86;&#xFF0C;&#x76F8;&#x4FE1;&#x5230;&#x8FD9;&#x91CC;&#xFF0C;&#x4F60;&#x7684;&#x6A21;&#x62DF;&#x6309;&#x952E;&#x7A0B;&#x5E8F;&#x4E5F;&#x5C31;&#x5DEE;&#x4E0D;&#x591A;&#x4E86;&#xFF0C;&#x6D4B;&#x8BD5;&#x4E00;&#x4E0B;&#xFF0C;&#x662F;&#x4E0D;&#x662F;&#x5F88;&#x6709;&#x6548;&#x5462;&#xFF0C;&#x563F;&#x563F;~~~~&nbsp;&nbsp; <br/>WINIO&#x7EC4;&#x4EF6;&#x7684;&#x4E0B;&#x8F7D;&#x5730;&#x5740;&#xFF1A;http://www.114vip.com.cn/download/winio.zip<br/>&nbsp;&nbsp; <br/>4.&#x9AA8;&#x7070;&#x7EA7;&#x6A21;&#x62DF;<br/>&#x65B9;&#x6CD5;3&#x7B97;&#x662F;&#x5F88;&#x5E95;&#x5C42;&#x7684;&#x6A21;&#x62DF;&#x4E86;&#xFF0C;&#x6211;&#x73B0;&#x5728;&#x8FD8;&#x6CA1;&#x6709;&#x53D1;&#x73B0;&#x6709;&#x5B83;&#x6A21;&#x62DF;&#x65E0;&#x6548;&#x7684;&#x7A0B;&#x5E8F;&#x3002;&#x4F46;&#x662F;&#x5982;&#x679C;&#x4F60;&#x7528;&#x5C3D;&#x4E0A;&#x9762;&#x6240;&#x6709;&#x7684;&#x65B9;&#x6CD5;&#xFF0C;&#x4ECD;&#x7136;&#x65E0;&#x6548;&#x7684;&#x8BDD;&#xFF0C;&#x90A3;&#x4E48;&#x8FD8;&#x6709;&#x6700;&#x540E;&#x4E00;&#x4E2A;&#x65B9;&#x6CD5;&#xFF0C;&#x7EDD;&#x5BF9;&#x5BF9;&#x4EFB;&#x4F55;&#x7A0B;&#x5E8F;&#x90FD;&#x4F1A;&#x6709;&#x6548;&#xFF0C;&#x90A3;&#x5C31;&#x662F;&#xFF1A;&#x628A;&#x952E;&#x76D8;&#x62FF;&#x51FA;&#x6765;&#xFF0C;&#x8001;&#x8001;&#x5B9E;&#x5B9E;&#x5730;&#x6309;&#x4E0B;&#x53BB;&#x5427;&#x3002;~~~~ </p><p> + <a href="#CommentCard">&#x67E5;&#x770B;&#x5F53;&#x524D;&#x65E5;&#x5FD7;&#x8BC4;&#x8BBA;</a> (0)</p><p>&nbsp;<br/><br/><a href="wap.asp?do=Login">&#x767B;&#x5F55;</a></p><p><br/>&#x2500;&#x2500;&#x2500;&#x2500;&#x2500;&#x2500;&#x2500;&#x2500;&#x2500;&#x2500;&#x2500;&#x2500;</p><p><a href="wap.asp">&#x6728;&#x5B50;&#x5C4B;</a></p><p><a href="http://www.pjhome.net/wap.asp">PJBlog3&nbsp;v3.2.9.518</a>&nbsp;Inside.</p><p>Processed&nbsp;In&nbsp;0.301&nbsp;ms</p><do type="prev" label="&#x8FD4;&#x56DE;"><prev/></do></card><card id="postCommentCard"><p><b>&#x6807;&#x9898;&#x3A;</b> <a href="#MainCard">&#x56;&#x42;&#x6A21;&#x62DF;&#x952E;&#x76D8;&#x8F93;&#x5165;&#x7684;&#x4E;&#x79CD;&#x65B9;&#x6CD5;</a></p><p><br/>你没有权限发表评论</p><p><br/>&#x2500;&#x2500;&#x2500;&#x2500;&#x2500;&#x2500;&#x2500;&#x2500;&#x2500;&#x2500;&#x2500;&#x2500;</p><p><a href="wap.asp">&#x6728;&#x5B50;&#x5C4B;</a></p><p><a href="http://www.pjhome.net/wap.asp">PJBlog3&nbsp;v3.2.9.518</a>&nbsp;Inside.</p><p>Processed&nbsp;In&nbsp;0.301&nbsp;ms</p><do type="prev" label="&#x8FD4;&#x56DE;"><prev/></do></card><card id="CommentCard"><p>&#x6682;&#x65E0;&#x8BC4;&#x8BBA;</p><p><a href="#MainCard">&#x8FD4;&#x56DE;</a></p><p><br/>&#x2500;&#x2500;&#x2500;&#x2500;&#x2500;&#x2500;&#x2500;&#x2500;&#x2500;&#x2500;&#x2500;&#x2500;</p><p><a href="wap.asp">&#x6728;&#x5B50;&#x5C4B;</a></p><p><a href="http://www.pjhome.net/wap.asp">PJBlog3&nbsp;v3.2.9.518</a>&nbsp;Inside.</p><p>Processed&nbsp;In&nbsp;0.301&nbsp;ms</p><do type="prev" label="&#x8FD4;&#x56DE;"><prev/></do></card>
</wml>
