请问怎样传递一个句柄到用CreateProcess创建的子程序中,子程序如何获取该句柄。谢谢...

解决方案 »

  1.   

    共享dll,在DLL中申明一个共享段,把句柄放在共享段中,不过我最近发现一个新方法,可以通过窗口DC来共享数据,这个更简单些
      

  2.   

    you can also pass the handle in the command line.
      

  3.   

    我在网上看了编文章:我们用CreateProcess执行一个外部程序时,怎样才能得到这个程序的输入输出呢?CreateProcess已经替我们准备好了,在CreateProcess的STARTUPINFO参数里有这样几个hStdInput、hStdOutput、hStdError东东,用来为创建的进程指定输入输出,例如用CreateFile创建一个文件,接着把得到的文件句柄指定给hStdOutput,并且把dwFlags的值设为USESTDHANDLES,这样外部程序的输出就会输到这个文件里。注意:CreateFile的SECURITY_ATTRIBUTES.bInheritHandle参数要设为TRUE。但我不知道该怎样调用???
      

  4.   

    windows核心编程这本书讲的详细
    一共三种方法1.命令行参数
    2.消息
    3.环境变量
      

  5.   

    句柄说白了就是数字而已,理想的办法觉得应该是做为CreateProcess的参数传递过去再转换成句柄就可以了
      

  6.   

    通过参数传递进去,然后用DuplicateHandle生成本地Handle