Muszę uruchomić aplikację konsoli z mojej aplikacji systemu Windows. Aplikacja konsoli chcę uruchomić to osadzonego zasobu w mojej aplikacji i wzywam go tak:Okno konsoli wciąż pojawia się nawet po ProcessWindowStyle.Hidden;
// Run the updater and grab its output
Process Updater = new Process();
Updater.StartInfo.FileName = "C:\\tmp\\tmp.exe";
Updater.StartInfo.WindowStyle = ProcessWindowStyle.Hidden;
Updater.StartInfo.UseShellExecute = false;
Updater.StartInfo.RedirectStandardOutput = true;
Updater.Start();
string UpdaterOutput = Updater.StandardOutput.ReadToEnd();
Updater.WaitForExit();
Wydobywa porządku, i to działa dobrze, a także porywa jego produkcja zupełnie w porządku ... ale wciąż widzę, że okno konsoli otwiera się szybko, gdy jest uruchamiane. Wiem, że wyskakujące okno konsoli pochodzi z tej aplikacji, ponieważ tytuł konsoli to C:\tmp\tmp.exe
. Czy jest jakiś całkowicie odporny na awarię sposób ukrywania aplikacji konsoli? Pomyślałem, że użycie ProcessWindowStyle.Hidden
może to zrobić, ale najwyraźniej nie.
Dzięki.
to pytanie odpowiada, proszę zamknąć wątek. –
@Hans Passant - Czy moja odpowiedź może zostać zaakceptowana, jeśli trafiam na czapkę na cały dzień? – fletcher
@fletch: pewnie, bez ograniczenia na punkty znacznika odpowiedzi. –