相关文章  
  • 部署Windows XP SP2后出现问题怎么办
  • 超一流软硬件资料检测大师AIDA32
  • 创建检测和更新Framework 的MSI软件包
  • 使用新的代码和标记模型创建真实的应用程序
  • 如何优化 Tablet PC 的功能应用程序
  • 为 Windows XP Embedded 创建自定义组件
  • 企业用户应当如何利用Windows XP SP2
  • 将现存的信息系统移植到组件化架构
  • 应用程序互操作性:互用性基本原理
  • 动态汉化Windows技术的一些简要分析
  •   推荐  
      科普之友首页   专利     科普      动物      植物        天文   考古   前沿科技
     您现在的位置在:  首页 >>文献 >>培训

    Windows管道技术的一些理解和运用2

    ES。
      
      typedef struct _SECURITY_ATTRIBUTES { // sa
            DWORD nLength;
            LPVOID lpSecurityDescriptor;
            BOOL bInheritHandle;
      } SECURITY_ATTRIBUTES;
      nLength是结构体的大小,自然是用sizeof取得了。lpSecurityDescriptor是安全描述符(一个C-Style的字符串)。bInheritHandle他指出了安全描述的对象能否被新创建的进程继承。先不要管他们的具体意义,使用的时候自然就知道了。
      
      好,现在我们来创建一个管道
      
      HANDLE hReadPipe, hWritePipe;
      SECURITY_ATTRIBUTES sa;
           
      sa.nLength = sizeof(SECURITY_ATTRIBUTES);
      sa.lpSecurityDescriptor = NULL; //使用系统默认的安全描述符
      sa.bInheritHandle = TRUE; //一定要为TRUE,不然句柄不能被继承。
      CreeatePipe(&hReadPipe,&hWritePipe,&sa,0);
      OK,我们的管道建好了。当然这不是最终目的,我们的目的是把DOS上的一个程序输出的东西重定向到一个Windows程序的Edit控件。所以我们还需要先启动一个DOS的程序,而且还不能出现DOS控制台的窗口(不然不就露馅了吗)。我们用CreateProcess创建一个DOS程序的进程。
      
      BOOL Cre

    页码:[1] [2] [3] [4] [5] [6] [7]2页、共7页

         

          设为首页       |       加入收藏       |       广告服务       |       友情链接       |       版权申明      

    Copyriht 2007 - 2008 ©  科普之友 All right reserved