Slik aktiverer et vindu API til Vis i VB6

Ved utvikling av et program i Visual Basic 6, hvis du ønsker å aktivere en annen Windows-program eller et vindu, kan du gjøre det enkelt. Hvis, derimot, ønsker du å gjøre det vinduet ser ut til fronten og bli vist, det krever mye mer kode som du kan i utgangspunktet realisere. Denne prosessen er svært nyttig som det tillater deg å samhandle med andre programmer på datamaskinen. Merk at du ikke kan bruke denne prosessen til å starte et annet program som har blitt opprettet i VB6.

Bruksanvisning

1 Åpne VB6 skript i din foretrukne VB editor.

2 Kopier og lim inn følgende kode inn i erklæringer kode:
Private Declare Function FindWindow Lib "User32"


Alias ​​"FindWindowA"
(ByVal lpClassName As String, _
ByVal lpWindowName As String) As Long

Private Declare Function GetClassName Lib "User32"
Alias ​​"GetClassNameA"
(ByVal hWnd As Long,
ByVal lpClassName As String,
ByVal nMaxCount As Long) As Long

3 Kopier og lim inn følgende kode inn i prosedyrer seksjon:
Public Sub GetClassNameFromTitle ()
Dim sInput As String
Dim hWnd As Long
Dim lpClassName As String
Dim nMaxCount As Long
Dim LRESULT As Long
"Pad avkastningen buffer for GetClassName
nMaxCount = 256
lpClassName = Space (nMaxCount)
'Merk: må være en eksakt match
sInput = InputBox ( "Skriv den nøyaktige vindustittelen:")
«Ingen validering utføres da dette er et feilsøkingsvinduet verktøy
hWnd = FindWindow (vbNullString, sInput)
"Få klassenavnet i vinduet igjen, ingen validering
LRESULT = GetClassName (hWnd, lpClassName, nMaxCount)
Debug.Print "Window:" & sInput
Debug.Print "Class navn:" & Left $ (lpClassName, LRESULT)
End Sub

4 Klikk "GetClassNameFromTitle" i feilsøkingsvinduet og klikk "Run". Dette skal vise klasse navnet på vinduet. Dette tilveiebringer den grunnleggende struktur for prosessen.

5 Legg til følgende skript hvis du ønsker å inkludere i prosessen i en wrapper:
Public Function fActivateWindowClass (psClassname As String) As Boolean
Dim hWnd As Long
hWnd = FindWindow (psClassname, vbNullString)
Hvis hWnd> 0 Then

' ShowWindow returns True if the window was previously hidden.
' I don't care so I use the sub style
' ShowWindow and SW_SHOW declared elsewhere
' SW_SHOW will display the window in its current size and position
Call ShowWindow hWnd, SW_SHOW
fActivateWindowClass = True

Ellers

' FindWindow failed, return False
fActivateWindowClass = False

Slutt om
End Function