【发布时间】:2012-11-27 10:15:29
【问题描述】:
所以我正在尝试将 MonoDevelop 与 NAudio 和 Ubuntu Linux 一起使用,由于某种原因,它错误地说找不到 winmm.dll,所以我尝试下载它,并且“添加引用”对话框声称它无效.NET 库。这是我的代码....
using System;
using System.IO;
using Gst;
using GLib;
using Gst.BasePlugins;
using NAudio;
using NAudio.Wave;
namespace record_audio_simple_test
{
class MainClass
{
//Define class variables
private NAudio.Wave.WaveFileReader waveFile = null;
private NAudio.Wave.DirectSoundOut output = null;
public static void Main (string[] args)
{
WaveFileReader waveFile = new WaveFileReader("../../convo47.wav");
}
}
}
它说明了这一行的错误 WaveFileReader waveFile = new WaveFileReader("../../convo47.wav");
【问题讨论】:
-
这意味着 NAudio 不适用于 Mono。
-
SLaks,你能告诉我你为什么得出结论,或者给我一个你为什么这么认为的理由,或者也许可以用来解释你为什么这么想的过去经历吗?
-
这听起来像是通过 P/Invoke 使用的 Windows 原生 DLL。除非你能让那个 DLL 在 Wine 上工作,否则你可能不走运。谷歌一下。
-
除非有来自naudio.codeplex.com 的官方声明支持 Mono/Linux,否则您应该默认假设它(以及许多其他 .NET 库)与 Mono/Linux 不兼容。这是您将来应该遵循的经验法则。
标签: c# linux ubuntu monodevelop naudio