cmd命令未被识别为>;内部或外部命令、可操作程序或批处理文件
本文关键字:命令 外部 程序 批处理文件 内部 可操作 gt 识别 cmd | 更新日期: 2023-09-27 18:25:11
当我运行此代码时。
public void WaterMarkingUsingCommandLine(string videopath, string imagepath)
{
string OutputFolder = AppDomain.CurrentDomain.BaseDirectory + "Output''" + System.IO.Path.GetFileNameWithoutExtension(videopath) + "_Output.mp4";
string ffmpegPath = @""""+AppDomain.CurrentDomain.BaseDirectory + @"ffmpeg.exe""";
string ffmpegParams = @"-i """+videopath+@""" -i """+imagepath+@""" -filter_complex ""overlay=10:10"" """+OutputFolder+@"""";
Process ffmpeg = new Process();
ffmpeg.StartInfo.FileName = "cmd.exe";
ffmpeg.StartInfo.Arguments = "/k " + ffmpegPath + " " + ffmpegParams;
ffmpeg.Start();
}
我在cmd中看到了这一点。
"c:''users''jafar.baltidynamolog''documents''visual"未被识别为内部或外部命令、可操作程序或批处理文件。
C: ''Users''jafar.baltdynamolog''Videos''Videos>
这个问题似乎是由于空间问题。正如在其他问题中所说,我在文件名周围添加了逗号,但它仍然不起作用。
更新
通过调试,我发现的价值
ffmpeg.StartInfo.Arguments=
"/k''"c:''users''jafar.baltdynamolog''documents''visual studio2010''Projects''VideoProjectBilal''WideoProjectBilal''bin''Debug''ffmpeg.exe''"-i''"C:''Users''jafar.baltidynamolog''Videos''Videos''SampleVideo_360x240_2mb.mp4''"-i''"C:''Users''jafar.baltidinamolog''Videos''images''2.png''"-filter_complex''"overlay=10:10''"''"C:''Users''jafar.paltidinaMolog''documents''visual studio2010''Projects''VideoProjectBilal''WideoProjectBilal''bin''Debug''Output''SampleVideo_360x240_2mb_Output.mp4''"
尝试更改此行:string ffmpegPath = @""""+AppDomain.CurrentDomain.BaseDirectory + @"ffmpeg.exe""";
为此:string ffmpegPath = @"""" + AppDomain.CurrentDomain.BaseDirectory + "ffmpeg.exe";
更新
试试这个:
string OutputFolder = AppDomain.CurrentDomain.BaseDirectory + "Output''" + System.IO.Path.GetFileNameWithoutExtension(videopath) + "_Output.mp4";
string ffmpegPath =AppDomain.CurrentDomain.BaseDirectory + "ffmpeg.exe";
string ffmpegParams = "-i " + videopath + " -i " + imagepath + " -filter_complex overlay=10:10 " + OutputFolder ;