【问题标题】:Packaging LAME.exe with a C# project用 C# 项目打包 LAME.exe
【发布时间】:2010-05-22 14:41:30
【问题描述】:

请原谅我的菜鸟,但是如何将 LAME.exe 与 C# 安装项目打包?目前,我的 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 和编译后的代码在安装时位于同一目录中。救命!

【问题讨论】:

    标签: c# mp3 lame


    【解决方案1】:

    窗口样式 = ProcessWindowStyle.Hidden

    注释掉,这样你就可以真正阅读 lame 产生的错误信息。以这种方式使用单独的 EXE 很脆弱,您无法检测或诊断它无法完成工作。您可能会从 Process.ExitCode 中看到一些内容,非零值应该表示失败。

    【讨论】:

    • 不幸的是,这没有帮助。 LAME 进程在屏幕上停留的时间不够长,无法发挥作用。
    • 使用 cmd.exe /k lame.exe options 运行它,这样控制台窗口就会保持打开状态。
    • 谢谢,汉斯。原来是目录问题。
    • 我应该指定更多细节:问题出在对 LAME 的调用中。它包含一个名称类似于“这个地方”的目录。问题不在于部署。再次感谢 Hans 帮助我解决此问题。
    猜你喜欢
    • 1970-01-01
    • 2014-05-07
    • 2019-09-23
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2013-06-05
    • 1970-01-01
    相关资源
    最近更新 更多