是否可以将非控制台Win32应用程序附加到调用cmd shell?

Mar*_* Ba 6 windows winapi cmd console-application visual-c++

当我有一个Win32非控制台应用程序(AFAIK,Win32应用程序的控制台链接到exe)时,从控制台启动它将cmd.exe立即返回到命令提示符,"在后台"运行应用程序(oc它可以有各种GUI,甚至可以打开自己的控制台窗口)

是否可以在非控制台可执行文件中检测到它是从cmd.exe启动并将其"附加"到启动cmd.exe?

请注意,有与此相关的各种问题/答案,但似乎尚未对此确切方法进行调查.(也许这不可能.)

Dav*_*nan 5

你可以很容易地做到这一点.简单地ATTACH_PARENT_PROCESS转到AttachConsole.

我不能说最终结果是否合理或实际.这两个进程都会读取和写入同一个控制台,这可能会非常奇怪.