FireDAC.Comp.Client.TFDCustomConnection.SharedCliHandle

Aus RAD Studio API Documentation
Wechseln zu: Navigation, Suche

Delphi

property SharedCliHandle: Pointer read FSharedCliHandle write SetSharedCliHandle;

C++

__property void * SharedCliHandle = {read=FSharedCliHandle, write=SetSharedCliHandle};

Eigenschaften

Typ Sichtbarkeit Quelle Unit Übergeordnet
property public
FireDAC.Comp.Client.pas
FireDAC.Comp.Client.hpp
FireDAC.Comp.Client TFDCustomConnection


Beschreibung

Das mit anderen Verbindungen geteilte CLI-Handle.

Mit SharedCliHandle legen Sie ein gemeinsam genutztes DBMS-CLI-Verbindungs-Handle (Call Level Interface) fest, das von der Eigenschaft CliHandle einer anderen Verbindung zurückgegeben wird. Damit kann die Verbindung einfach von einer Anwendung in eine DLL übertragen werden (siehe DLL-Entwicklung).

Hinweis: Eine Verbindung kann nicht mit anderen Prozessen gemeinsam genutzt werden, weil die gemeinsame Nutzung nur innerhalb desselben Adressraums funktioniert.

Nach dem Setzen von Connected auf True für diese Verbindung verwendet die Verbindung dieselbe physische DBMS-Verbindung oder Sitzung und denselben Transaktionsstatus wie die andere Verbindung. 

Wenn Connected auf False gesetzt wird, gibt diese DLL-Verbindung die Verbindungsressourcen nicht an den DBMS-Client frei. Die Anwendungsverbindung ist für die Freigabe der Ressourcen zuständig. Deshalb muss die Anwendungsverbindung nach dem Schließen aller geteilten Verbindungen geschlossen werden.

Beispiel

//Application code (without checks):
  FhDll := LoadLibrary(PChar('Project2.dll'));
  @FpShowData := GetProcAddress(FhDll, PChar('ShowData'));
  FpShowData(FDConnection1.CliHandle);

//DLL code:
procedure ShowData(ACliHandle: LongWord);
begin
  FDConnection1.SharedCliHandle := ACliHandle;
  FDConnection1.Connected := True;
  FDQuery1.Active := True;
end;

Siehe auch