易语言资源网 - 做最全的易语言资源下载社区
<易语言软件开发工程师>第11期(预报名) 注册 登录

CMD控制台重定向   [复制链接]

    2021-06-08 17:52:02
    高级教程源码
    易语言资源网
    393 次浏览
    来源链接

本主题中的示例演示如何使用来自控制台进程的 [color=var(--theme-primary-base)]CreateProcess 函数创建子进程。 它还说明了使用匿名管道重定向子进程的标准输入和输出句柄的方法。 请注意,命名管道还可以用于重定向进程 i/o。

[color=var(--theme-primary-base)]CreatePipe函数使用 [color=var(--theme-primary-base)]安全 _ 属性结构创建两个管道的读写端的可继承句柄。 一个管道的读取端用作子进程的标准输入,另一个管道的写入端是子进程的标准输出。 这些管道句柄在 [color=var(--theme-primary-base)]STARTUPINFO 结构中指定,使其成为子进程继承的标准句柄。

父进程使用这两个管道的相对端来写入子进程的输入,并从子进程的输出中读取。 如 [color=var(--theme-primary-base)]安全 _ 属性 结构中所指定,这些句柄也是可继承的。 但不得继承这些句柄。 因此,在创建子进程之前,父进程使用 [color=var(--theme-primary-base)]SetHandleInformation 函数来确保子进程的标准输入的写入句柄和子进程标准输出的读取句柄不能继承。 有关详细信息,请参阅 [color=var(--theme-primary-base)]管道

取DOS返回也是采用匿名管道方式通信,但是遇到类似netstat -a 等耗时命令无法返回,通用CMD界面中按下ctrl+C可取消,本实例附加到子进程,可发送ctrl+C命令取消。



点我下载(已有 29 次下载)

引用模块





引用支持库


源码文件名支持库文件名支持库标识
CreatePipe 控制台重定向.e系统核心支持库 5.7d09f2340818511d396f6aaf844c7e325
特殊功能支持库 3.1A512548E76954B6E92C21055517615B0
多线程支持库 2.05F99C1642A2F4e03850721B4F5D7C3F8
应用接口支持库 3.1F7FC1AE45C5C4758AF03EF19F18A395D


[错误报告]   上一篇:检测抓包和检测虚拟机代码...     下一篇:支持生僻字的取拼音源码 ...