Einzelnen Beitrag anzeigen

michaelg

Registriert seit: 20. Apr 2008
87 Beiträge
 
#1

Datasnap - Clientapp identifizieren

  Alt 30. Nov 2022, 22:04
Hallo zusammen!

Es geht um einen Datasnap-Server und zwei verschiedene ClientApps. Ich möchte gerne herausbekommen, welche der Clientapps sich gerade mit dem Datasnap-Server verbindet. Ich hab mich voll gefreut, als ich sah, dass es das tDSConnecteventObject gibt und hab dieses Event mit Leben befüllt. (Zur Info: Prot ist eine Procedure, die einen String in ein Logbuch schreibt)

Delphi-Quellcode:
procedure TServerContainer1.DSServer1Connect(DSConnectEventObject: TDSConnectEventObject);
  begin
    Prot('Appname: '+DSConnectEventObject.ChannelInfo.ClientInfo.AppName);
  end;
Leider ist ClientInfo.Appname immer ein leerer String, egal von welchem Client und von welcher Plattform die Connection erstellt wird.

Ich habe etwas recherchiert und bin auf diesen Link gestossen: https://stackoverflow.com/questions/...me-in-datasnap. Dort steht, dass Appname nicht gefüllt wird, man das aber umgehen könnte, wenn man der SQLConnection einen weiteren Parameter mitgibt.

Leider habe ich keine SQLConnection in meinen Clients, nur eine TDSRestConnection. Außerdem ist der Post in dem Link sechs Jahre alt.

Hat jemand eine Idee, wie ich den Appnamen herausbekomme am Server, bzw. am Client mitsenden kann, ohne jeder Servermethode einen zusätzlichen Parameter mitzugeben?

Viele Grüße
Michael
  Mit Zitat antworten Zitat