【问题标题】:Console window display by argument通过参数显示控制台窗口
【发布时间】:2010-09-30 10:58:36
【问题描述】:

我有一个 C# 项目构建“winexe”,启动时没有控制台窗口。

但是,我想通过提供 cmd 行参数来显示控制台窗口并写入 stdout/stderr。如果它关闭,应用程序将关闭。例如:eclipse.exe -debug

怎么做?

PS。我正在使用 Visual Studio 2005

【问题讨论】:

    标签: c# windows visual-studio-2005 console winexe


    【解决方案1】:
    【解决方案2】:

    即使在 Windows 窗体应用程序中,控制台也在那里,您可以使用System.Console 开始编写,可能基于您提到的命令行选项,或配置开关,或其他。从控制台窗口提示符启动您的应用程序将像正常一样打开您的 GUI,并且控制台输出将按照您的预期显示在控制台中。例如,您甚至可以将该控制台输出重定向到一个文件。也许这对你来说已经足够了?

    实际上,从您的 Windows 窗体应用程序开始显示控制台窗口是另一回事。不完全确定如何去做(如果可能的话)。我会考虑启动一个cmd 实例,可能使用System.Diagnostics.Process 启动一个进程,同时重定向那个新进程的stdin/stdout/stderr

    不过,这只是我目前的猜测。也许其他一些答案在这里会有所帮助?

    【讨论】:

    • 如果应用程序是使用 /target:winexe 构建的,那么 Console.Write 将不会正常显示在控制台中。您仍然可以将输出重定向到文件,或将其通过管道传送到“更多”或其他进程。不幸的是,“类型”不读取它的标准输入,所以你不能通过管道传递给它。虽然我找不到重定向到控制台的方法 - 似乎 ">con" 应该工作,但它没有。 (我运行的是 Windows 7。)
    猜你喜欢
    • 2017-07-04
    • 2021-03-20
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2011-04-04
    • 1970-01-01
    • 2017-09-09
    相关资源
    最近更新 更多