簡體   English   中英

進程不會在 c# 中最小化

[英]Process won't start minimized in c#

pro.StartInfo.FileName =  @"C:\Program Files (x86)\Mozilla Firefox\firefox.exe";

pro.StartInfo.Arguments = a;
pro.StartInfo.WindowStyle = ProcessWindowStyle.Minimized;

pro.Start();

我上面有這段代碼,它啟動 Firefox 最小化。 但 Firefox 實際上並沒有以最小化的方式啟動,而是作為一個普通的窗口啟動。 我的代碼有什么問題? 我必須讓線程休眠 100 毫秒嗎?

試試這個:)

pro.StartInfo.FileName =  @"C:\Program Files (x86)\Mozilla Firefox\firefox.exe";

pro.StartInfo.Arguments = a;
pro.UseShellExecute = true;
pro.StartInfo.WindowStyle = ProcessWindowStyle.Minimized;

pro.Start();

因為我認為這僅在 Firefox 未運行時才有效。 否則它仍然會打開 Firefox,但不會最小化。 如果您想在進程已經啟動的情況下最小化您自己的啟動 Firefox,您將需要按照此處所述處理ShowWindow

要在不打開終端窗口的情況下啟動進程,可以這樣做:

 ProcessStartInfo pro = new ProcessStartInfo();

 pro.FileName = 'pathToFile'
 pro.RedirectStandardInput = true;
 pro.RedirectStandardOutput = false;
 pro.Arguments = 'some arguments'
 pro.UseShellExecute = false;
 pro.CreateNoWindow = true; // <- imp. line

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM