易语言API模块制作取DOS执行结果API

文章目录[隐藏]

API源码

1、CreateProcess
创建一个新进程(比如执行一个程序) 非零表示成功,零表示失败。

.版本 2

.DLL命令 CreateProcess, 整数型, , "CreateProcessA", , 创建一个新进程(比如执行一个程序) 非零表示成功,零表示失败。
.参数 lpApplicationName, 整数型, , 要执行的程序名
.参数 lpCommandLine, 文本型, , 要执行的命令行
.参数 lpProcessAttributes, 整数型, , 安全特性参数1
.参数 lpThreadAttributes, 整数型, , 安全特性参数2
.参数 bInheritHandles, 逻辑型, , 允许新进程继承当前进程的句柄
.参数 dwCreationFlags, 整数型, , 参数1
.参数 lpEnvironment, 整数型, , 环境指针
.参数 lpCurrentDriectory, 整数型, , 新进程当前目录路径
.参数 lpStartupInfo, STARTUPINFO, 传址, 创建进程时附加信息STARTUPINFO,指定一个STARTUPINFO结构,其中包含了创建进程时使用的附加信息
.参数 lpProcessInformation, PROCESS_INFORMATION, 传址, 新进程的进程和线程标识符PROCESS_INFORMATION,该结构用于容纳新进程的进程和线程标识符。大多数情况下,一旦这个函数返回,父应用程序都会关闭两个句柄。;

2、CreatePipe
创建一个匿名管道

.版本 2

.DLL命令 CreatePipe, 整数型, , "CreatePipe", , 创建一个匿名管道,并从中得到读写管道的句柄。
.参数 phReadPipe, 整数型, 传址, 返回一个可用于读管道数据的文件句柄
.参数 phWritePipe, 整数型, 传址, 返回一个可用于写管道数据的文件句柄
.参数 lpPipeAttributes, SECURITY_ATTRIBUTES, 传址, 传入一个SECURITY_ATTRIBUTES结构的指针,该结构用于决定该函数返回的句柄是否可被子进程继承。
.参数 nSize, 整数型, , 管道的缓冲区大小。但是这仅仅只是一个理想值,系统根据这个值创建大小相近的缓冲区。如果传入0 ,那么系统将使用一个默认的缓冲区大小。
3、ReadFile
从文件指针指向的位置开始将数据读出到一个文件中, 且支持同步和异步操作,

.版本 2

.DLL命令 ReadFile, 整数型, , "ReadFile", , 从文件指针指向的位置开始将数据读出到一个文件中, 且支持同步和异步操作,
.参数 hFile, 整数型, , //文件的句柄
.参数 lpBuffer, 字节集, 传址, //用于保存读入数据的一个缓冲区
.参数 nNumberOfBytesToRead, 整数型, , //要读入的字节数
.参数 lpNumberOfBytesRead, 整数型, 传址, //指向实际读取字节数的指针
.参数 lpOverlapped, 整数型, , //如文件打开时指定了FILE_FLAG_OVERLAPPED,那么必须,用这个参数引用一个特殊的结构

4、CloseHandle
关闭一个内核对象。其中包括文件、文件映射、进程、线程、安全和同步对象等。涉及文件处理时,这个函数通常与vb的close命令相似。应尽可能的使用close,因为它支持vb的差错控制。注意这个函数使用的文件句柄与vb的文件编号是完全不同的 非零表示成功,零表示失败。

.版本 2

.DLL命令 CloseHandle, 整数型, , "CloseHandle", , 关闭一个内核对象。其中包括文件、文件映射、进程、线程、安全和同步对象等
.参数 hObject, 整数型, , 欲关闭的一个对象的句柄;

5、PeekNamedPipe
预显示管道队列数据

.版本 2

.DLL命令 PeekNamedPipe, 整数型, , "PeekNamedPipe", , 预览一个管道中的数据,或取得与管道中的数据有关的信息。
.参数 hNamedPipe, 整数型, , 指定一个管道的句柄。这并不一定是某个命名管道的句柄--匿名管道同样适用
.参数 lpBuffer, 整数型, , 指定要装载数据的一个缓冲区的头一个字符
.参数 nBufferSize, 整数型, , lpBuffer缓冲区长度
.参数 lpBytesRead, 整数型, , 保存装载到缓冲区的字符数量
.参数 lpTotalBytesAvail, 整数型, 传址, 保存管道中可用的字符数量
.参数 lpBytesLeftThisMessage, 整数型, , 保存这次读操作后仍然保留在消息中的字符数。只能为那些基于消息的命名管道设置

6、GetExitCodeProcess
获取一个已中断进程的退出代码

.版本 2

.DLL命令 GetExitCodeProcess, 整数型, , "GetExitCodeProcess", , 获取一个已中断进程的退出代码,非零表示成功,零表示失败。
.参数 hProcess, 整数型, , 想获取退出代码的一个进程的句柄
.参数 lpExitCode, 整数型, 传址, 用于装载进程退出代码的一个长整数变量。

自定义数据类型

PROCESS_INFORMATION
.版本 2

.数据类型 PROCESS_INFORMATION, , 进程标识;CreateProcess
.成员 hProcess, 整数型, , , 进程句柄
.成员 hThread, 整数型, , , 线程句柄
.成员 dwProcessId, 整数型, , , 进程标识符
.成员 dwThreadId, 整数型, , , 线程标识符

SECURITY_ATTRIBUTES
.版本 2

.数据类型 SECURITY_ATTRIBUTES, , CreatePipe
.成员 nLength, 整数型, , , /结构体的大小,可用SIZEOF取得
.成员 lpSecurityDescriptor, 整数型, , , / /安全描述符,0为安全
.成员 bInheritHandle, 整数型, , , / /安全描述的对象能否被新创建??的进程继承

STARTUPINFO
.版本 2

.数据类型 STARTUPINFO, , 进程启动信息CreateProcess
.成员 cb, 整数型, , , 结构体长度,应用程序必须将cb初始化
.成员 lpReserved, 文本型, , , 保留
.成员 lpDesktop, 文本型, , , 指定桌面名称,保留
.成员 lpTitle, 文本型, , , 如果为控制台进程则显示的标题
.成员 dwX, 整数型, , , 窗口横坐标
.成员 dwY, 整数型, , , 窗口纵坐标
.成员 dwXSize, 整数型, , , 窗口宽度
.成员 dwYSize, 整数型, , , 窗口高度
.成员 dwXCountChars, 整数型, , , 控制台窗口字符行数
.成员 dwYCountChars, 整数型
.成员 dwFillAttribute, 整数型, , , 控制台填充颜色
.成员 dwFlags, 整数型, , , 创建标记
.成员 wShowWindow, 短整数型, , , 窗口显示标记,同ShoWindow中的标记
.成员 cbReserved2, 短整数型, , , 保留参数
.成员 lpReserved2, 整数型, , , 保留参数
.成员 hStdInput, 整数型, , , 标准输入句柄
.成员 hStdOutput, 整数型, , , 标准输出句柄
.成员 hStdError, 整数型, , , 标准错误句柄


发布日期:

所属分类: 易语言 标签: