① c語言 怎樣模擬滑鼠鍵盤操作
函數原型:
VOID keybd_event( BYTE bVk, BYTE bScan, DWORD dwFlags, DWORD dwExtraInfo );
4個參數都是輸入參數。
bVk:鍵名,例如: VK_NUMPAD7,VK_BACK, VK_TAB,VK_SHIFT,VK_F1,。。。
keybd_event(VK_MENU,0xb8,0 , 0); -- 按下Alt 鍵
keybd_event(VK_MENU,0xb8,KEYEVENTF_KEYUP,0); -- 放開 Alt 鍵 (復位,彈上來)
===
下面程序模擬按 notepad 編輯器。等於C語言 system("notepad"); 彈出 記事本。
void simu_notepad()
{
keybd_event(VkKeyScan('N'),1,0,0);
keybd_event(VkKeyScan('N'),1,KEYEVENTF_KEYUP,0);
keybd_event(VkKeyScan('O'),0x98,0,0); keybd_event(VkKeyScan('O'),0x98,KEYEVENTF_KEYUP,0);
keybd_event(VkKeyScan('T'),0x94,0,0); keybd_event(VkKeyScan('T'),0x94,KEYEVENTF_KEYUP,0);
keybd_event(VkKeyScan('E'),0x92,0,0); keybd_event(VkKeyScan('E'),0x92,KEYEVENTF_KEYUP,0);
keybd_event(VkKeyScan('P'),0x99,0,0); keybd_event(VkKeyScan('P'),0x99,KEYEVENTF_KEYUP,0);
keybd_event(VkKeyScan('A'),0x9E,0,0); keybd_event(VkKeyScan('A'),0x9E,KEYEVENTF_KEYUP,0);
keybd_event(VkKeyScan('D'),0xA0,0,0); keybd_event(VkKeyScan('D'),0xA0,KEYEVENTF_KEYUP,0);
keybd_event(VK_RETURN,1,0,0);
keybd_event(VK_RETURN,1,KEYEVENTF_KEYUP,0);
}
② c語言模擬鍵盤操作
發送Windows消息,鍵盤消息就可以。
用Sendlhput API函數也可以完成。
③ c語言問題!!關於模擬鍵盤的輸入 我用c語言打開了個程序,需要往裡面依次輸入寫數,怎麼才能用語句
可以用文件操作啊,也可以用重載類的freopen
#include<stdio.h>
chara[10000];
intmain()
{
freopen("out.txt","w",stdout);
scanf("%d",a);
return0;
}
④ 我想知道用C語言怎麼寫一個控制鍵盤輸入的程序,比如讓鍵盤自動執行ctrl或shift功能等.請哪位高手幫幫忙
可以用普通的C語言來寫。調用User32.lib
的函數:
void keybd_event(BYTE bVirturalKey,BYTE bScanCode,
DWORD dwFlags,DWORD dwExtraInfo)
ctrl 鍵是 VK_CONTROL bScanCode = 0x9d
shift鍵是 VK_SHIFT 0xaa
撳鍵是 0,0
鍵彈上來是:KEYEVENTF_KEYUP,0
例如simu_keyboard.c程序,模擬 Alt-PrintScreen,把屏幕圖像放入剪切板。
頭文件:
#include <Windows.h>
#include <Winuser.h>
#include <stdio.h>
#include <stdlib.h>
/* ----------------------------------
simulation of Alt-PrintScreen
to get current Window image in clipboard
* -----------------------------------*/
void snapwin_2_clipboard()
{
keybd_event(VK_LMENU,0xA4,0,0); // 撳 Alt
keybd_event(VK_SNAPSHOT,0x2C,0,0); // 撳 PrintScreen
keybd_event(VK_SNAPSHOT,0x2C,KEYEVENTF_KEYUP,0); // 鍵彈上
keybd_event(VK_LMENU,0xA4,KEYEVENTF_KEYUP,0); // 鍵彈上
}
void main()
{
(void) snapwin_2_clipboard();
exit(0);
}
編譯命令: cl simu_keyboard.c user32.lib
運行:simu_keyboard.exe
用任何圖像編輯軟體中的Edit-paste 可貼剪切板里的內容了。
⑤ c語言模擬鍵盤隨機輸入或連續輸入不同的數字。。
用循環語句,如for語句,用一個自增變數i做計數器,語句裡面嵌入scanf語句,設定i〈=10,就可以循環10次,輸入10個數
⑥ 請問怎樣實現c語言的模擬按鍵
調win32api函數SendMessage實現模擬按鍵
#include <windows.h>
...
SendMessage(hWnd,WM_KEYDOWN,鍵值,0);
...
其中hWnd是目標窗口的句柄
值是被宏定義過的,VK_ENTER回車,VK_ESC是ESC,VK_A是A鍵等
目標窗口句柄可以通過HWND hwnd=FindWindow("窗口名");獲得
⑦ 利用C語言能實現按鍵精靈的模擬按鍵功能嗎
調win32api函數SendMessage實現模擬按鍵
#include <windows.h>
...
SendMessage(hWnd,WM_KEYDOWN,鍵值,0);
...
其中hWnd是目標窗口的句柄
值是被宏定義過的,VK_ENTER回車,VK_ESC是ESC,VK_A是A鍵等
目標窗口句柄可以通過HWND hwnd=FindWindow("窗口名");獲得
⑧ 怎麼用c語言模擬鍵盤輸入你好 要用輸入法的
把輸入的字母都存入一個數組中,每次輸入空格按鍵之後進行識別判斷,看看數組中是不是出現了連續的nihao字母,如果出現了此時輸出漢字「你好」。
⑨ 怎麼用C語言寫出一個讓程序自動按鍵的,只要按兩個鍵就夠了
c語言完成這個有點難,用按鍵精靈吧,實現這個很簡單的。
退出程序的話,用編程來說,你可以先選定你程序的窗口句柄,然後直接關掉這個窗口,你要是想純模擬鍵盤操作的話,你還得考慮當前焦點在不在你的程序窗口上。
⑩ C語言如何模擬鍵盤輸入
C語言模擬鍵盤代碼如下:
int WINAPI WinMain(HINSTANCE hInstance,HINSTANCE hPrevInstance,LPSTR szCmdLine,int iCmdShow)
{
MSG msg;
if(!MyRegisterClass(hInstance))
{
return FALSE;
}
if(!InitInstance(hInstance,iCmdShow))
{
return FALSE;
}
while (GetMessage (&msg, NULL, 0, 0))
{
TranslateMessage (&msg);
DispatchMessage (&msg);
}
return msg.wParam;
}
//函數:ShowKey
//作用:實現在窗口中顯示按鍵信息
void ShowKey (HWND hwnd, int iType,char *szMessage,WPARAM wParam,LPARAM lParam)
{
static char *szFormat[2] ={"%-14s %3d %c %6u %4d %5s %5s %6s %6s",
"%-14s %3d %c %6u %4d %5s %5s %6s %6s" };
char szBuffer[80];
HDC hdc;
ScrollWindowEx(hwnd, 0, -yChar, &rc,&rc,NULL,NULL,SW_INVALIDATE);
hdc = GetDC (hwnd);
SelectObject (hdc, GetStockObject (SYSTEM_FIXED_FONT));
TextOut (hdc,
xChar,
rc.bottom - yChar,
szBuffer,
wsprintf szBuffer,
szFormat[iType]。