如何获取.net framework2.0编写的程序中窗口文本
我用sendmessage 发送wm_gettext只对普通edit控件有效,对。net编写的这类窗口怎么搞啊。
顺便说下,这个程序界面类似office word,文本可以选,但是禁止复制,怎么提取其中的内容啊? --------------------编程问答-------------------- 窗口类名 Afx:f5e0000:b:10011:6:0
各位有办法吗 --------------------编程问答-------------------- 自己顶。。。。 --------------------编程问答-------------------- --------------------编程问答-------------------- 调用金山词霸的屏幕取词功能试试。 --------------------编程问答-------------------- 这个办法每次只能获得一行内容,窗口有几百行文字,很麻烦啊!有简单点的吗 --------------------编程问答-------------------- 下面是 Reflector 得到的 .Net 基类中取文本的方法。
你也试试用 GetWindowTextLength 和 GetWindowText 取。
Friend Overridable Property WindowText As String--------------------编程问答-------------------- 我用vb6。这两个API没用的:GetWindowTextLength 和 GetWindowText --------------------编程问答--------------------
Get
If Not Me.IsHandleCreated Then
If (Me.text Is Nothing) Then
Return ""
End If
Return Me.text
End If
Using New MultithreadSafeCallScope
Dim windowTextLength As Integer = SafeNativeMethods.GetWindowTextLength(New HandleRef(Me.window, Me.Handle))
If SystemInformation.DbcsEnabled Then
windowTextLength = ((windowTextLength * 2) + 1)
End If
Dim lpString As New StringBuilder((windowTextLength + 1))
UnsafeNativeMethods.GetWindowText(New HandleRef(Me.window, Me.Handle), lpString, lpString.Capacity)
Return lpString.ToString
End Using
End Get
这个中文怎么理解?
不会调用还是调用了没取到文本? --------------------编程问答-------------------- GetWindowText 取得窗口标题,我要取得进程外窗口中的文本。
sendmessage获得进程外窗口文本也只对edit和richedit有效。 --------------------编程问答-------------------- GetWindowText 不仅限于窗口标题,也可取编辑框文本。
补充:VB , API