0

「コマンド プロンプト」を Windows フォームに再作成しています。アプリケーションが正常に動作していません。エラーが見つかりません。

 exiftool photo_file.jpg |find "Shutter Count" 

これは、コマンド プロンプトで適切に機能するコマンドです。ここで何が欠けているのか分かりますか?

   private void btncheck_Click(object sender, EventArgs e)
    {
        String StrCmdText;
        var process = Process.Start("CMD.exe", "/c exiftool " + txtBrowse.Text + " |find "Shutter Count"");
        process.WaitForExit();
    }
4

2 に答える 2

3

文字列リテラル\"を使用し、コードを次のように変更するだけです

var process = Process.Start("CMD.exe", "/c exiftool " + txtBrowse.Text + " |find \"Shutter Count\"");

また

var process = Process.Start("CMD.exe", "/c exiftool " + txtBrowse.Text + " |find ""Shutter Count""");
于 2016-01-26T20:28:37.083 に答える
1

このような引数でプロセスを開始してみてください...

var p = new System.Diagnostics.Process();
    p.StartInfo.FileName = "cmd.exe";
    p.StartInfo.Arguments = "/c arguments here";
    p.StartInfo.RedirectStandardOutput = true;
    p.StartInfo.UseShellExecute = false;
    p.StartInfo.CreateNoWindow = true;
    p.Start();
于 2016-01-26T20:27:39.283 に答える