采用AttachConsole可以将调用者进程控制台IO attach到指定的进程控制台上,然后就可以使用Console IO;
  
  
   使用
   
    GetStdHandle获取目前的标准输入输出Handle,然后将DLL中的标准输入输出采用SetStdHandle,即可正常使用Console IO函数;
   
  
  
   
    针对调用者无Console的情况,则需要
   
   AllocConsole,来为进程申请个控制台使用:
  
  
   注意:每一个进程只能有一个console与其关联,如果调用者有console,AllocConsole就会失败.
  
  
   针对GUI程序要使用console,则需要AllocConsole,方法见:
   
    Adding Console I/O to a Win32 GUI App
   
   .
  
  
   对于在动态链接库作为独立单元运行的情况,可能需要多个console分别显示每个单元的运行信息,则需要创建进程,并在其中申请console使用.
  
  
   备注:
   
    在常规应用中完全可以直接使用Console IO函数.
   
  
  
   
    Adding Console I/O to a Win32 GUI App
   
   .
  
  
   
    How to Open Console Window in a Win32 Application
   
  
  
   
    MSDN--Consoles
   
  
  
   
    Writing to Console from DLL
   
  
  
   
    Unable to write to console screen from C++ DLL