请原谅我的noob-ness,但是如何用一个C#安装项目打包LAME.exe?目前,我将LAME称为:
//use stringbuilder to create arguments
var psinfo = new ProcessStartInfo( @"lame.exe")
{
Arguments = sb.ToString(),
WorkingDirectory = Application.StartupPath,
WindowStyle = ProcessWindowStyle.Hidden
};
var p = Process.Start( psinfo );
p.WaitForExit();
这适用于开发机器上的调试和发布模式,但是当我为此创建一个安装项目时,它从不创建MP3。 LAME和编译后的代码在安装时位于同一目录中。救命啊!
答案 0 :(得分:0)
WindowStyle = ProcessWindowStyle.Hidden
对此进行评论,以便您可以实际读取lame产生的错误消息。使用单独的EXE这种方式很脆弱,您无法检测或诊断它无法完成其工作。您可能会看到Process.ExitCode中的某些内容,非零值应该表示失败。