2011-08-01 10 views
3

小さなテストアプリケーションをWindows .NET 4からMonoTouchに変換したいのですが、私はSystem.IO.MemoryMappedFilesがありません。 それから、私はプレーンなモノコンソールアプリで試してみましたが、名前空間もそこにはありません。 MonoDevelop 2.4と組み合わせてMono 2.10を試しました。MonoTouchのSystem.IO.MemoryMappedFiles?

そこにいるはずですか? Monoと.NET4の互換性が発表されたので、私は混乱しています。

答えて

2

Mono 2.10には、メモリマップファイルがサポートされています。しかし、それは100%完全ではありません(そしてセキュリティのようなWindows固有のものは今までには含まれていないでしょう)ので、YMMV。

あなたはGITリポジトリから入手何ブラウザ次のことができます。これはコンパイル(ともシステムを参照するようにコードを取得するには「DMCの」コンパイラを使用する必要があります.NET 4.0の機能ですので https://github.com/mono/mono/tree/mono-2-10/mcs/class/System.Core/System.IO.MemoryMappedFiles

をタイプが存在する.Core.dll)。

MonoTouchについては、Monoのサブセットを提供しています(もともとSilverlightの2.1プロファイルに基づいていました。現在(MonoTouch 4.xの場合)、これにはSystem.IO.MemoryMappedFile。* namespaceの型は含まれていません。将来のバージョンでは、より多くの.NET 4.0機能が提供されます(iOSから入手可能な場合)。

+0

ありがとうございました。あなたの答えには、私があなたに確認したい重要なヒントが含まれています:MonoTouchはMonoを「付属」して来ています - それは間違いありませんか?私がMT 4.0.4をインストールし、ローカルMonoランタイムを2.6から2.10に変更した場合、MTは影響を受けません(デバイス/シミュレータ)。 – Krumelur

+0

そうです。 MT自体(デバイスまたはシミュレータ上のアプリケーション)は、Monoランタイムの更新の影響を受けません。これは、MTには独自のコンパイラ、ランタイム、アセンブリが含まれているからです。ただし、MonoDevelop(または他のツール)はMonoアップデートの影響を受ける可能性があります(MD要件および更新前のMonoリリースノートを参照)。 – poupou