Delphi-PRAXiS

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Netzwerke (https://www.delphipraxis.net/14-netzwerke/)
-   -   Delphi Indy Netzwerk kartenleser (https://www.delphipraxis.net/11931-indy-netzwerk-kartenleser.html)

MadMax 17. Nov 2003 10:34


Indy Netzwerk kartenleser
 
Hallo Forum,
Habe eine Netzwerkfähigen Kartenleser geschrieben(wird zum anmelden an eine Programm benötigt). Es werden 3 Befehle über das Netzwerk gelöst (Login, Logout, synchronisieren).

synchronisieren : Verschickt 3 Dateien(Benutzer und Berechtigungen) über das Netzwerk.
Login und Logout : Netzwerkfähiges Account Modul

Problem:
Das synchronisieren und Login/Logout, funktionieren unabhängig voneinander wunderbar, nur wenn sie zusammen genutzt werden treten Fehler auf.

Die Synchronisation soll nur möglich sein wenn sich ein Superuser einlogt.
Logt sich eine Benutzer ein werden diese Information an die anderen Rechner im Netzwerk weitgeleitet.

Also:
Logt sich der Superuser ein und will darauf die Daten synchronisieren funktioniert das nicht.

Muss ich vielleicht 2 Server Threads erzeugen?

Delphi-Quellcode:
procedure TfrmMain.tcpServerExecute(AThread: TIdPeerThread);
Var sClientMsg, Name, Phat : String;
    FileReceiver          : TFileReceiver;
begin
  try
    sClientMsg  := AThread.Connection.ReadLn(#$A,3500);
    FileReceiver := TFileReceiver.Create(AThread, sClientMsg);
    Name  := AThread.Connection.ReadLn;
    Phat  := AThread.Connection.ReadLn;

     if sClientMsg = 'login' then begin
       lbClients.Items.Add(sClientMsg+Name+'   '+Phat) ;
        DoLogin(Name, Phat);
    end;
    if sClientMsg = 'logout' then begin
       lbClients.Items.Add(sClientMsg +Name+'   '+Phat) ;
       DoLogout(Name, Phat);
    end;

    try
      if FileReceiver.ServerMsgOK then
         FileReceiver.Start;
      finally
        FileReceiver.Free;
      end;
      except
        AThread.Connection.Disconnect;
      end;
end;

DataCool 18. Nov 2003 20:53

Re: Indy Netzwerk kartenleser
 
Wo ist den da das If für den Superuser ?


Alle Zeitangaben in WEZ +1. Es ist jetzt 20:04 Uhr.

Powered by vBulletin® Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz