如何在调试模式和Windows应用程序中以发布模式构建控制台应用程序?

时间:2012-06-17 16:45:40

标签: c# visual-studio-2010

与Sharpdevelop一样,当您以debug模式启动解决方案时,它会启动应用程序和控制台(显示日志)。当您以release模式启动应用程序时,它只会启动应用程序。

当我使用Visual Studio Gui修改.prj文件时,最后一个配置会覆盖debug release模式。

如何将Visual Studio配置为与Sharpdevelop解决方案具有相同的行为?

2 个答案:

答案 0 :(得分:1)

Visual Studio没有此行为。

但是,对于Windows窗体/ WPF应用程序,它具有输出工具窗口(菜单View / Output以显示它)。所有日志,诊断消息和所有调试都显示在那里。

对于控制台应用程序,应用程序将在控制台(终端窗口)中运行。

编辑:如果你想到它,你也可以在VS中做类似的事情。 在项目属性中,转到“调试”并选择“启动操作”选择“外部程序”。在那里你可以输入路径

  

%WINDIR%/ system32 / cmd.exe / k“调试exe的路径”

答案 1 :(得分:1)

Visual Studio项目将应用程序设置组织在三个PropertyGroup中。 Debug,Release和一组独立于活动配置的选项。 OutputType位于最后一个。

解决方法是自己创建控制台。使用Application.Startup事件,如下所示:

public partial class App : Application {
    private void Application_Startup(object sender, StartupEventArgs e) {
#if DEBUG
        AllocConsole();
        Console.WriteLine("Hello world");
#endif
    }

    [System.Runtime.InteropServices.DllImport("kernel32.dll")]
    private static extern bool AllocConsole();
}
相关问题