msdshellwait.bas

来自「功能强大的135以及1433端口扫描器」· BAS 代码 · 共 35 行

BAS
35
字号
Attribute VB_Name = "MsdShellWait"
Option Explicit
Public Declare Function FindWindow Lib "user32" Alias "FindWindowA" (ByVal lpClassName As String, ByVal lpWindowName As String) As Long
Public Declare Function SendMessage Lib "user32" Alias "SendMessageA" (ByVal hwnd As Long, ByVal wMsg As Long, ByVal wParam As Long, lParam As Any) As Long
Public Declare Function OpenProcess Lib "kernel32" (ByVal dwDesiredaccess&, ByVal bInherithandle&, ByVal dwProcessid&) As Long
Public Declare Function GetExitCodeProcess Lib "kernel32" (ByVal hProcess As Long, lpexitcode As Long) As Long
Public Const WM_CLOSE = &H10
Public Const STILL_ACTIVE = &H103
Public Const PROCESS_QUERY_INFORMATION = &H400
Public Sub ShellWait(cCommandLine As String)
Dim hShell As Long
Dim hProc As Long
Dim lExit As Long
   hShell = Shell(cCommandLine, vbNormalFocus)
   hProc = OpenProcess(PROCESS_QUERY_INFORMATION, False, hShell)
   Do
       GetExitCodeProcess hProc, lExit
       DoEvents
   Loop While lExit = STILL_ACTIVE
End Sub


Public Sub HideShellWait(cCommandLine As String)
Dim hShell As Long
Dim hProc As Long
Dim lExit As Long
   hShell = Shell(cCommandLine, vbHide)
   hProc = OpenProcess(PROCESS_QUERY_INFORMATION, False, hShell)
   Do
       GetExitCodeProcess hProc, lExit
       DoEvents
   Loop While lExit = STILL_ACTIVE
End Sub

⌨️ 快捷键说明

复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?