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

ASP.NET
用ASP.NET缓存提高站点性能
ASP.NET 中处理页面“回退”的方法
利用ASP.NET的三种缓存提高站点性能
Session丢失的解决办法小结
.Net中VSS实现版本控制管理的方法
ASP.NET中如何防范SQL注入式攻击
十天学会ASP.net之第三天
.NET Ajax的无刷新技术实例详解
剖析C# 2.0泛型类的创建和使用
解析在ASP.NET中调用存储过程的方法
在ASP.NET中使用AJAX的简单方法
DataGrid表头不动,表身动
结合JavaScript与ASP.NET Web窗体进行程序开发
asp.net里面的身份验证和授权
ASP.NET生成高质量缩略图通用函数(c#代码)
在C#中建立复杂的、灵活的SQL查询/命令
基于C#的接口基础教程之一
基于C#的接口基础教程之二
基于C#的接口基础教程之三
基于C#的接口基础教程之四

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


出处:互联网   整理: 软晨网(RuanChen.com)   发布: 2009-11-03   浏览: 215 ::
收藏到网摘: 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"