Frage

PROBLEM:

Ich bin mit einem ZLibCompression Filter in DataSnap-XE-Server.

Der Kunde gibt immer die Folgefehler die Meldung:

"Borland.Data.TDBXError. Communication Filter ZLibCompression ist nicht registriert Filterklasse braucht, um registriert werden, um mit dem Server zu kommunizieren"

FRAGE: 1

Wie melde ich mich ZLibCompression Filter?

Bearbeiten

FRAGE: 2

Wie erhalte ich die DataSnap-Verbindung im Daten-Explorer zu Link zu diesem Server?

War es hilfreich?

Lösung

Fügen Sie einfach die DbxCompressionFilter Einheit zur uses-Klausel des Clients (wie auch in meinem Delphi XE DataSnap diskutiert Courseware Handbuch, und ich glaube, es ist auch in dem alten DataSnap Weißbuch, dass ich im letzten Jahr schrieb).

Die DbxCompressionFilter Einheit enthält bereits den folgenden Code:

initialization
  TTransportFilterFactory.RegisterFilter(TTransportCompressionFilter);

finalization
  TTransportFilterFactory.UnregisterFilter(TTransportCompressionFilter);

end.

Andere Tipps

Rufen Sie die TTransportFilterFactory.RegisterFilter Methode, um einen Filter zu registrieren.

Dokumentation ( Filtering DataSnap ) sagt:

Ein Filter muss mit dem TTransportFilterFactory Singletons registriert werden. Die empfohlene Art und Weise wird einen Filter durch die Einheit Initialisierung und Finalisierung Abschnitte zu registrieren, aber es kann in der Anwendung des Benutzers durch eine Initialisierungsphase codiert werden. Unten ist der Code-Schnipsel des Kompressionsfilter zur Verfügung aus dem Kasten heraus Registrierung:
initialization
  TTransportFilterFactory.RegisterFilter(TTransportCompressionFilter);

finalization
  TTransportFilterFactory.UnregisterFilter(TTransportCompressionFilter);

Ändern TTansportcompressionFilter für den Namen der Klasse, die Sie Filter verwenden.

Lizenziert unter: CC-BY-SA mit Zuschreibung
Nicht verbunden mit StackOverflow
scroll top