**如下:
using system;
using system.collections.generic;
using system.componentmodel;
using system.data;
using system.drawing;
using system.linq;
using system.text;
using system.windows.forms;
using system.runtime.interopservices;
//模擬鍵盤按下,此處一定要注意,寫入一次按下或彈起訊息的步驟!
btscancode = mapvirtualkey((byte)0x4a, 0); //按鍵「j」的虛擬鍵位**
kbcwait4ibe();
setportval(kbc_key_cmd, (intptr)0xd2, 1);
kbcwait4ibe();
setportval(kbc_key_data, (intptr)0xe2, 1);
kbcwait4ibe();
setportval(kbc_key_cmd, (intptr)0xd2, 1);
kbcwait4ibe();
setportval(kbc_key_data, (intptr)btscancode, 1);
thread.sleep(5);
//模擬彈起,步驟很重要
kbcwait4ibe();
if (setportval(0x64, (intptr)0xd2, 1) == false)
messagebox.show("彈起時");
kbcwait4ibe();
setportval(kbc_key_data, (intptr)0xe0, 1);
kbcwait4ibe();
if (setportval(0x64, (intptr)0xd2, 1) == false)
messagebox.show("彈起時");
kbcwait4ibe();
if ((setportval(0x60, (intptr)(btscancode | 0x80), 1)==false))
messagebox.show("彈起寫入失敗");
}private void form1_load(object sender, eventargs e)
private void form1_formclosed(object sender, formclosedeventargs e) }
}/*///附上虛擬鍵位碼表:
// mouse movements
move = 0x0001,
leftdown = 0x0002,
leftup = 0x0004,
rightdown = 0x0008,
rightup = 0x0010,
middledown = 0x0020,
//keyboard stuff
vk_lbutton = 1,
vk_rbutton = 2,
vk_cancel = 3,
vk_mbutton = 4,
vk_back = 8,
vk_tab = 9,
vk_clear = 12,
vk_return = 13,
vk_shift = 16,
vk_control = 17,
vk_menu = 18,
vk_pause = 19,
vk_capital = 20,
vk_escape = 27,
vk_space = 32,
vk_prior = 33,
vk_next = 34,
vk_end = 35,
vk_home = 36,
vk_left = 37,
vk_up = 38,
vk_right = 39,
vk_down = 40,
vk_select = 41,
vk_print = 42,
vk_execute = 43,
vk_snapshot = 44,
vk_insert = 45,
vk_delete = 46,
vk_help = 47,
vk_num0 = 48, //0
vk_num1 = 49, //1
vk_num2 = 50, //2
vk_num3 = 51, //3
vk_num4 = 52, //4
vk_num5 = 53, //5
vk_num6 = 54, //6
vk_num7 = 55, //7
vk_num8 = 56, //8
vk_num9 = 57, //9
vk_a = 65, //a
vk_b = 66, //b
vk_c = 67, //c
vk_d = 68, //d
vk_e = 69, //e
vk_f = 70, //f
vk_g = 71, //g
vk_h = 72, //h
vk_i = 73, //i
vk_j = 74, //j
vk_k = 75, //k
vk_l = 76, //l
vk_m = 77, //m
vk_n = 78, //n
vk_o = 79, //o
vk_p = 80, //p
vk_q = 81, //q
vk_r = 82, //r
vk_s = 83, //s
vk_t = 84, //t
vk_u = 85, //u
vk_v = 86, //v
vk_w = 87, //w
vk_x = 88, //x
vk_y = 89, //y
vk_z = 90, //z
vk_numpad0 = 96, //0
vk_numpad1 = 97, //1
vk_numpad2 = 98, //2
vk_numpad3 = 99, //3
vk_numpad4 = 100, //4
vk_numpad5 = 101, //5
vk_numpad6 = 102, //6
vk_numpad7 = 103, //7
vk_numpad8 = 104, //8
vk_numpad9 = 105, //9
vk_nultiply = 106,
vk_add = 107,
vk_separator = 108,
vk_subtract = 109,
vk_decimal = 110,
vk_divide = 111,
vk_f1 = 112,
vk_f2 = 113,
vk_f3 = 114,
vk_f4 = 115,
vk_f5 = 116,
vk_f6 = 117,
vk_f7 = 118,
vk_f8 = 119,
vk_f9 = 120,
vk_f10 = 121,
vk_f11 = 122,
vk_f12 = 123,
vk_numlock = 144,
vk_scroll = 145,
middleup = 0x0040,
xdown = 0x0080,
xup = 0x0100,
wheel = 0x0800,
virtualdesk = 0x4000,
absolute = 0x8000
*/
SendInput模擬鍵盤輸入的問題
最近接觸到這個函式,因此了解了一下,總結一下列在這。我了解它的出發點是如何通過它向活動視窗輸入字元,這是很多程式都有的功能 我猜visual assist x就用了這個功能 根據msdn,此函式模擬按鍵操作,將一些訊息插入鍵盤或滑鼠的輸入流中,windows對它進行處理,生成相應的wm keydow...
SendInput模擬鍵盤輸入的問題 《轉》
最近接觸到這個函式,因此了解了一下,總結一下列在這。我了解它的出發點是如何通過它向活動視窗輸入字元,這是很多程式都有的功能 我猜visual assist x就用了這個功能 根據msdn,此函式模擬按鍵操作,將一些訊息插入鍵盤或滑鼠的輸入流中,windows對它進行處理,生成相應的wm keydow...
C 從鍵盤輸入的方法
c 最基本的常用的輸入方式 包含標頭檔案 include 注意 不能接受空格和回車 int main 1 scanf 函式 包含標頭檔案 include scanf函式一般格式為scanf s st 但scanf預設回車和空格是輸入不同組之間的間隔和結束符號,所以輸入帶空格,tab或者回車的字串都是...