学习 VC 管道技术CreateProcess,pipe cmd回显

//

//通过管道技术回显cmd输出信息

//

SECURITY_ATTRIBUTES sa;

HANDLE hRead,hWrite;

sa.nLength = sizeof(SECURITY_ATTRIBUTES);

sa.lpSecurityDescriptor = NULL; //使用系统默认的安全描述符

sa.bInheritHandle = TRUE; //创建的进程继承句柄

if (!CreatePipe(&hRead,&hWrite,&sa,0)) //创建匿名管道

{

MessageBox("CreatePipe Failed!","提示",MB_OK | MB_ICONWARNING);

return;

}

STARTUPINFO si;

PROCESS_INFORMATION pi;

ZeroMemory(&si,sizeof(STARTUPINFO));

si.cb = sizeof(STARTUPINFO);

GetStartupInfo(&si);

si.hStdError = hWrite;

si.hStdOutput = hWrite; //新创建进程的标准输出连在写管道一端

si.wShowWindow = SW_HIDE; //隐藏窗口

si.dwFlags = STARTF_USESHOWWINDOW | STARTF_USESTDHANDLES;

char cmdline[200];

CString tmp,stredit2;

GetDlgItemText(IDC_EDIT_CMD,stredit2); //获取编辑框中输入的命令行

tmp.Format("cmd /C %s",stredit2);

sprintf(cmdline,"%s",tmp);

if (!CreateProcess(NULL,cmdline,NULL,NULL,TRUE,NULL,NULL,NULL,&si,&pi)) //创建子进程

{

MessageBox("CreateProcess Failed!","提示",MB_OK | MB_ICONWARNING);

return;

}

CloseHandle(hWrite); //关闭管道句柄

char buffer[4096] = {0};

CString strOutput;

DWORD bytesRead;

while (true)

{

if (ReadFile(hRead,buffer,4095,&bytesRead,NULL) == NULL) //读取管道

break;

strOutput = buffer;

SetDlgItemText(IDC_EDIT_OUTPUT,strOutput); //显示输出信息到编辑框,并刷新窗口

UpdateWindow();

Sleep(100);

}

CloseHandle(hRead);

重点在于CreatePipe(),CreateProcess()两个函数上 关于这两个函数的参数查查MSDN就知道了

上面代码做成的程序示例

http://download.csdn.net/source/586627

  

爱华网本文地址 » http://www.413yy.cn/a/25101013/173029.html

更多阅读

有关SFA,效率损失函数的估计 水稻倒伏受灾损失估计

Q:在学习SFA计算技术效率及其影响因素时,有个问题,在分析影响因素时,涉及到无效率模型就是那个mi,先估计这个模型再进行实证研究,我想问的是如何进行实证研究。个人感觉第一步骤先计算技术效率同时估算生产函数中的那些参数;第二步骤才分

PS合成技巧~~新手学习图片合成技术

原图素材:图片如下:找到一张比较匹配原图的照片素材……图片如下:应该知道接下去我会做些什么了吧~~~1.在素材图片,用多边形套索工具选出头部。图片如下:2.按V键切换到移动工具,把选区内的图像直接托拽到目标合成图上,形成一个新图层。图片如

管道过滤器模式 分布式

管道过滤器模式(Pipe and Filter)与组合模式(修改) 2010-07-12 21:51:08标签:Pipe and Filter Composite 组合模式 管道过滤器原创作品,允许转载,转载时请务必以超链接形式标明文章 原始出处 、作者信息和本声明。否则将追究法律责任。http

小学五年级信息技术教案下册全册教案下载 五年级下册美术教案

第五册信息技术教学计划一、基本情况分析:六年级的学生通过几年的计算机活动课的学习,已经对计算机这门学科并不陌生了,已初步懂得了一些关于计算机的基础知识,掌握了计算机的基本操作,鼠标操作比较熟练,能利用画图软件绘出简单的图画,多数

声明:《学习 VC 管道技术CreateProcess,pipe cmd回显》为网友拽天下分享!如侵犯到您的合法权益请联系我们删除