Soap.InvokeRegistry.RemTypeRegistry
Delphi
function RemTypeRegistry: TRemotableTypeRegistry;
C++
extern DELPHI_PACKAGE TRemotableTypeRegistry* __fastcall RemTypeRegistry(void);
プロパティ
種類 | 可視性 | ソース | ユニット | 親 |
---|---|---|---|---|
function | public | Soap.InvokeRegistry.pas Soap.InvokeRegistry.hpp |
Soap.InvokeRegistry | Soap.InvokeRegistry |
説明
リモート可能な型レジストリへのアクセスを提供します。
RemTypeRegistry 関数を呼び出すと,リモート可能な型レジストリにアクセスできます。返されるオブジェクトの RegisterXSClass メソッドを使用すると,Web サービスを公開または使用するアプリケーションにリモート可能なクラスを登録できます。RegisterXSInfo メソッドを使用すると,リモート可能な型を登録できます。
リモート可能なクラスは,Web サービスアプリケーションのクライアントと,そのサービスを実装するサーバーの間で送信できるクラスです。このクラスを使用すると,パラメータおよび戻り値の非スカラー型を表すことや,Web サービスアプリケーションに対するリクエストを実行しようとしているときに発生する例外を表すことができます。すべてのリモート可能なクラスは,実行時型情報(RTTI)を使ってコンパイルされ,リモート可能なクラスレジストリが認識してクラスインスタンスを取得するために使用する仮想コンストラクタを持っています。
リモート可能な型には,動的配列,列挙型,論理型などがあり,これらはリモート可能なクラス表現に変更しなくても,呼び出し可能なインターフェースで使用できますが,登録する必要があります。それは,これらの型の値に対して特別なマーシャル処理が必要なためです。
クライアントアプリケーションとサーバーアプリケーションはどちらも,リモート可能なクラスとリモート可能な型を使用するためにそれらを登録しなければなりません。同じ名前空間を使用するには,登録することが必要です。この名前空間については,クラスまたは型を登録する際に明示的に指定するか,自動的に生成されたものを使用します。自動的に生成されたインターフェースを使用する場合,クライアントおよびサーバーの両方の同じユニットでそのクラスを定義し,クライアントおよびサーバーは両方ともグローバル AppNameSpacePrefix 変数に同じ値を設定しなければなりません。