从DLL写入控制台

时间:2011-11-16 22:59:47

标签: c++ dll console pipe

我有一个程序的DLL,并希望能够在命令行中运行该程序,然后将我的DLL的输出传递给另一个程序。我该怎么做?

我现在可以打开一个新的调试控制台进行打印,但我希望能够管道输出,以便我可以运行如下的快捷方式:

C:\Windows\System32\cmd.exe /K "C:\Program_Using_the_DLL.exe | C:\Program_to_Pipe_To.exe"

这与一些类似的问题(IE:this one)不同,因为我需要能够管道输出,所以我需要它来到当前的控制台。

也许我可以某种方式使用GetStdHandle(),或者是否有使用AttachConsole(ATTACH_PARENT_PROCESS)?任何帮助,将不胜感激!我是这个细节的新手。

(DLL是用C ++编写的)

1 个答案:

答案 0 :(得分:1)

尝试使用函数GetStdHandle(STD_OUTPUT_HANDLE)获取当前输出文件的HANDLE