当前位置: 首页 > 图文教程 > 网络编程 > ASP.NET > Sendkeys 和 Sendmessage 使用技巧一例 选择自 northwolves 的 Blog

ASP.NET
如何判断当前操作系统是否为98/2000/XP
在Asp.net中如何实现弹出提示对话框()
把数据库连接信息写在web.config文件里
ADO.NET:通向未来之桥
ADO.NET快速起步
C#编程让Outlook乖乖交出帐户密码
如何用.NET创建Windows服务
.Net里一个用于驱动摄像头的类
透过vs.net数据窗体向导看Ado.net
C#中对注册表的操作
ASP.NET中输入文本的HTML解析办法
控件的拖动和缩放技术全解
将Asp.Net页面输出到EXCEL里去
.Net下调用SqlServer2k中存储过程
ASP中一次更新DATAGRID中所有记录
通过动态编译获取字符串表达的值
ASP.NET开发十大技巧
在.NET中实现彩色光标和自定义光标
如何取得IP/用户名等信息
C#中调用Windows API的要点

ASP.NET 中的 Sendkeys 和 Sendmessage 使用技巧一例 选择自 northwolves 的 Blog


出处:互联网   整理: 软晨网(RuanChen.com)   发布: 2009-11-03   浏览: 98 ::
收藏到网摘: n/a


Private Declare Function SendMessage Lib "user32.dll" Alias "SendMessageA" (ByVal hwnd As Long, ByVal wMsg As Long, ByVal wParam As Long, lParam As Any) As Long
Private Declare Function FindWindow Lib "user32.dll" Alias "FindWindowA" (ByVal lpClassName As String, ByVal lpWindowName As String) As Long
Private Declare Function FindWindowEx Lib "user32" Alias "FindWindowExA" (ByVal hWnd1 As Long, ByVal hWnd2 As Long, ByVal lpsz1 As String, ByVal lpsz2 As String) As Long
Function sqrx(ByVal x As Double) As String '计算平方根(比VB DOUBLE 类型精度高)
Dim temp As String, i As Long, j As Long
Shell "Calc.EXE", vbMinimizedNoFocus '运行计算器
temp = x & "y0.5="
For i = 1 To Len(temp)
SendKeys Mid(temp, i, 1), True '向计算器顺序发送按键消息X (X^Y) 0.5=
Next
temp = String(64, Chr(0))
i = FindWindow(vbNullString, "计算器") '窗口句柄
j = FindWindowEx(i, ByVal 0&, "Edit", vbNullString) '编辑框句柄
SendMessage j, &HD, Len(temp), ByVal temp '发送编辑框文本至temp

SendKeys "%{F4}", True '调用ALT+F4关闭计算器窗口
sqrx = temp
End Function
Private Sub Command1_Click()
Dim i As Integer
For i = 17 To 24
Debug.Print "sqrx(" & i & ")=" & sqrx(i)
Next
End Sub
返回:
sqrx(17)=4.1231056256176605498214098559741
sqrx(18)=4.2426406871192851464050661726291
sqrx(19)=4.3588989435406735522369819838596
sqrx(20)=4.4721359549995793928183473374626
sqrx(21)=4.582575694955840006588047193728
sqrx(22)=4.6904157598234295545656301135445
sqrx(23)=4.7958315233127195415974380641627 sqrx(24)=4.8989794855663561963945681494118"