繁体   English   中英

attachconsole的问题

[英]The problem of attachconsole

我需要使 windows GUI 应用程序可以在控制台中运行,因此当使用命令行调用应用程序时,我将控制台附加到进程。 但是,在应用程序退出后,除非按下 ENTER 键,否则不会显示带有路径的控制台提示。 有没有什么办法可以不按回车键直接显示带有路径的提示? 谢谢。

简短的回答:这是不可能的。

长答案:好吧,如果您愿意稍微放宽您的要求,这是有可能的。 你基本上有三个选择:

  1. 你已经做了什么。 您可以将 GUI 应用程序附加到控制台,但 cmd.exe 不会等待您的应用程序退出。
  2. 创建一个 GUI 应用程序并在 GUI 应用程序中打开控制台。 控制台只会在您申请时持续。
  3. 或者您可以稍微重构您的应用程序/源代码并提供两个可执行文件,一个直接启动 GUI 的 GUI,另一个是控制台可执行文件。

在 C# 中,我使用SendKeys.SendWait("{ENTER}"); 要做到这一点。 我认为在 C++ 中,keybd_event function 做了类似的事情。

与使用 MayaBatch 的 Autodesk Maya 一样,您可以构建一个小型控制台应用程序,该应用程序基本上使用 CreateProcess 运行您的 GUI 应用程序并使用 WaitForSingleObject 等待。

您必须在控制台中使用此“批处理”版本的应用程序。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM