Utiliser TClientSocket sans placer l'icone ClientSocket sur une Form - Delphi/Pascal - Programmation
Marsh Posté le 24-04-2005 à 23:41:57
Tout au début (démarrage du soft) tu le crées :
Socket := TClientSocket.Create(nil);
là t'emploies Socket comme tu veux
et tout à la fin quand t'en auras plus besoin (fermeture du soft) tu le vires :
FreeAndNil(Socket);
Entre les deux tu peux définir ses propriétés, et assigner des méthodes à ses événements.
Marsh Posté le 25-04-2005 à 20:58:51
Merci pour ton aide ! Ca marche , mais maintenant y a un autre problème, j'arrive à lancer une connection, mon serveur reconnait la connection, mais impossible d'envoyer un buffer ! Pourtant ça marche avec mon application quand elle possède une Form, et la ça marche pas quand je veux faire la meme chose mais en application console. Est ce que par harsard y a pas d'autre champ de Tclientsocket à initialiser.
Marsh Posté le 25-04-2005 à 21:00:10
Ça dépend, regarde quelles propriétés ou événements tu avais modifiés quand il était sur la Form.
Quand tu dis "ça marche pas", ça plante ou il ne se passe rien ?
Marsh Posté le 25-04-2005 à 22:22:59
Ben ça marche parce que le serveur, detecte la connexion , mais ensuite il reçoit pas la string que j'envois, alors que quand c une form si , c étrange ...
Je sais pas si tu va pouvoir m'aider je voudrais pouvoir transcrire cette fonction qui est sur un form , en une procedure pour une appli console , mais je vois pas tro comment ...
En gros faudré que je puisse écouter avec un serveur en mode console ...
Code :
|
J'espère que tu pourra me sauver !
Marsh Posté le 26-04-2005 à 00:03:12
à)
Marsh Posté le 26-04-2005 à 00:16:29
Tu dois raccorder le OnClientRead du socket à une métode (procédure d'un objet).
Donc il faut voir si t'as déjà un objet quelque part dans ton programme actuel auquel tu pourrais rajouter une méthode ClientRead.
Sinon tu dois créer une classe que tu appelles par exemple TSocketManager et dont tu crées une instance (comme tu le fais pour le socket lui-même).
À cette classe tu ajoutes une méthode ClientRead qui reçoit les bons params, et tu la raccordes au OnClientRead du socket.
Marsh Posté le 24-04-2005 à 19:05:35
Voilà je voudrais pouvoir me servir de TClientSocket sans placer l'icone ClientSocket(ScktComp) sur une form. En gros je veux que ça marche en appli console J'espère que vous pourrez m'aidez !
Merci d'avance.