当前位置:编程学习 > VB >>

如何获取.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
    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
--------------------编程问答-------------------- 我用vb6。这两个API没用的:GetWindowTextLength 和 GetWindowText  --------------------编程问答--------------------
引用 7 楼 jmeycn 的回复:
我用vb6。这两个API没用的:GetWindowTextLength 和 GetWindowText 

这个中文怎么理解?
不会调用还是调用了没取到文本? --------------------编程问答-------------------- GetWindowText 取得窗口标题,我要取得进程外窗口中的文本。
sendmessage获得进程外窗口文本也只对edit和richedit有效。 --------------------编程问答-------------------- GetWindowText 不仅限于窗口标题,也可取编辑框文本。
补充:VB ,  API
CopyRight © 2022 站长资源库 编程知识问答 zzzyk.com All Rights Reserved
部分文章来自网络,