WPF向指定視窗傳送鍵盤指令

2021-07-15 04:22:33 字數 1481 閱讀 3728

現在網上的庫大部分都是vb的那個傳送鍵盤指令的庫,那個在wpf裡面是用不了的,wpf的話可以用system.windows.forms中的其實跟vb中的microsoft.visualbasic.devices這個裡面的sendkeys用法差不多一樣,吐槽一下,新的這個也可以在vb中使用好像,我看msdn中forms中的sendkeys也能在 vb中用,真是這乙個小問題浪費了我一下午的時間。貼上**

[dllimport("user32.dll", entrypoint = "findwindow")]

private

static

extern intptr findwindow(string lpclassname, string lpwindowname);

[dllimport("user32.dll", entrypoint = "findwindowex")]

static

extern intptr findwindowex(intptr hwndparent, intptr hwndchildafter, string lpclass, string lpszwindow);

[dllimport("user32.dll ", entrypoint = "sendmessage")]

public

static

extern intptr sendmessage(intptr hwnd, int msg, intptr wparam, string lparam);

[dllimport("user32.dll", entrypoint = "sendmessage")]

public

static

extern intptr sendmessage(intptr hwnd, int wmsg, intptr wparam, intptr lparam);

const

int wm_char = 0x0102;

const

int wm_settext = 0x000c;

const

int vk_return = 0x0d;

private

void

xin(object sender, routedeventargs e)

sendmessage(handle, wm_settext, intptr.zero, "d");

// sendkeys.send("");

//sendmessage(handle, wm_char, (intptr)vk_return, intptr.zero);//enter

sendkeys.sendwait("");

// sendmessage(handle, wm_settext, intptr.zero, "w");

}

這裡現在也還有很多我還不是很了解的地方,等以後有時間再說吧,現在要趕專案。

最後補充一下,它們其實就是很多個win32的api

Window向指定視窗傳送訊息

1 字元 e postmessage hwnd,wm keydown,0x4c,0 postmessage hwnd,wm keyup,0x4c,0 ee2 ctrl c keybd event vk control,0,0 0 postmessage hwnd,wm keydown,0x43,0 ...

向指定視窗傳送乙個BN CLICKED訊息

向指定視窗傳送乙個bn clicked訊息 設乙個對話方塊上有乙個按鈕,現在滑鼠正在按鈕上方 為了向該對話方塊傳送訊息來響應該按鈕的bn clicked訊息 注意不可以向按鈕傳送,而是要向對話方塊傳送,因為按鈕是將訊息發往對話方塊,由對話方塊來響應 bool cyucvimagecontrol on...

子視窗向父視窗傳送訊息

1.自定義對話方塊中,m pview 是父視窗的指標 void cex07cdialog onbnclickedok else 2.父視窗響應 begin message map cex07cview,cview on wm lbuttondown on wm rbuttondown on mess...