|
.版本 2
.子程序 系统_创建进程, 逻辑型, 公开, 本命令运行指定的可执行文件或者外部命令.如果成功,返回真,否则返回假.本命令为初级命令.
.参数 欲运行的命令行, 文本型
.参数 是否等待程序运行完毕, 逻辑型, 可空, 初始值为“假”.
.参数 被运行程序窗口显示方式, 整数型, 可空, 参数值可以为以下常量之一:1、#隐藏窗口; 2、#普通激活; 3、#最小化激活; 4、#最大化激活; 5、#普通不激活; 6、#最小化不激活.如果省略本参数,默认为“普通激活”方式.
.参数 进程标识, 整数型, 参考 可空, 如果提供了本参数,将向参数变量写入进程标识(dwProcessId).如果不提供本参数接收进程标识,内部将自动处理进程标识.
.局部变量 pStartupInfo, STARTUPINFO
.局部变量 pProcessInfo, PROCESS_INFORMATION
.局部变量 hHandle, 整数型
.局部变量 pMsg, 整数型
.局部变量 返回值, 逻辑型
pStartupInfo.cb = 68
.判断开始 (被运行程序窗口显示方式 = #隐藏窗口)
pStartupInfo.dwFlags = #STARTF_USESHOWWINDOW
pStartupInfo.wShowWindow = #SW_HIDE
.判断 (被运行程序窗口显示方式 = #最小化激活)
pStartupInfo.dwFlags = #STARTF_USESHOWWINDOW
pStartupInfo.wShowWindow = #SW_SHOWMINIMIZED
.判断 (被运行程序窗口显示方式 = #最大化激活)
pStartupInfo.dwFlags = #STARTF_USESHOWWINDOW
pStartupInfo.wShowWindow = #SW_SHOWMAXIMIZED
.判断 (被运行程序窗口显示方式 = #普通不激活)
pStartupInfo.dwFlags = #STARTF_USESHOWWINDOW
pStartupInfo.wShowWindow = #SW_SHOWNOACTIVATE
.判断 (被运行程序窗口显示方式 = #最小化不激活)
pStartupInfo.dwFlags = #STARTF_USESHOWWINDOW
pStartupInfo.wShowWindow = #SW_MINIMIZE
.默认
pStartupInfo.dwFlags = #STARTF_USESHOWWINDOW
pStartupInfo.wShowWindow = #SW_SHOWNORMAL
.判断结束
hHandle = CreateProcess (0, 欲运行的命令行, 0, 0, 假, 0, 0, 0, pStartupInfo, pProcessInfo)
.如果 (是否等待程序运行完毕 = 真)
WaitForSingleObject (pProcessInfo.hProcess, #INFINITE)
.否则
WaitForInputIdle (pProcessInfo.hProcess, 1000)
.如果结束
CloseHandle (pProcessInfo.hThread)
CloseHandle (pProcessInfo.hProcess)
.如果真 (是否为空 (进程标识) = 假)
进程标识 = pProcessInfo.dwProcessId
.如果真结束
.如果 (hHandle ≠ 0)
返回值 = 真
.否则
返回值 = 假
.如果结束
返回 (返回值) |
|