发信人: blstar()
整理人: winsy(2003-03-05 16:15:10), 站内信件
|
此為'model1
Option Explicit
Public Const WM_CLOSE = &H10
Declare Function GetWindowText Lib "user32" Alias "GetWindowTextA" (By Val hWnd As Long, ByVal lpString As String, ByVal cch As Long) As Long
Declare Function EnumWindows Lib "user32" (ByVal lpEnumFunc As Long, B yVal lParam As Long) As Long
Declare Function GetParent Lib "user32" (ByVal hWnd As Long) As Long
Declare Function GetWindowThreadProcessId Lib "user32" (ByVal hWnd As Long, lpdwProcessId As Long) As Long
Declare Function PostMessage Lib "user32" Alias "PostMessageA" (ByVal hWnd As Long, ByVal wMsg As Long, ByVal wParam As Long, lParam As Any) As Long
Declare Function SetForegroundWindow Lib "user32" (ByVal hWnd As Long) As Long
Dim hWndProcess As Long
Function EnumWindowsProc(ByVal hWnd As Long, ByVal lParam As Long) As Boolean
Dim pID As Long
Call GetWindowThreadProcessId(hWnd, pID)
If pID = lParam Then
If GetParent(hWnd) = 0 Then
hWndProcess = hWnd
EnumWindowsProc = False ' 停止列舉 hWnd
End If
End If
EnumWindowsProc = True ' 表示繼續列舉 hWnd
End Function
Function FindProcessWindow(ByVal pID As Long) As Long
hWndProcess = 0
Call EnumWindows(AddressOf EnumWindowsProc, pID)
FindProcessWindow = hWndProcess
End Function
'此為form1Option Explicit
Dim pID As Long
Private Sub Command1_Click()
pID = Shell("notepad", vbNormalFocus)
End Sub
Private Sub Command2_Click()
Dim hWnd As Long
hWnd = FindProcessWindow(pID) ' 此一函數定義於 Module1
Call SetForegroundWindow(hWnd)
Call PostMessage(hWnd, WM_CLOSE, 0, 0&)
End Sub
Private Sub Form_Load()
End Sub
.................我想學好VB。。。。。5555.。。。
-- .............BlueStar............
Maybe, you are right.
[email protected]........
............OICQ:6031943.........
※ 来源:.月光软件站 http://www.moon-soft.com.[FROM: 202.105.148.26]
|
|