J’utilise ffmpeg pour comstackr des vidéos et j’aimerais l’empêcher d’afficher une console lors de l’exécution d’actions.
Voici comment je commence ffmpeg:
ProcessStartInfo si = new ProcessStartInfo(); si.Arguments = ssortingng.Format("-y -loop 1 -t " + DucationToSsortingng(frameDuration) + " -r 25 -f image2 -i \"{0}\" \"{1}\"", item.Value, otpt); si.FileName = "ffmpeg"; si.UseShellExecute = false; Process.Start(si).WaitForExit();
ProcessStartInfo
les parameters que j’essaie dans ProcessStartInfo
, la console s’affiche toujours.
Comment puis-je empêcher la console d’être affichée lors de la création d’un processus enfant?
Vous devriez essayer d’utiliser
ProcessStartInfo si = new ProcessStartInfo(); si.WindowStyle = ProcessWindowStyle.Hidden; si.CreateNoWindow = true; si.UseShellExecute = false;
MSDN réfs
Définissez ProcessStartInfo.CreateNoWindow
sur true
.
Notez que:
Pour utiliser ProcessWindowStyle.Hidden
ou ProcessStartInfo.CreateNoWindow
la propriété ProcessStartInfo.UseShellExecute
doit être false
.
Avez-vous ajouté cela dans votre code
si.CreateNoWindow = true; si.RedirectStandardOutput = true;