Externe Anwendung starten und Fenster minimieren
-
Hallo,
ich möchte gerne aus meinem C# Programm heraus den Video-Player "FFplay" starten.private void button2_Click(object sender, EventArgs e) // Start the FFplay process { ProcessStartInfo startInfo = new ProcessStartInfo(); startInfo.WindowStyle = ProcessWindowStyle.Normal; //startInfo.WindowStyle = ProcessWindowStyle.Minimized; startInfo.FileName = "ffplay"; startInfo.Arguments = "-f lavfi testsrc2=s=vga"; Process.Start(startInfo); }
Das Problem ist, dass zwei Fenster erscheinen: Ein Konsolen-Fenster und das Video-Fenster. Ich möchte gerne nur das Video-Fenster sehen. Das Konsolen-Fenster soll minimiert sein. Wenn ich in meinem Beispiel WindowStyle auf Minimized setze, dann werden beide Fenster minimiert.
Wie kann ich das Video-Fenster vom minimierten Zustand auf die normale Größe bingen?
Oder andersrum, wie kann ich das Konsolen-Fenster minimieren?Michael
-
-
startInfo.CreateNoWindow = true;
Das hatte ich schon ausprobiert, aber es zeigt keine Wirkung. Es werden trotzdem beide Fenster erzeugt.
-
@micha7 Witzkeks. Warum sagst Du das nicht gleich!?
-
@Swordfish Wenn ich alles hinschreiben würde was ich schon ausprobiert habe und was nicht funktioniert hat, dann wäre der Text so lang dass du's nicht lesen würdest.
-
using System.Diagnostics; using System.ComponentModel; namespace WpfApp1 { public partial class MainWindow : Window { public MainWindow() { InitializeComponent(); } private void button_Click(object sender, RoutedEventArgs e) { using (Process myProcess = new Process()) { myProcess.StartInfo.UseShellExecute = false; myProcess.StartInfo.FileName = "C:\\ffmpeg-2020-10-28-git-e5be4c5a88-full_build\\bin\\ffplay.exe"; myProcess.StartInfo.Arguments = "-f lavfi testsrc2=s=vga"; myProcess.StartInfo.CreateNoWindow = true; myProcess.Start(); } } } }
Keine Konsole bei mir.
-
@Swordfish Jetzt sehe ich wo das Problem war, bei mir hat UseShellExecute = false gefehlt.
Jetzt geht es! Tausend Dank!!!Michael
-
@micha7 Kein Problem. Aber das nächste mal sagst Du gleich was Du genau versucht hast. Danke.
-
@micha7 War in der Nacht schon zu müde. Wenn ich Dir
@Swordfish sagte in Externe Anwendung starten und Fenster minimieren:
?
hinwerfe und Du darauf sagst daß Du das schon versucht hast dann gehe ich schon davon aus, daß Du den Beispielcode liest und genauso umsetzt wie im Beispiel angegeben. Von Deiner Aussage
@micha7 sagte in Externe Anwendung starten und Fenster minimieren:
startInfo.CreateNoWindow = true;
Das hatte ich schon ausprobiert, aber es zeigt keine Wirkung. Es werden trotzdem beide Fenster erzeugt.
kann man im Leben nicht darauf kommen, daß
StartInfo.UseShellExecute
nichtfalse
gesetzt wurde. Auch empfand ich ehrlich gesagt@micha7 sagte in Externe Anwendung starten und Fenster minimieren:
@Swordfish Wenn ich alles hinschreiben würde was ich schon ausprobiert habe und was nicht funktioniert hat, dann wäre der Text so lang dass du's nicht lesen würdest.
ziemlich daneben, denn entweder interessiert einen Leser etwas und er liest es oder er lässt es bleiben. Aber es gehört zum guten Ton bei einer Bitte um Hilfe zu erwähnen was schon versucht worden ist. Je vollständiger und präziser desto gut - das spart zeit- und nervenraubende Nachfragen. Bei der Kommunikation über solche Themen ist Präzision unbedingt notwendig.