begin process at 2012 02 11 07:32:07
  Trouver un code source :
 
dans
 

68 commentaire(s) de Benj1105 sur des sources sur tout CodeS-SourceS

Déposé sur Stocker plusieurs strings en une seule puis les retrouver (pr...

Bien vu ! Je n'avais pas vu que str était un mot clef aussi ! (heu ceci dit VB fait très bien la différence mais la guideline du Framework veut de toutes façons que l'on évite cela...)
Posté le : 02/03/2004 16:39:19

Déposé sur Modifier des trucs de windows comme "démarrer" et "arrêter" e...

Vaut mieux éviter de faire mumuse avec le explorer.exe oO
Posté le : 04/01/2004 21:24:25

Déposé sur Regexp workshop

Ben si je comprends bien ca te permet, entre autre, d'utiliser les regex en vb... ^^
Posté le : 24/10/2003 11:16:08

Déposé sur Éviter que les paquets se mélange lors de l'envoie avec winsock

En fait pas besoin d'utiliser un port different à chaque connexion ! Un port ne peut être qu'une fois en listening mais pas en communication !
Posté le : 24/09/2003 17:38:41

Déposé sur Multiplayer :: exemple + server xmlsocket

Heu... tu devrais revoir les architectures client/serveur sur le net fabfo... y a des cours supers ^^
Posté le : 19/08/2003 13:15:37

Déposé sur Éviter que les paquets se mélange lors de l'envoie avec winsock

C'est forcement quoi ? ^^
Je vois pas en quoi c'est mal... au contraire !

Déjà le fait de changer de socket permet de changer le port d'écoute... ce qui permet entre autre d'avior une meilleure sécurisation... Puis bon, ouvrir un socket ne présente pas de grande difficulté en .NET ^^ (oui l' API de .NET est plutôt pas mal niveau socket, mais elle bugge concernant le contrôle winsock par contre ! :-/)

Vilà vilà...
Mais sinon y a encore mieux si tu veux pas ouvrir de deuxième socket... tu rajoute un seul octet pour indiquer l'opération en cours, par exemple, admettons que tu fais un truc de chat où tu peux aussi envoyer des fichiers, tu fais que tu on premier caractère correspond  à l'action en cours, c'est à dire, par exemple si je parle le premier caractère serait ! ce qui pourrait donner:

!Ce que je dis

Et par exemple pour un chuchot, (il faut donc un parametre supplémentaire) le 1er serait ? et pour trouver la longueur tu pseudo du destinataire tu code en hexadécimal... (beaucoup mieux ! :))


De toutes façons y a plusieurs méthodes correctes

@++
Posté le : 17/08/2003 14:30:16

Déposé sur Éviter que les paquets se mélange lors de l'envoie avec winsock

Si je transfert un fichier j'ouvre un second socket moi.... (avec une méthode un peu spéciale....)
Posté le : 15/08/2003 16:32:06

Déposé sur Éviter que les paquets se mélange lors de l'envoie avec winsock

Beuh... Je vois aps ce que vous y reprochez à mon système.... Il a l'avantage de faire des paquets simples à interpreterDe plus j'empêche  les gens d'envoyer mon caractère de séparation tout simplement.... Puis aussi bien je me fous d'envoyer 4/5 octets supplémentaires vu que 1) Même pour un 56K c'est pas énorme et 2) Mon logiciel est plutôt pour des connexions ADSL donc...
Posté le : 15/08/2003 13:17:03

Déposé sur Éviter que les paquets se mélange lors de l'envoie avec winsock

Au début de mon "commentaire" précédent vous pouvez remplacer "serveur" par "côté reception" ;-) Je pense que ca avait besoin d'être clarifier car en fin de compte client et serveur sont des notions relativement abstraites puisque les deux côtés envoient et recoivent des données...
Posté le : 06/08/2003 13:31:10

Déposé sur Éviter que les paquets se mélange lors de l'envoie avec winsock

Oui comme d'hab' lol :p
De plus je tiens à dire que c'est côté serveur que vous devez "refaire les messages", en effet si votre message est plus long que la fenêtre autorisée (paramètrable dans le registre sous windows (et accessoirement un autre parametre peut encore la diminuer dans le winsock)) il sera découpé... donc ton système ne permet pas de récuperer un message directement "correcte"
Voilà comment je fais: Dans mes messages je sépare chaque "paramètre" par un caractère (genre ¶) ce qui peut me donner par exemple:
say¶Benj¶Ce que je dis¶
(il faut mettre un ¶ à la fin pour le split ;)) puis à la toute fin du message je rajoute un autre caractère un spécial genre ¢ ce qui me donne au final pour mon message:
say¶Benj¶Ce que je dis¶¢

Bien, donc ca c'est pour l'envois, maintenant à la reception imaginons (même si c'est très peu probable à moins d'avoir une fenêtre ridiculement petite) que le message soit découpé ainsi:
say
¶Be
nj¶
Ce_
que
je_
dis
¶¢

Vous remarquerez qu'à chaque fois il envoit 3 caractères (c'est pour l'exemple hein :) comme vous l'aurez compris ce n'est pas une constante) J'ai matérialisé les espaces par des _  Et remarquez aussi que le dernier packet n'est composé que de deux caractères.
Alors la technique c'est qu'à chaque fois que je receptionne un packet je l'ajoute à une string.Ensuite on fait un split sur cette chaine avec le caractère de fin de message (¢ dans notre exemple) si le ubound est egal à 0 c'est qu'on a pas encore de message complet s'il est egal à 1 (ou plus) c'est bon, on a notre message. Ne reste plus qu'à l'analyser, pour ça je vous fait confiance quand même,mais surtout à le retirer de la chaine ce qui ne devrait pas vous poser de problème non plus, et puis réiterer le test à partir du split pour vérifier qu'on a pas un deuxième message (ce qui évite en plus de s'embarrasser avec la méthode que tu as donnée).

Voilà voilà j'espère que vous avez tout compris, sinon si vous voulez une p'tite source en VB6 ou .NET pas de problème :)
Posté le : 06/08/2003 13:18:57

1 2 3 4 5 6 7


Nos sponsors


Sondage...

Comparez les prix

CalendriCode

Février 2012
LMMJVSD
  12345
6789101112
13141516171819
20212223242526
272829    

Consulter la suite du CalendriCode

Photothèque

 
Développement réalisé par Nicolas SOREL (Nix) avec l'aide de : Cyril DURAND et Emmanuel (EBArtSoft), Merci à Vincent pour ses précieux conseils.
CodeS-SourceS.com© Toute reproduction même partielle est interdite sauf accord écrit du Webmaster
CodeS-SourceS.com© est une marque déposée tous droits réservés

Google Coop CodeS-SourceS Google Coop CodeS-SourceS
Temps d'éxécution de la page : 1,014 sec (3)

Nous contacter | Annoncer sur CodeS-SourceS | Mentions légales