..NET Framework のサポートと新機能@

更新 : 2007 年 11 月

.NET Compact Framework バージョン 2.0 では、新機能が導入され、.NET Framework クラスのサポートが強化されました。また、Just-in-Time (JIT) コンパイラ、ガベージ コレクション、XML Web サービス、データ アクセスなど、いくつかの機能でパフォーマンスが向上しています。

.NET Framework 機能のサポート

次の表は、.NET Compact Framework Version 2.0 で向上した .NET Framework 機能のサポートの一覧です。

拡張されたサポート

説明

アプリケーション ドメイン

アプリケーション ドメインのアンロードがサポートされます。

匿名メソッド

.NET Compact Framework では、次の例に示すように、デリゲートにイベント処理コードを含めることができる C# の新機能をサポートしています。

// In constructor.

button.Click += new EventHandler(sender,args)

{

// Increment a counter or other action.

};

暗号化サポート

サポートされる機能は次のとおりです。

  • X.509 証明書

  • ハッシュ:

    MD5 および SHA1

  • 共通キー暗号化:

    RC2、RC4、3DES、DES

  • 非対称キー暗号化:

    RSA、DSA

DataSet の向上

GetChanges メソッドがサポートされ、System.Data 名前空間のクラスが増えました。

イベント

イベントの発生に関して、内部的な処理が向上しました。

例外

次のイベントのサポートによる例外処理の向上

ジェネリック

ジェネリックのサポートについては、「.NET Compact Framework のジェネリック」を参照してください。

グローバリゼーション

サポートされるエンコーディングが追加されました。

アセンブリ

フレンド アセンブリ (C# プログラミング ガイド) がサポートされます。

ネットワーキング

NTLM 認証と、次世代のインターネット プロトコルである IPv6 がサポートされます。

CredentialCache がサポートされました。

XML シリアル化のパフォーマンスが向上しました。

SOAP 1.2 がサポートされます。

次の認証プロトコルがサポートされます。

  • Negotiate

  • NTLM

  • Kerberos

メッセージ キュー (MSMQ)

MSMQ コンポーネントと System.Messaging クラスの使用に関する主要な機能を利用できます。詳細については、「.NET Compact Framework のメッセージ キュー」を参照してください。

カスタマイズ例については、「MSMQ 書籍注文アプリケーション サンプル」を参照してください。

部分クラス

.NET Compact Framework では、部分クラスがサポートされ、新しいプロジェクトの作成時に Microsoft Visual Studio 2005 で使用されます。

レジストリ キー

RegistryKey クラスを使用して、レジストリ キーを設定できます。

開かれている RegistryKey オブジェクトおよびその開かれている子 RegistryKey は、キーを削除する前に明示的に閉じる必要があります。

レジストリ キーの階層数の上限は 15 です。これは、Windows CE の制限です。

シリアル ポート

シリアル ポートへのアクセスは、.NET Framework の場合と同様に行うことができます。カスタマイズ例については、「シリアル通信のアプリケーション サンプル」を参照してください。シリアル ポートは、Visual Studio 2005 エミュレータでもサポートされます。

SQL Server

SQL Server Compact 3.5 Books Online をダウンロードするには、Microsoft Download Center の Web サイトにアクセスします。

文字列

startIndex パラメータが length パラメータよりも大きい場合、Substring メソッドは例外をスローします。

String.Empty.Substring(0, 1) は ArgumentException をスローします。

スレッド処理

BeginInvoke メソッドおよび EndInvoke メソッドをサポートします。また、Invoke メソッドでのパラメータの使用もサポートします。

メモ :

BeginInvoke および EndInvoke は、非同期デリゲートではサポートされません。

Visual Basic My プロジェクト

.NET Compact Framework では、次の My オブジェクトをサポートします。

XML サポート

XML では次の項目がサポートされます。

新機能

次の表は、.NET Compact Framework 2.0 でのデバイス固有の新機能の一覧です。

機能

説明

スタンドアロン開発

.NET Compact Framework バージョン 1.0 では、コマンド ライン コンパイルがサポートされていましたが、.NET Compact Framework 2.0 では、強力なスタンドアロン コンパイルとデバッグがサポートされています。詳細については、「方法 : コマンド プロンプトでコンパイルする」を参照してください。

以前のバージョンの .NET Compact Framework のアプリケーションを、バージョン 2.0 上で実行可能

方法 : ランタイム バージョンを設定する を参照してください。

Microsoft.WindowsCE.Forms の新しいコントロール

Windows フォームおよびグラフィックス を参照してください。

相互運用性の向上

.NET Compact Framework バージョン 2.0 では、次の点で相互運用性が向上しています。

  • ネイティブ コードの相互運用性

    • プラットフォーム呼び出し型マーシャリングの拡張

    • 関数ポインタとしてのデリゲートのマーシャリング

    • 型の追加 - 配列、文字列、構造体

    • 埋め込み配列 – char[]、array[] による構造体

    • MarshalAs – 型ヒンティング

  • マネージ コードでの COM オブジェクトの使用

    • RCW (ランタイム呼び出し可能ラッパー) のサポートにより、マネージ アプリケーションから COM オブジェクトへの呼び出しができるようになりました。ただし、COM を介してマネージ オブジェクトをアクティブにすることはできません。

    • CCW (COM 呼び出し可能ラッパー) のサポートにより、ネイティブ コードからマネージ コードにコールバックできるようになりました。

    • Support for 遅延バインディング呼び出しおよび事前バインディング呼び出しをサポートしました (IDispatch および vtable)。

    • Visual Studio 2005 に統合されました。

.NET Compact Framework では、System.Runtime.InteropServices 名前空間のサブセットだけをサポートしていますが、MarshalAsAttribute 属性がサポートされているため、高度なマーシャリング機能を利用できます。また、.NET Compact Framework 2.0 では、Marshal クラスでいくつかの新しいメンバがサポートされています。すべての OLE オートメーション型など、幅広い型を COM から .NET Compact Framework にマーシャリングできます。カスタム マーシャリング、COM シングルスレッド分割 (STA) スレッド モデル、および自動生成クラス インターフェイスはサポートされていません。

関数呼び出しのマーシャリングをログ ファイルに記録するように、レジストリ キーを設定できます。詳細については、「方法 : ログ ファイルを作成する」を参照してください。

また、.NET Compact Framework でタイプ ライブラリ インポータ (Tlbimp.exe) を使用できます。Visual Studio では、デバイス プロジェクトに、COM タイプ ライブラリへの参照を追加できます。

パックされた構造に関しては、.NET Compact Framework バージョン 2.0 は、Pack をサポートしませんが、Explicit フィールドと FieldOffsetAttribute 属性はサポートします。現在は制約があり、ネイティブな構造レイアウトに違反する構造体はマーシャリングできないことに注意してください。つまり、Int32 値は常に 4 バイト境界にあり、Int64 値とDouble 値は 8 バイト境界にある必要があり、これ以外も同様です。要素の配置が自然ではないパックされた構造が必要な場合は、手動でマーシャリングする必要があります。

相互運用性および関連する方法トピックの詳細については、「.NET Compact Framework の相互運用性」を参照してください。

リソース ファイルの変更

.NET Compact Framework Version 2.0 では、.resx ファイルの形式は .NET Framework と同じです。両方の Framework で、同じ リソース ファイル ジェネレータ (Resgen.exe) を使用できます。CFResgen.exe ユーティリティは、不要になりました。

参照

概念

Windows フォームおよびグラフィックス

その他の技術情報

.NET Compact Framework Version 2.0 の新機能