デルフィ:ZLibCompression フィルターを datasnap-xe サーバーに登録する方法
質問
問題:
DataSnap-XE サーバーで ZLibCompression フィルターを使用しています。
クライアントは常に次のエラー メッセージを返します。
「Borland.Data.TDBXError:通信フィルター ZLibCompression が登録されていません。サーバーと通信するにはフィルター クラスを登録する必要があります。」
質問:1
ZLibCompression フィルターを登録するにはどうすればよいですか?
編集
質問:2
DataExplorer で Datasnap-Connection を取得してこのサーバーにリンクするにはどうすればよいですか?
解決
ただ、(また私のDelphi XEのDataSnapに手動コースウェア説明したように、私はそれが私が去年書いた古いDataSnapの白書でも、だと信じ)クライアントのuses節にDbxCompressionFilter
ユニットを追加します。
DbxCompressionFilter部は既に次のコードを含みます
initialization
TTransportFilterFactory.RegisterFilter(TTransportCompressionFilter);
finalization
TTransportFilterFactory.UnregisterFilter(TTransportCompressionFilter);
end.
他のヒント
フィルタを登録するためにTTransportFilterFactory.RegisterFilterメソッドを呼び出します。
ドキュメント(フィルタリングDataSnapのの)氏は述べています:
フィルタはTTransportFilterFactoryシングルトンに登録する必要があります。フィルタを登録する推奨される方法は、ユニットの初期化と終了処理部を介して行われ、それは、ユーザのアプリケーションにおける初期化段階を介して符号化することができます。 下のボックスの圧縮フィルタ可能なアウトを登録するコードスニペットは、次のとおりです。
initialization
TTransportFilterFactory.RegisterFilter(TTransportCompressionFilter);
finalization
TTransportFilterFactory.UnregisterFilter(TTransportCompressionFilter);
変更TTansportcompressionFilterは、クラスの名前のためにあなたは、フィルタに使用しています。
所属していません StackOverflow