老熟女激烈的高潮_日韩一级黄色录像_亚洲1区2区3区视频_精品少妇一区二区三区在线播放_国产欧美日产久久_午夜福利精品导航凹凸

重慶分公司,新征程啟航

為企業提供網站建設、域名注冊、服務器等服務

vb.netwinio的簡單介紹

vbnetwinsock控件在哪個位置

在工具箱上右擊-自定義工具箱-在com組件中找到vbnetwinsock控件。VB中使用方法是工程-部件-MicrosoftWinsockControl6.0然后把工具條中的MWC控件拖入窗體中也可以直接雙擊。

蔡甸ssl適用于網站、小程序/APP、API接口等需要進行數據傳輸應用場景,ssl證書未來市場廣闊!成為創新互聯的ssl證書銷售渠道,可以享受市場價格4-6折優惠!如果有意向歡迎電話聯系或者加微信:13518219792(備注:SSL證書合作)期待與您的合作!

VB如何用WinIO打字?

先用里面的InitializeWinIo函數安裝驅動程序,然后就可以用GetPortVal來讀取端口或者用SetPortVal來寫入端口了。好,讓我們來做一個驅動級的鍵盤模擬吧。先把winio的3個文件拷貝到你的程序的文件夾下,然后在VB中新建一個工程,添加一個模塊,在模塊中加入下面的winio函數聲明:

Declare Function MapPhysToLin Lib "WinIo.dll" (ByVal PhysAddr As Long, ByVal PhysSize As Long, ByRef PhysMemHandle) As Long

Declare Function UnmapPhysicalMemory Lib "WinIo.dll" (ByVal PhysMemHandle, ByVal LinAddr) As Boolean

Declare Function GetPhysLong Lib "WinIo.dll" (ByVal PhysAddr As Long, ByRef PhysVal As Long) As Boolean

Declare Function SetPhysLong Lib "WinIo.dll" (ByVal PhysAddr As Long, ByVal PhysVal As Long) As Boolean

Declare Function GetPortVal Lib "WinIo.dll" (ByVal PortAddr As Integer, ByRef PortVal As Long, ByVal bSize As Byte) As Boolean

Declare Function SetPortVal Lib "WinIo.dll" (ByVal PortAddr As Integer, ByVal PortVal As Long, ByVal bSize As Byte) As Boolean

Declare Function InitializeWinIo Lib "WinIo.dll" () As Boolean

Declare Function ShutdownWinIo Lib "WinIo.dll" () As Boolean

Declare Function InstallWinIoDriver Lib "WinIo.dll" (ByVal DriverPath As String, ByVal Mode As Integer) As Boolean

Declare Function RemoveWinIoDriver Lib "WinIo.dll" () As Boolean

' ------------------------------------以上是WINIO函數聲明-------------------------------------------

Declare Function MapVirtualKey Lib "user32" Alias "MapVirtualKeyA" (ByVal wCode As Long, ByVal wMapType As Long) As Long

'-----------------------------------以上是WIN32 API函數聲明-----------------------------------------

再添加下面這個過程:

Sub KBCWait4IBE() '等待鍵盤緩沖區為空

Dim dwVal As Long

Do

GetPortVal H64, dwVal, 1

'這句表示從H64端口讀取一個字節并把讀出的數據放到變量dwVal中

'GetPortVal函數的用法是GetPortVal 端口號,存放讀出數據的變量,讀入的長度

Loop While (dwVal And H2)

End Sub

上面的是一個根據KBC規范寫的過程,它的作用是在向鍵盤端口寫入數據前等待一段時間,后面將會用到。

然后再添加如下過程,這2個過程用來模擬按鍵:

Public Const KBC_KEY_CMD = H64 '鍵盤命令端口

Public Const KBC_KEY_DATA = H60 '鍵盤數據端口

Sub MyKeyDown(ByVal vKeyCoad As Long)

'這個用來模擬按下鍵,參數vKeyCoad傳入按鍵的虛擬碼

Dim btScancode As Long

btScancode = MapVirtualKey(vKeyCoad, 0)

KBCWait4IBE '發送數據前應該先等待鍵盤緩沖區為空

SetPortVal KBC_KEY_CMD, HD2, 1 '發送鍵盤寫入命令

'SetPortVal函數用于向端口寫入數據,它的用法是SetPortVal 端口號,欲寫入的數據,寫入數據的長度

KBCWait4IBE

SetPortVal KBC_KEY_DATA, btScancode, 1 '寫入按鍵信息,按下鍵

End Sub

Sub MyKeyUp(ByVal vKeyCoad As Long)

'這個用來模擬釋放鍵,參數vKeyCoad傳入按鍵的虛擬碼

Dim btScancode As Long

btScancode = MapVirtualKey(vKeyCoad, 0)

KBCWait4IBE '等待鍵盤緩沖區為空

SetPortVal KBC_KEY_CMD, HD2, 1 '發送鍵盤寫入命令

KBCWait4IBE

SetPortVal KBC_KEY_DATA, (btScancode Or H80), 1 '寫入按鍵信息,釋放鍵

End Sub

定義了上面的過程后,就可以用它來模擬鍵盤輸入了。在窗體模塊中添加一個定時器控件,然后加入以下代碼:

Private Sub Form_Load()

If InitializeWinIo = False Then

'用InitializeWinIo函數加載驅動程序,如果成功會返回true,否則返回false

MsgBox "驅動程序加載失敗!"

Unload Me

End If

Timer1.Interval = 3000

Timer1.Enabled = True

End Sub

Private Sub Form_Unload(Cancel As Integer)

ShutdownWinIo '程序結束時記得用ShutdownWinIo函數卸載驅動程序

End Sub

Private Sub Timer1_Timer()

Dim VK_A As Long = H41

MyKeyDown VK_A

MyKeyUp VK_A '模擬按下并釋放A鍵

End Sub

運行上面的程序,就會每隔3秒鐘模擬按下一次A鍵,試試看,怎么樣,是不是對所有程序都有效果了?

需要注意的問題:

要在VB的調試模式下使用WINIO,需要把那3個文件拷貝到VB的安裝目錄中。

鍵盤上有些鍵屬于擴展鍵(比如鍵盤上的方向鍵就是擴展鍵),對于擴展鍵不應該用上面的MyKeyDown和MyKeyUp過程來模擬,可以使用下面的2個過程來準確模擬擴展鍵:

Sub MyKeyDownEx(ByVal vKeyCoad As Long) '模擬擴展鍵按下,參數vKeyCoad是擴展鍵的虛擬碼

Dim btScancode As Long

btScancode = MapVirtualKey(vKeyCoad, 0)

KBCWait4IBE '等待鍵盤緩沖區為空

SetPortVal KBC_KEY_CMD, HD2, 1 '發送鍵盤寫入命令

KBCWait4IBE

SetPortVal KBC_KEY_DATA, HE0, 1 '寫入擴展鍵標志信息

KBCWait4IBE '等待鍵盤緩沖區為空

SetPortVal KBC_KEY_CMD, HD2, 1 '發送鍵盤寫入命令

KBCWait4IBE

SetPortVal KBC_KEY_DATA, btScancode, 1 '寫入按鍵信息,按下鍵

End Sub

Sub MyKeyUpEx(ByVal vKeyCoad As Long) '模擬擴展鍵彈起

Dim btScancode As Long

btScancode = MapVirtualKey(vKeyCoad, 0)

KBCWait4IBE '等待鍵盤緩沖區為空

SetPortVal KBC_KEY_CMD, HD2, 1 '發送鍵盤寫入命令

KBCWait4IBE

SetPortVal KBC_KEY_DATA, HE0, 1 '寫入擴展鍵標志信息

KBCWait4IBE '等待鍵盤緩沖區為空

SetPortVal KBC_KEY_CMD, HD2, 1 '發送鍵盤寫入命令

KBCWait4IBE

SetPortVal KBC_KEY_DATA, (btScancode Or H80), 1 '寫入按鍵信息,釋放鍵

End Sub

還應該注意的是,如果要從擴展鍵轉換到普通鍵,那么普通鍵的KeyDown事件應該發送兩次。也就是說,如果我想模擬先按下一個擴展鍵,再按下一個普通鍵,那么就應該向端口發送兩次該普通鍵被按下的信息。比如,我想模擬先按下左方向鍵,再按下空格鍵這個事件,由于左方向鍵是擴展鍵,空格鍵是普通鍵,那么流程就應該是這樣的:

MyKeyDownEx VK_LEFT '按下左方向鍵

Sleep 200 '延時200毫秒

MyKeyUpEx VK_LEFT '釋放左方向鍵

Sleep 500

MyKeyDown VK_SPACE '按下空格鍵,注意要發送兩次

MyKeyDown VK_SPACE

Sleep 200

MyKeyUp VK_SPACE '釋放空格鍵

追問:

那怎么模擬打漢字?

回答:

這個只能調用輸入法,然后模擬鍵盤輸入了,要輸入什么都要在程序里定義好。這樣還不如別這么麻煩,設定好要輸入的中文后,發送到剪切板,然后復制出來更簡單。

追問:

對啊,你真聰明,那Ctrl+V的VK_**是多少?

回答:

虛擬按鍵的總結

符號常量 十六進制值 指定的鼠標或鍵盤按鍵

VK_LBUTTON 01 鼠標左鍵

VK_RBUTTON 02 鼠標右鍵

VK_CANCEL 03 Control-break 過程

VK_MBUTTON 04 鼠標中鍵

VK_BACK 08 BACKSPACE 鍵

VK_TAB 09 TAB 鍵

VK_CLEAR 0C CLEAR 鍵

VK_RETURN 0D ENTER 鍵

VK_SHIFT 10 SHIFT 鍵

VK_CONTROL 11 CTRL 鍵

VK_MENU 12 ALT 鍵

VK_PAUSE 13 PAUSE 鍵

VK_CAPITAL 14 CAPS LOCK 鍵

VK_ESCAPE 1B ESC 鍵

VK_SPACE 20 SPACEBAR

VK_PRIOR 21 PAGE UP 鍵

VK_NEXT 22 PAGE DOWN 鍵

VK_END 23 END 鍵

VK_HOME 24 HOME 鍵

VK_LEFT 25 LEFT ARROW 鍵

VK_UP 26 UP ARROW 鍵

VK_RIGHT 27 RIGHT ARROW 鍵

VK_DOWN 28 DOWN ARROW 鍵

VK_SELECT 29 SELECT 鍵

VK_EXECUTE 2B EXECUTE 鍵

VK_SNAPSHOT 2C PRINT SCREEN鍵(用于Windows 3.0及以后版本)

VK_INSERT 2D INS 鍵

VK_DELETE 2E DEL 鍵

VK_HELP 2F HELP鍵

/////////////////////

對于非小鍵盤上的數字鍵和字母鍵,直接在單引號中加入該鍵就行.

比如: a 鍵: 'A'

1 鍵: '1'

/////////////////////////////////

VK_LWIN 5B Left Windows 鍵 (Microsoft自然鍵盤)

VK_RWIN 5C Right Windows 鍵 (Microsoft自然鍵盤)

VK_APPS 5D Applications 鍵 (Microsoft自然鍵盤)

VK_NUMPAD0 60 數字小鍵盤上的 0 鍵

VK_NUMPAD1 61 數字小鍵盤上的 1 鍵

VK_NUMPAD2 62 數字小鍵盤上的 2 鍵

VK_NUMPAD3 63 數字小鍵盤上的 3 鍵

VK_NUMPAD4 64 數字小鍵盤上的 4 鍵

VK_NUMPAD5 65 數字小鍵盤上的 5 鍵

VK_NUMPAD6 66 數字小鍵盤上的 6 鍵

VK_NUMPAD7 67 數字小鍵盤上的 7 鍵

VK_NUMPAD8 68 數字小鍵盤上的 8 鍵

VK_NUMPAD9 69 數字小鍵盤上的 9 鍵

VK_MULTIPLY 6A Multiply 鍵

VK_ADD 6B Add鍵

VK_SEPARATOR 6C Separator 鍵

VK_SUBTRACT 6D Subtract 鍵

VK_DECIMAL 6E Decimal 鍵

VK_DIVIDE 6F Divide 鍵

VK_F1 70 F1 鍵

VK_F2 71 F2 鍵

VK_F3 72 F3 鍵

VK_F4 73 F4 鍵

VK_F5 74 F5 鍵

VK_F6 75 F6 鍵

VK_F7 76 F7 鍵

VK_F8 77 F8 鍵

VK_F9 78 F9 鍵

VK_F10 79 F10 鍵

VK_F11 7A F11 鍵

VK_F12 7B F12 鍵

VK_F13 7C F13 鍵

VK_F14 7D F14 鍵

VK_F15 7E F15 鍵

VK_F16 7F F16 鍵

VK_F17 80H F17 鍵

VK_F18 81H F18 鍵

VK_F19 82H F19 鍵

VK_F20 83H F20 鍵

VK_F21 84H F21 鍵

VK_F22 85H F22 鍵

VK_F23 86H F23 鍵

VK_F24 87H F24 鍵

VK_NUMLOCK 90 NUM LOCK 鍵

VK_SCROLL 91 SCROLL LOCK 鍵

VK_ATTN F6 Attn 鍵

VK_CRSEL F7 CrSel 鍵

VK_EXSEL F8 ExSel 鍵

VK_EREOF F9 Erase EOF 鍵

VK_PLAY FA Play 鍵

VK_ZOOM FB Zoom 鍵

VK_OEM_CLEAR FE Clear 鍵

vb怎么調用winio.dll,timer1里面怎么寫內容

MyKeyDown(31)// 31是鍵盤上方的數字鍵 1

Sleep(100)

MyKeyUp(31) //上面的down 就是按下 up就是彈起

Sleep(100)

尋VB.NET下winio(驅動級模擬按鍵)的鍵盤使用方法

這是不可能完成的任務,.NET平臺不存在開發驅動的能力,你要想在驅動層對鍵盤操作,最好使用C,C++來實現,比較方便。 像現在一些比較出名的網絡游戲,都是在驅動層進行保護的。

VB.Net中該怎么調用windows的API?

1.Windows的API有兩個版本的,比如ANSI的FindWindowA(),Unicode的FindWindowW()

2.兩種聲明的方式

DllImport("user32.dll", CharSet:=CharSet.Auto, EntryPoint:="FindWindow") _

Shared Function FindWindow(ByVal className As String, ByVal windowName As String) As IntPtr

End Function

Declare Auto Function FindWindow Lib "user32.dll" Alias "FindWindow" (ByVal className As String, ByVal windowName As String) As IntPtr


網站欄目:vb.netwinio的簡單介紹
分享地址:http://www.xueling.net.cn/article/hphdsp.html

其他資訊

在線咨詢
服務熱線
服務熱線:028-86922220
TOP
主站蜘蛛池模板: 精品美女久久久久 | 国产经典久久久 | 三级小说欧洲区亚洲区 | 亚洲精品.www | 国产精品嫩草33av在线 | 色爱无码AV综合区老司机非洲 | 久久99亚洲精品久久99 | 国产一区二区怡红院 | 亚洲精品成人网站在线 | 欧美精品日韩一区 | 亚洲午夜精品片久久www慈禧 | 国产情侣自拍小视频 | 91精品激情在线观看最新更新 | 69视频免费在线观看 | a一区二区三区视频 | 日本三级在线看一区二区 | 欧美激情亚洲天堂 | 久久国产精品久久精 | 经典老熟女ass | 欧美日韩国产这里只有精品 | 亚洲日本韩国欧美云霸高清 | 8888色大全免费| 国产精品无码a∨果冻传媒 精品国产一区二区亚洲人成毛片 | 久久精品国产只有精品66 | 欧美日韩亚洲国产天堂A | 奇米视频在线观看 | 亚洲精品久久久久久国 | 亚洲一区二区三区无码国产 | 国产女主播视频一区二区三区 | 被黑人猛躁10次高潮视频 | 国产亚洲精品久久网站 | 少妇xxxxx性开放中出 | 久久99精品久久久久久久清纯 | 99探花在线观看 | 成人福利网址 | 国产熟妇乱子伦视频在线观看 | 日本少妇被爽到高潮动态图 | 欧美videosfree性派对 | 日韩免费无码一区二区三区 | 99国产精品热久久久久久 | 久久久久久一级 |