簡體   English   中英

從C#運行命令

[英]Running Commands from C#

最糟糕的話題,但不能說更多。

問題是,我正在嘗試從cmd運行某個命令,如果我在Windows中正常執行此命令,它是完美無缺的,在C#中,即使它是完全相同的字符串,也無法正常工作。

這是我的方法:

        Process cwebp = new Process();
        cwebp.StartInfo.FileName=("cmd.exe");
       cwebp.StartInfo.Arguments = Settings.EncoderSettings[0];
       cwebp.Start();

好參數幾乎是任何東西,例如:

opusenc --bitrate 100 input.wav output.opus

這里有什么基本問題嗎? 一直在搜索很多東西,找不到任何信息,所有內容都說(使用Arguments),我也這樣做了,而且它沒有按預期工作。

除了史蒂夫的答案,您可以直接啟動命令,而無需首先使用cmd

Process.Start("opusenc", "--bitrate 100 input.wav output.opus");

要執行shell命令,您需要在參數行中添加參數/ C(/ K)

 Process cwebp = new Process();
 cwebp.StartInfo.FileName=("cmd.exe");
 cwebp.StartInfo.Arguments = "/C " + Settings.EncoderSettings[0];
 cwebp.Start();

沒有它,Process.Start方法將啟動cmd命令處理器,但是這一步將立即退出,而不處理傳遞的參數。

暫無
暫無

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

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