AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Thema durchsuchen
Ansicht
Themen-Optionen

nonVCL Socket Unit

Ein Thema von Zacherl · begonnen am 19. Aug 2007 · letzter Beitrag vom 19. Aug 2007
Antwort Antwort
Benutzerbild von Zacherl
Zacherl

Registriert seit: 3. Sep 2004
4.629 Beiträge
 
Delphi 10.2 Tokyo Starter
 
#1

nonVCL Socket Unit

  Alt 19. Aug 2007, 15:22
Hey,

ich habe vor einiger Zeit mal ein Programm geschrieben, in dem ich die TClientSocket Klasse verwende. Nun wollte ich - da es sich eh um eine Konsolenanwendung handelt - das ganze nach nonVCL portieren, also nicht SysUtils, Classes, etc verwenden.
Um nicht alles umschreiben zu müssen wollte ich fragen, ob eventuell jemand eine Unit besitzt die die TClientSocket Klasse ohne die VCL / RTL implementiert.
Habe hier im Forum mal die SocketUnit gefunden, welche allerdings ziemlich unfertig war. Im besonderen geht es mir um eine Timeout Eigenschaft, da die Sockets die ma über die WinSock API erzeugt einen viel zu hohen Timeout Wert besitzen.

Gruß Zacherl
  Mit Zitat antworten Zitat
1234588

Registriert seit: 14. Jan 2007
Ort: Stuttgart
164 Beiträge
 
#2

Re: nonVCL Socket Unit

  Alt 19. Aug 2007, 16:47
auf Luckie's seite ist ein relativ einfaches beispiel zu finden
http://luckie-online.de/Developer/De...WinSockets.zip
  Mit Zitat antworten Zitat
Benutzerbild von Zacherl
Zacherl

Registriert seit: 3. Sep 2004
4.629 Beiträge
 
Delphi 10.2 Tokyo Starter
 
#3

Re: nonVCL Socket Unit

  Alt 19. Aug 2007, 17:26
Ich weiß, wie ich die WinSock APIs benutzen kann Mein Problem ist nur, dass ich gerne das Timeout selbst einstellen kann. Versuche mal mit Luckies Client zu einer nicht vorhandenen IP zu verbinden. Da wartest du Stunden, bis das Programm wieder reagiert

Ideal wäre halt eine fertige Unit, die das TClientSocket mit den bekannten Methoden allerdings ohne die VCL / RTL implementiert.
  Mit Zitat antworten Zitat
Benutzerbild von ErazerZ
ErazerZ

Registriert seit: 27. Mai 2005
Ort: Baden
315 Beiträge
 
Delphi 2007 Enterprise
 
#4

Re: nonVCL Socket Unit

  Alt 19. Aug 2007, 17:57
Timeout zu programmieren? Du rufst einfach nur connect in winsock auf und prüfst obs Fehler gab oder nicht. Falls es Fehler gab dann rufst Sleep auf (und ggf. die Sockets/Handles freigeben) und springst nochmal zum Verbinden. Ich verstehe nicht genau was das Problem sein soll.
  Mit Zitat antworten Zitat
Benutzerbild von Zacherl
Zacherl

Registriert seit: 3. Sep 2004
4.629 Beiträge
 
Delphi 10.2 Tokyo Starter
 
#5

Re: nonVCL Socket Unit

  Alt 19. Aug 2007, 18:08
Das Problem ist, dass Connect mit einer IP auf der kein Server lauscht Ewigkeiten braucht um überhaupt einen Statuscode zurückzugeben. Ich möchte halt nach einer selbst definierten Zeit den Verbindungsaufbau abbrechen.
  Mit Zitat antworten Zitat
Benutzerbild von Luckie
Luckie

Registriert seit: 29. Mai 2002
37.621 Beiträge
 
Delphi 2006 Professional
 
#6

Re: nonVCL Socket Unit

  Alt 19. Aug 2007, 20:25
Dann lagere es in einen Thread aus, was sowieso sinnvoll ist, und wenn nach einer bestimmten Zeit keine Rückmeldung kommt, beendest du den Thread.
Michael
Ein Teil meines Codes würde euch verunsichern.
  Mit Zitat antworten Zitat
Benutzerbild von Zacherl
Zacherl

Registriert seit: 3. Sep 2004
4.629 Beiträge
 
Delphi 10.2 Tokyo Starter
 
#7

Re: nonVCL Socket Unit

  Alt 19. Aug 2007, 21:12
Ich werde mich mal hinsetzen wenn ich Zeit habe und eine neue nonVCL TClientSocket Klasse basteln. Das mit den Threads werde ich mal versuchen .. Danke
  Mit Zitat antworten Zitat
Antwort Antwort


Forumregeln

Es ist dir nicht erlaubt, neue Themen zu verfassen.
Es ist dir nicht erlaubt, auf Beiträge zu antworten.
Es ist dir nicht erlaubt, Anhänge hochzuladen.
Es ist dir nicht erlaubt, deine Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks are an
Pingbacks are an
Refbacks are aus

Gehe zu:

Impressum · AGB · Datenschutz · Nach oben
Alle Zeitangaben in WEZ +1. Es ist jetzt 02:24 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