NReco FFPMegConverter:路径不是合法形式

NReco FFPMegConverter: The path is not of a legal form

我正在使用 NReco FFMPegConverter,当我尝试获取缩略图时,出现错误:

 System.ArgumentException: The path is not of a legal form.
   at System.IO.Path.LegacyNormalizePath(String path, Boolean fullCheck, Int32 maxPathLength, Boolean expandShortPaths)
   at System.IO.Path.NormalizePath(String path, Boolean fullCheck, Int32 maxPathLength, Boolean expandShortPaths)
   at System.IO.Path.GetFullPathInternal(String path)
   at System.IO.File.InternalGetLastWriteTimeUtc(String path, Boolean checkHost)
   at NReco.VideoConverter.FFMpegConverter.EnsureFFMpegLibs()
   at NReco.VideoConverter.FFMpegConverter.ExtractFFmpeg()

这是我遇到错误的代码行。

        var filep = domainVideoFile.AbsolutePath;
        _fFMpegConverter.GetVideoThumbnail(filep, tempfileName);

在上面的例子中,filep = "C:\Users\me_000\Downloads\GRoma\G.mp4" 和 tempFileName = "C:\Users\me_000\Desktop\f480b6c0.jpeg"在调试模式下直接从 Locals 视图复制时。

另一个线程在 SO 上引用了这个问题,所述解决方案是设置 FFMPegToolPath 属性。

 fFMpegConverter.FFMpegToolPath = _thumbPathManager.GetFFMPegPath;

我已经尝试过它和它的各种版本,但我仍然遇到错误。如果有帮助,我正在使用 1.1.2.0 版本。

无论我如何调用 FFMpegToolPath、ExtractFFmpeg 等等,都会弹出错误。

非常感谢任何帮助。

这个问题非常隐蔽,但我弄清楚了发生了什么。

我正在使用 Fody.Costura 合并我的 DLL 资源。这适用于所有其他 DLLS,但 NReco DLL 不接受合并。我猜这会导致文件路径问题,因为 DLL 不作为独立文件存在。