⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 mdlprocess.bas

📁 一个用VB写的财务软件源码
💻 BAS
字号:
Attribute VB_Name = "mdlProcess"
Option Explicit

Public Declare Function CreateProcess Lib "kernel32" Alias "CreateProcessA" (ByVal lpApplicationName As String, ByVal lpCommandLine As String, lpProcessAttributes As SECURITY_ATTRIBUTES, lpThreadAttributes As SECURITY_ATTRIBUTES, ByVal bInheritHandles As Long, ByVal dwCreationFlags As Long, lpEnvironment As Any, ByVal lpCurrentDriectory As String, lpStartupInfo As STARTUPINFO, lpProcessInformation As PROCESS_INFORMATION) As Long
Public Declare Function GetProcessTimes Lib "kernel32" (ByVal Hprocess As Long, lpCreationTime As FILETIME, lpExitTime As FILETIME, lpKernelTime As FILETIME, lpUserTime As FILETIME) As Long
Public Declare Sub Sleep Lib "kernel32" (ByVal dwMilliseconds As Long)
Public Declare Function FindWindow Lib "user32" Alias "FindWindowA" (ByVal lpClassName As String, ByVal lpWindowName As String) As Long

Public Type SECURITY_ATTRIBUTES
        nLength As Long
        lpSecurityDescriptor As Long
        bInheritHandle As Long
End Type
Public Type STARTUPINFO
        cb As Long
        lpReserved As String
        lpDesktop As String
        lpTitle As String
        dwX As Long
        dwY As Long
        dwXSize As Long
        dwYSize As Long
        dwXCountChars As Long
        dwYCountChars As Long
        dwFillAttribute As Long
        dwFlags As Long
        wShowWindow As Integer
        cbReserved2 As Integer
        lpReserved2 As Long
        hStdInput As Long
        hStdOutput As Long
        hStdError As Long
End Type
Public Type PROCESS_INFORMATION
        Hprocess As Long
        hThread As Long
        dwProcessId As Long
        dwThreadId As Long
End Type

Public Type FILETIME
        dwLowDateTime As Long
        dwHighDateTime As Long
End Type

Public Const NORMAL_PRIORITY_CLASS = &H20
Public Const SW_HIDE = 0
Public Const STARTF_USESHOWWINDOW = &H1

Public se1 As SECURITY_ATTRIBUTES
Public se2 As SECURITY_ATTRIBUTES
Public si As STARTUPINFO
Public pi As PROCESS_INFORMATION
Public ev As Variant
Public Ct As FILETIME
Public Et As FILETIME
Public Kt As FILETIME
Public Ut As FILETIME


Public Function ShellExe(ByVal AppExe As String, ByVal sCmd As String) As Boolean
'si.wShowWindow = SW_HIDE
'si.dwFlags = STARTF_USESHOWWINDOW
If CreateProcess(AppExe, sCmd, se1, se2, True, NORMAL_PRIORITY_CLASS, ev, vbNullString, si, pi) Then
    Do While GetProcessTimes(pi.Hprocess, Ct, Et, Kt, Ut) And Et.dwLowDateTime = 0
        Sleep 200
    Loop
    ShellExe = True
Else
    ShellExe = False
End If
End Function

⌨️ 快捷键说明

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