7

C# で FMOD を使用しています。fmodex.dll[プロジェクト] -> [参照の追加] を選択してファイルをインポートしようとしましたfmodex.dllが、次のエラーが表示されます。

... への参照を追加できませんでした。ファイルにアクセスできること、および有効なアセンブリまたは COM コンポーネントであることを確認してください

アクセス可能ですが、それでもエラーが発生します。ガイドを読んだところfmodex_vc.lib、ファイルにリンクするときにを使用するように書かれていfmodex.dllます。試してみましたが、Visual Studio で .lib ファイルにリンクする方法が見つからないようです。Google で検索すると、常に .dll ファイルへのリンクにたどり着きます。

4

4 に答える 4

7

Fmod はアンマネージ C++ で記述されているため、.Net アプリケーションから直接参照することはできません。あなたのプロジェクトに追加でき、P/Invoking を作成してくれると私が誤解していなければ、"fmod_wrapper" というディレクトリの下にある fmod パッケージの fmodex.dll への ac# ラッパーがあります。

于 2011-05-16T16:25:51.730 に答える
2

https://github.com/madrang/FmodSharpを試してみてください。現在の Fmod ラッパーよりも優れているはずです。

C# で C++ を使用しているようなハンドルとコーディングを使用する代わりに。FmodSharp ラッパーはオブジェクト指向であり、ハンドルの使用について考える必要はありません。

public static void Main (string[] args)
{
    Console.WriteLine ("Fmod Play File Test");

    Xpod.FmodSharp.Debug.Level = Xpod.FmodSharp.DebugLevel.Error;
    var SoundSystem = new Xpod.FmodSharp.SoundSystem.SoundSystem();

    Console.WriteLine ("Default Output: {0}", SoundSystem.Output);

    SoundSystem.Init();
    SoundSystem.ReverbProperties = Xpod.FmodSharp.Reverb.Presets.Room;

    if (args.Length > 0) {
        foreach (string StringItem in args) {
            Xpod.FmodSharp.Sound.Sound SoundFile;
            SoundFile = SoundSystem.CreateSound (StringItem);

            Xpod.FmodSharp.Channel.Channel Chan;
            Chan = SoundSystem.PlaySound(SoundFile);

            while(Chan.IsPlaying) {
                System.Threading.Thread.Sleep(10);
            }

            SoundFile.Dispose();
            Chan.Dispose();
        }

    } else {
        Console.WriteLine ("No File to play.");
    }

    SoundSystem.CloseSystem();
    SoundSystem.Dispose();
}
于 2011-12-12T04:46:14.550 に答える
1

C# で FMOD を使用するには、p/Invoke を使用して FMOD 関数と構造体をラップする必要があります。このタスクは、オープン ソース プロジェクトfmodnetで処理されました。

于 2011-05-16T16:26:52.320 に答える
-1

COM 項目を VS プロジェクトに追加するには、次の手順を実行します。

  • COMを登録する

  • 「参照を追加」を選択

  • COMタブを選択

  • アイテムを参照して選択します。

VS が BIN ディレクトリに Interopt DLL ライブラリを作成したことが (ビルド後に) 表示されるはずです。

于 2011-05-16T16:20:53.047 に答える