Autor Beitrag
michaaaaa
Hält's aus hier
Beiträge: 9



BeitragVerfasst: Di 13.10.09 14:25 
Hallo,
ich hab mir n kleinen chat zusammen geschrieben...


so, nun hatte ich die idee, eine art passwort abfrage zu schreiben, dass man quasi beim Starten des Servers in ein Edit Feld ein PW eingibt.
Der CLient der sich zum Server verbinden will muss dann dieses PW ebenfalls in ein Edit-Feld eingeben...

wie kann ich das realisieren?

ideen hab ich ja schon: PW müsste vom typ string sein...
aber wie bekomme ich das hin, dass das PW beim Anmelden überprüft wird?

MFG,
micha
Einloggen, um Attachments anzusehen!
Hugo343
ontopic starontopic starontopic starontopic starontopic starontopic starhalf ontopic starofftopic star
Beiträge: 114
Erhaltene Danke: 2

Windows 7
Turbo Delphi, Dev C++
BeitragVerfasst: Di 13.10.09 17:52 
Mach ein neues Formular auf das das Server-Haupt-Programm beim Start anzeigt.
Und dann musst du dann in einer Variable das Passwort ablegen.
Beim Clienten das Gleiche, bis auf das wenn er dann bei seiner Passwort-Meldung auf den Ok-Button klickt, das eingegebene Passwort an den Server (er muss einmal zum Server verbinden) schickt und wenn das PW falsch ist wieder disconnectet. Ich hab mich früher mal mit nem Chat versucht, habs aber nicht fertiggebracht. Is nurn Konzept.
Narses
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starhalf ontopic star
Administrator
Beiträge: 10185
Erhaltene Danke: 1261

W11x64
TP3 .. D7pro .. D10.2CE
BeitragVerfasst: Di 13.10.09 18:26 
Moin und :welcome: im Forum!

user profile iconmichaaaaa hat folgendes geschrieben Zum zitierten Posting springen:
ich hab mir n kleinen chat zusammen geschrieben...
Dein Code ist potentiell defekt:
ausblenden Delphi-Quelltext
1:
2:
3:
4:
5:
6:
7:
8:
9:
10:
11:
12:
13:
14:
procedure TFrmServer.ServerSocketClientRead (Sender: TObject; Socket: TCustomWinSocket);
var Nachricht: TChatNachricht;
    I: Integer;
begin
  {Nachricht empfangen}
  Socket.ReceiveBuf (Nachricht, SizeOf(Nachricht));
  {Protokoll am Server}
  MemNachricht.Lines.Add ('Von ' + Nachricht.Nickname + ': ' + Nachricht.Text);
  {Weiter an alle Teilnehmer}
  with ServerSocket.Socket do begin
    for i := 0 to ActiveConnections-1 do
      Connections[I].SendBuf (Nachricht, SizeOf(Nachricht))
  end{with}
end;
Du wertest nicht aus, wieviele Bytes tatsächlich gelesen wurden (oder ob überhaupt). Das kann zu inkonsistenten records führen. :idea: Darauf kannst du kein Protokoll aufsetzen (was für deinen Wunsch nach einer Passwortabfrage aber nötig ist). :nixweiss:

Hier ist ein Tutorial, mit dem deine Erweiterung problemlos möglich ist. ;)

cu
Narses

_________________
There are 10 types of people - those who understand binary and those who don´t.