3

dllmap構成ファイルエントリは、Windows DLLの要求をLinux(.so)ライブラリにマップするためにMonoで使用されます。しかし、Microsoftの.NET Frameworkがそのようなエントリを含む構成ファイルを解析しようとすると、「dllmap」を理解していないためにエラーが発生するようです。私のディストリビューションの他のすべては、LinuxとWindowsXPの両方で変更せずに配布できると思います。これに関連するすべての移植性の中で、この構成エントリは本当に欠点であり、移植性のない部分の1つですか?このファイルをプラットフォーム間で共有する方法もありませんか?

4

2 に答える 2

3

「dllmap」エントリが必要ですか? Windowsでは「somelibrary」から「somelibrary.dll」へ、Linuxでは「somelibrary.so」への自動マッピングに頼ることはできませんか?

その上、フレームワークは予期しないエントリをスキップするだけですが...

編集: Linux ライブラリを出荷する標準的な方法は、最新バージョンを指すバージョンのないシンボリック リンクを作成することです。したがって、へのlibfmodex.soポインタを追加しlibfmodex-4.22.01.soます。次に使用する[DllImport("fmodex")]と、フレームワークが残りを自動的に計算します。

于 2009-06-12T11:24:30.777 に答える
0

dll インポート コードを別のアセンブリ dll に配置します。次に、dllmap エントリを含む yourinterop.dll.config を追加します。MS では無視され、mono で処理されます。私の重複した質問を参照してください。

于 2016-04-29T20:14:35.147 に答える