- .版本 2
- .子程序 Take_the_Dos_Execution_Results, 文本型, , 这个子程序返回的,是Dos 的回执结果,Dos命令:Systeminfo | findstr /i "System Model"
- .局部变量 SECURITY_ATTRIBUTES, SECURITY_ATTRIBUTES
- .局部变量 STARTUPINFO, STARTUPINFO
- .局部变量 PROCESS_INFORMATION, PROCESS_INFORMATION
- .局部变量 hWrite, 整数型
- .局部变量 hRead, 整数型
- .局部变量 txt, 字节集
- .局部变量 len, 整数型
- .局部变量 EXIT, 整数型
- .局部变量 retext, 文本型
- SECURITY_ATTRIBUTES.nLength = 12
- SECURITY_ATTRIBUTES.lpSecurityDescriptor = 0
- SECURITY_ATTRIBUTES.bInheritHandle = 1
- CreatePipe (hRead, hWrite, SECURITY_ATTRIBUTES, 0)
- STARTUPINFO.cb = 68
- STARTUPINFO.dwFlags = 位或 (#STARTF_USESHOWWINDOW, #STARTF_USESTDHANDLES)
- STARTUPINFO.wShowWindow = #SW_HIDE
- STARTUPINFO.hStdOutput = hWrite
- STARTUPINFO.hStdError = hWrite
- .如果 (取操作系统类别 () ≤ 2)
- CreateProcess (0, “command.com /c Systeminfo”, 0, 0, 真, 0, 0, 0, STARTUPINFO, PROCESS_INFORMATION) ' 代码
- .否则
- CreateProcess (0, “cmd.exe /c Systeminfo”, 0, 0, 真, 0, 0, 0, STARTUPINFO, PROCESS_INFORMATION) ' 代码
- .如果结束
- CloseHandle (hWrite)
- .判断循环首 (len ≠ -1)
- PeekNamedPipe (hRead, 0, 0, 0, len, 0)
- .如果 (len ≠ 0)
- txt = 取空白字节集 (1024)
- ReadFile (hRead, txt, 1023, len, 0)
- retext = retext + 取字节集数据 (txt, #文本型)
- .否则
- GetExitCodeProcess (PROCESS_INFORMATION.hProcess, EXIT)
- .如果真 (EXIT ≠ #STILL_ACTIVE)
- CloseHandle (hRead)
- 跳出循环 ()
- .如果真结束
- .如果结束
- 处理事件 ()
- .判断循环尾 ()
- 返回 (retext)