Zapobiegaj drukowaniu aplikacji konsoli (.NET Core) „zakończono z kodem 0.” w VS2019

9

Kiedy uruchamiam aplikację konsoli (.NET Core) za pomocą Ctrl + F5 (Rozpocznij bez debugowania) w Visual Studio Community 2019 (wersja 16.3.1), na końcu konsoli jest dołączany następujący komunikat:

C: \ HelloWorld \ bin \ Debug \ netcoreapp3.0 \ HelloWorld.exe (proces 1672) zakończony z kodem 0.

using System;

namespace HelloWorld
{
    class Program
    {
        static void Main(string[] args)
        {
            Console.WriteLine("Hello World!");
        }
    }
}

Wyjście konsoli

Czy jest jakiś sposób, aby uniemożliwić Visual Studio 2019 wydrukowanie tej wiadomości? Próbowałem rozwiązać problem, aby zapobiec pojawianiu się podobnego komunikatu w oknie wyjściowym , zmieniając opcję: Narzędzia> Opcje> Debugowanie> Okno wyjściowe> Przetwarzaj komunikaty wyjściowe = Wyłączone, ale nie ma to wpływu na okno konsoli.

Opcje programu Visual Studio

Uwaga: ten komunikat nie jest wyświetlany w programie Visual Studio 2017. Jest wyświetlany tylko w programie Visual Studio 2019 i tylko w aplikacjach .NET Core.

Theodor Zoulias
źródło
To duch wspólnoty. W każdym razie może to być błąd
Michael Randall
1
Jeśli masz pewność, że dzieje się tak nawet w świeżo zainstalowanej instancji programu Visual Studio 2019, mógłbym utworzyć problem na forum. Możesz to zrobić, naciskającHelp > Send Feedback > Report a Problem
Dwadzieścia
1
@Twenty Kilka dni temu zaktualizowałem Visual Studio do najnowszej wersji. Nie pamiętam, czy przed aktualizacją było tak samo, ponieważ pracowałem z VS 2017. Nie jestem pewien, czy to problem, czy funkcja. Może być konfigurowalny gdzieś w Opcjach.
Theodor Zoulias
Dlaczego to jest problem? Ctrl-F5 służy do testowania (a znajomość kodu wyjścia jest pomocną informacją zwrotną, gdy jest znacząca). Jakiekolwiek rzeczywiste użycie aplikacji konsolowej nie byłoby z poziomu VS.
Richard
3
W przypadku VS2019 jest to funkcja, a nie błąd. Odpowiada na 28-letnią skargę od programistów, którzy piszą małe aplikacje w trybie konsoli, zawsze zapomnieli dodać kod „Naciśnij dowolny klawisz, aby kontynuować” lub ustawić punkt przerwania na końcu Main. Więc nie mogli przeczytać wyników swojego programu, wielu wielu pytań na ten temat na SO i na forach. W VS2019 okno konsoli już się nie zamyka. I obowiązkowo informuje, że program się zakończył. Jest to czysta funkcja debugowania, nie zobaczysz tego podczas normalnego uruchamiania programu.
Hans Passant

Odpowiedzi:

5

Możesz go wyłączyć, zaznaczając Tools > Options > Debugging > General > Automatically close the console when debugging stopsopcję:

Opcje programu Visual Studio 2019

Jak sama konsola (Visual Studio 2019 v16.3.2):

Aplikacja konsoli

Spowoduje to, że konsola po prostu wydrukuje Press any key to continue..., uruchamiając bez debugowania ( CTRL+ F5), a nie kod wyjścia (nadal pozostawia konsolę otwartą):

Brak kodu wyjścia

Ivan García Topete
źródło
Ach! Niezłe znalezisko Ivan! Dziękuję bardzo! 😃
Theodor Zoulias