현재 위치 - 중국 분류 정보 발표 플랫폼 - 비즈니스 서비스 정보 - VB는 지정된 창의 서브루틴 핸들을 얻습니다.

VB는 지정된 창의 서브루틴 핸들을 얻습니다.

비공개 선언 함수 FindWindowEx Lib "user32" 별칭 ​​"FindWindowA"(ByVal lpClassName As String, ByVal lpWindowName As String) As Long

비공개 선언 함수 FindWindowEx Lib "user32" Alias ​​"FindWindowExA" " (ByVal hWnd1 As Long, ByVal hWnd2 As Long, ByVal lpsz1 As String, ByVal lpsz2 As String) As Long

'창 핸들을 정의하는 API 함수입니다.

p>

Private 선언 함수 SendMessage Lib "user32" Alias ​​​"SendMessageA" (ByVal hwnd As Long, ByVal wMsg As Long, ByVal wParam As Long, lParam As Any) As Long ' 이 문장은 '보내는 API 함수를 정의합니다. 획득한 창 핸들에 대한 핵심 메시지입니다.

예: 먼저 프로젝트를 빌드합니다.

form1.caption="12345

"OK 1이라는 명령1을 그립니다. "

이벤트

Private Sub Command1_Click()

msgbox Me.Hwnd '확인 버튼 핸들 표시

End Sub < /p>

12345.exe 생성 < /p>

VB6 닫기

VB6 열기

다음과 같이 다른 프로젝트 코드를 만듭니다.

비공개 함수 FindWindow Lib "user32" 별칭 ​​"FindWindowA" ( ByVal lpClassName As String, ByVal lpWindowName As String) As Long

개인 선언 함수 FindWindowEx Lib "user32" Alias ​​​​"FindWindowExA" (ByVal hWnd1 As Long, ByVal hWnd2 As Long, ByVal lpsz1 As String, ByVal lpsz2 As Long)

Private 선언 함수 PostMessageamp; Lib "user32" Alias ​​​​"PostMessageA" (ByVal hwnd As Long, ByVal wMsg As Long, ByVal wParam As Long, lParam As Any)

개인 선언 함수 SetForegroundWindow Lib "user32"(ByVal hwnd As Long)

개인 선언 함수 SendM

essage Lib "user32" 별칭 ​​"SendMessageA" (ByVal hwnd As Long, ByVal wMsg As Long, ByVal wParam As Long, lParam As Long)

Private Const WM_LBUTTONDOWN = amp; >< p>Private Const WM_LBUTTONUP = amp;H202

Private Const MK_LBUTTON = amp;H1

Dim hpwnd As Long, hcwnd As Long

Dim iResult As 긴 < /p>

Private Sub Command1_Click()

hpwnd = FindWindow(vbNullString, "12345")

hcwnd = FindWindowEx(hpwnd, 0, vbNullString, "OK" ) < /p>

SetForegroundWindow hcwnd

iResult = SendMessage(hcwnd, WM_LBUTTONDOWN, 0, 0amp;)

iResult = SendMessage(hcwnd, WM_LBUTTONUP, 0, 0amp;)

p>

End Sub

그런 다음 미리 생성된 12345.exe를 실행합니다.

그런 다음 나중에 빌드한 것을 실행합니다.

확인을 클릭합니다. 12345.exe의 확인 버튼을 클릭하여 hwnd를 반환합니다.

나의 방법은 먼저 12345.exe의 기본 창을 찾은 다음 핸들을 기반으로 확인 버튼의 핸들을 얻는 것입니다. 기본 창을 열고 sendmessage를 사용하여 시뮬레이션을 보냅니다. 마우스 왼쪽 버튼을 클릭하세요.

VB 컨트롤의 핸들은 일반적으로 me.hwnd 메서드를 사용하여 얻을 수 있습니다.