VB 引用API就是超麻烦啊,“hwnd”不是“System.Windows.Forms.TextBox”的成员。
Private Declare Function GetWindowText Lib "user32" Alias "GetWindowTextA" (ByVal hwnd As Long, ByVal lpString As String, ByVal cch As Long) As Long
Private Sub Command1_Click()
Dim sBuffer As String
sBuffer = Space(255)
GetWindowText Text1.hwnd, sBuffer, 255
Text2.Text = sBuffer
End Sub
错误1“hwnd”不是“System.Windows.Forms.TextBox”的成员。X:\vb\getwindowtext\WindowsApplication1\WindowsApplication1\Form1.vb1823WindowsApplication1
------------------------------------------
一个在VS2010下就这么麻烦,要怎么改。出手吧。
[解决办法]
句柄應該是
.handle
[解决办法]
Private Declare Function GetWindowText Lib "user32" Alias "GetWindowTextA" (ByVal hwnd As intptr, ByVal lpString As String, ByVal cch As int32) As int32
Private Sub Command1_Click()
Dim sBuffer As String
sBuffer = Space(255)
GetWindowText Text1.handle, sBuffer, 255
Text2.Text = sBuffer
End Sub
[解决办法]
楼住api声明错误。vb6的long数据类型在vb。net为int32
其他的就不说了。6楼正解