zoukankan      html  css  js  c++  java
  • VC 命令行 捕获输出

    代码
            STARTUPINFO   si;   //   启动信息   
        PROCESS_INFORMATION   pi;   //   进程信息   
        si.cb   =   sizeof(STARTUPINFO);   
        GetStartupInfo(
    &si);   //取得当前进程的StartupInfo,并根据当前进程进行修改 
        si.hStdError   =   hWrite;   //错误输出 
        si.hStdOutput   =   hWrite;   //标准输出 
        si.wShowWindow   =   SW_HIDE; 
        si.dwFlags   
    =   STARTF_USESHOWWINDOW   |   STARTF_USESTDHANDLES; 
        CString strCmdLine 
    ="cmd" ;
        
    //创建子进程 
        if   (!CreateProcess(NULL, strCmdLine.GetBuffer(),NULL,NULL,TRUE,NULL,NULL,NULL,&si,&pi)) 
        { 
            MessageBox( 
    "创建进程失败!"); 
            
    return
        } 
        CloseHandle(hWrite); 
        Sleep(
    200); 
        
    char   buffer[4096]   =   {0};   
        DWORD   bytesRead;   
        
    while   (true
        {   
            
    if   (ReadFile(hRead,buffer,4095,&bytesRead,NULL)   ==   NULL)   
                
    break;   
            CString strInfo;
            GetDlgItemText(IDC_EDIT_Info,strInfo);
            strInfo   
    +=   buffer;  
            SetDlgItemText(IDC_EDIT_Info,strInfo);
            
    //TRACE(buffer); 
        } 
        CloseHandle(hRead);
  • 相关阅读:
    saltstack总结-2018-0620
    我的书籍《Redis 源码日志》
    深入剖析 redis 主从复制
    深入剖析 redis AOF 持久化策略
    初探单点登录 SSO
    深入剖析 redis RDB 持久化策略
    深入剖析 redis 事件驱动
    memcached 源码阅读笔记
    Django 源码小剖: Django ORM 查询管理器
    Django 源码小剖: Django 对象关系映射(ORM)
  • 原文地址:https://www.cnblogs.com/ganmk/p/1875874.html
Copyright © 2011-2022 走看看