在我们的团队中,我们面临着选择:我们需要调用外部第三方代码并从我们的 C# 代码处理其输出。
第三方代码有两种形式:dll
s 集和单个exe
文件(可能dll
自己调用这些 s)。可能的方法可能是:使用Process.Start
语句运行可执行文件并捕获其输出。还有一种是dll
直接调用。
我试图了解我们应该使用哪种方法。
一方面调用可执行文件很简单,但另一方面——它感觉并不健壮。
一方面调用看起来更正确的方式来完成这项工作,但另一方面 -为我们在本机代码中拥有的所有函数dll
提供绑定可能是非常复杂的任务。C#
C
但我需要对这个话题进行更深入的分析才能做出最终决定。以前有没有人遇到过同样的问题,也许你可以分享你的发现。
这将非常有用!
编辑:在这种特殊情况下,我正在谈论视频转换。我需要从用户那里获取视频流并将其转换为一种视频格式。可以打电话ffmpeg
来做这项工作,一切都很好,直到出现问题,我需要重新启动编码或采取任何措施。我无法估计需要多长时间,如果我需要并行转换多个视频,ffmpeg
不会像我计划的那样灵活......
至少在我现在看来。当我深入研究时,也许会出现更多问题。