Vous ne trouvez pas de réponse à votre problème ? Alors posez la question dans le forum. Souvenez-vous qu'il n'y a jamais de question bête, mais rester dans l'ignorance parce que l'on n'ose pas poser une question, ça c'est une erreur !

CLASS CSOCKET AMÉLIORÉE | PROXY HTTP & SOCK4 & SOCK5 | TRANSPARENCE FORM SUR COULEUR ...


Information sur la source

Catégorie :Réseau & Internet Niveau : Expert Date de création : 07/04/2004 Date de mise à jour : 28/04/2004 23:20:20 Vu / téléchargé: 10 424 / 1 690

Note :
9,8 / 10 - par 5 personnes
9,80 / 10

  • 1

  • 2

  • 3

  • 4

  • 5

  • 6

  • 7

  • 8

  • 9

  • 10

Commentaire sur cette source (23)
Ajouter un commentaire et/ou une note

Description

Cliquez pour voir la capture en taille normale
Mise à jour du 28/04/2004!

Bug lors de l'utilisation de la méthode post en automatique (Merci bubble44).
Lors de l'utilisation de cette méthode le header et les données étaient séparées par trois Crlf :( un de trop !
Donc suppresion de crlf en trop, puis ajout d'une routine de sécurisation dans le cas d'un ajout intepestif de crlf via la méthode headeradd ...


Mise a jour du 21/04/2004!

Deux Bugs :(

Un exit sub dans une fonction (celle là elle était forte !)

Le deuxième sur le traitement en auto des pages reçues, lorsque la page à recevoir était courtes l'erreur fesait que les données étaient perdues....


Bon ça fait bien longtemps que je n'ai pas contribué.... Donc je vais réparer cette injustice Lol :).
                                 ----------------------------------------

Voila La base une classe CSocket que certains connaissent sûrement, issu du site VIP... bien intéressante parce qu'elle utilise des API "Non Bloquantes" et un système de callBack assez finement léché...
Mes Ajouts:

- J'ai traduit à ma façon tous les commentaires de l'original ...

- J'ai surtout complémenté cette classe pour pouvoir la rendre "autonome", cet à dire par exemple lui passer l'adresse d'une page et recevoir un événement avec le contenue de la page... (un peut comme inet)...

- J'ai aussi ajouté le support en interne des connexions via proxy Http Sock4 & 5, dans le cas d'un proxy sock et de l'utilisation de la fonction connect vous recevrez un événement Onconnect une fois les "négociations" proxy effectuées.
NOTA : Le débug de ces connexion à été succinct... donc s'il y a des bugs faites moi signe pour en faire profiter à tous !

- Pour faire mu muse :) et pour montrer le fonctionnement de la classe, j'ai ajouter un module de démo de download du genre Skinable... donc pour pigmenté le tout, il y a un controle qui permet de rendre une feuille transparente a chaque endroit ou une couleur définie existe...

Pour le reste je vous laisse regarder !
N'hésitez pas à faire des commentaires... et surtout à lire ce que j'ai mis dans la source parce qu' il y a plus de commentaires que de code

 

Fichier Zip

Pour les "Membres Club", vous pouvez télécharger directement un fichier contenu dans le zip sans télécharger le zip en entier !

Télécharger le zip

Commentaires et avis

signaler à un administrateur
Commentaire de liquide le 07/04/2004 21:32:35

Bah merde !!! ouppsss pardon

Et tu mets ca en niveau débutant, ca m'a l'air pas mal complexe et drolement "chiadé". c'est que tu dois etre fortiche.

Ca a l'air vraiment interessant, je le mets dans mes favoris en attente d'y préter attention et surtout de m'améliorer sur les class ainsi que sur l'accès à internet.

Bonne prog

signaler à un administrateur
Commentaire de OphidiaN le 08/04/2004 02:11:11

g tjrs aimé t source fredlynx :p

signaler à un administrateur
Commentaire de azerty25 le 08/04/2004 06:43:41

C'est très bien ;)

signaler à un administrateur
Commentaire de bubble44 le 08/04/2004 18:07:21

Bon fredlynx, je vais regarder ca de pres, car je programme un client caramail, et les gens sont desfois bloquer en entreprise derriere des protection (proxy) etc ...

Si j'ai des ptits problemes tu acceptes que je t'embauche comme conseiller/programmeur sockets ? lol c'est une belle aventure cara si tu fais partie de la team Tr0piiic, regarde mon client ici :

http://board.quick-web.com/?login=tr0piiic

A pluche.

signaler à un administrateur
Commentaire de liquide le 08/04/2004 22:38:36

bubble c'est a ton soft tropicc ?

signaler à un administrateur
Commentaire de bubble44 le 08/04/2004 23:07:32

Vous pouvez repeter la question ?

:-)

si c'est mon soft ? oui. Mais je trouve limité les sockets Micro$oft, en plus je voudrais faire comme msn, avoir socket http, socket 4, et 5 comme options de bypass en milieu bloquant des entreprises, ecoles (proxy).
Je vais faire tester ton programme par quelqu'un demain, qui est derriere un proxy, j'aimerais que mon client cara fonctionne aussi apres (si ca marche bien ta classe).

signaler à un administrateur
Commentaire de liquide le 08/04/2004 23:28:15

je mets le message a ton egard bubble, et le dernier pour ne pas polluer plus. Tu as l'air tres fort en programmation et pourtant, qu'une source sur ce site. je dois reconnaitre que ton soft est super, mes felicitations. j'ai juste une remarque concernant les sources, je respecte que l'on protege son travail, mais ne trouves tu pas un peu bizarre que l'on puisse venir prendre des infos pour s'en servir et les garder pour soi ensuite en en donnant tres peu en retour? et aussi dans la mesure de ses capacités. Si tu fournis autre part ou sous un autre pseudo ou alors , je me plante totalement d'idée ou alors tu as tes raisons que je ne connais pas et je parle vite, je te ferais mes plates excuses pour ce commentaire qui parait desobligeant mais est surtout afin d'expliquer un point de vue, par ailleur je respecte que l'on est un autre point de vue que le miens.

ps: pour les proxy, dans certaines écoles tu devrais y arriver mais progressivement tout pc dans les écoles et lycées etc seront protegés differements. dans certains a l'heure actuelle tu ne peux même plus aller sur caramail meme si tu as toutes les données du proxy. Dès qu'il y à detection de l'adresse, l'acces est purement bloqué et ce n'est pas la passerelle qui bloque mais l'adresse en elle même d'apres ce qeu j'ai pu comprendre.

bonne prog

signaler à un administrateur
Commentaire de bubble44 le 08/04/2004 23:34:55

Je suis pas du tout fort en programmation, ma source n'est pas tres educative (du moins je crois).
De plus je ne peux pas montrer ma source de client, car je dois assurer aux utilisateurs qui utilisent mon client, qu'ils ne risquent pas de tomber sur une version modifiée par quelqu'un de malvaillant, genre : telecharger tr0piiic version gold, et qu'il y ai pas du code malsain dedans.
Ma seule source a ete en ASP, un truc programmé a France Telecom, je ne sais pas pourquoi, les admins ici, s'amusaient a mettre ca au niveau amateur, sans parler des notes bizarres, donc j'ai un peu arreté d'etre pedagogique ici.
Je me sers pas des gens, je voulais tester ta motivation.

signaler à un administrateur
Commentaire de liquide le 08/04/2004 23:53:00

Très bien tu m'as convaincu, je respecte et de ce fait il est de mon devoir de te presenter mes plates excuses.
de ce fait, je ne posterais pas ma version pour toutes les raisons que tu m'as siter. c'est dommage pour les developpeurs, meme si il n'est pas finis je le trouvais jolie et fonctionnel mais je ne le posterais pas.

bonne prog

signaler à un administrateur
Commentaire de Urgo le 14/04/2004 17:43:23

lol, les lycées ne savent pas portéger leurs pc, suffit de se connaitre un mininum en informatique et tu peux (presque) tout faire ;)

signaler à un administrateur
Commentaire de liquide le 14/04/2004 23:52:42

Urgo, tu dois etre très fort sous linux et la gestion des serveurs slis. Perso mon niveau de connaissance ne me permet pas de rentrer dedans et je n'essairais meme pas et par la meme occas je n'essaierais pas non plus de me rediriger vers des accès "rectoral" :-) qui eux meme redirigent. c'est ce qui se met en place progressivement.

bonne prog

signaler à un administrateur
Commentaire de DavidT le 15/04/2004 01:07:03

Je n'ai qu'une phrase à dire :

"Un profond respect...."

sans commentaires

signaler à un administrateur
Commentaire de kyrosgear le 23/04/2004 04:44:49

moi qui ne savais plus ou trouver une implémentation efficace de winsock dans une classe... j'ai trouvé mon sauveur! merci pour cette source ;o)

signaler à un administrateur
Commentaire de bubble44 le 28/04/2004 11:22:14

j'ai trouvé un bug, quand on fait des appels genre avec :

HttpConnect

(une procedure dans Csocket.cls), si on fait un Methode_POST

car a chaque "HeaderAdd", il met un "vbCrLf" final dans la concatenation, et pour les datapost, il met un "vbCrLf & vbCrLf" (2 donc) donc concretement, on a 3 vbCrLf avant les datapost (temp), et ben c'est 2 normalement ! pas 3, d'ailleur avec une requete post sur caramail, pas moyen qu'il lise ca correctement :

exemple :

carabot.connexion.connexion_server_boot = "login.caramail.lycos.fr"

MySocket_gene.WaitCloseSocket
MySocket_gene.ResetHeader
MySocket_gene.ResolveHeader = True
MySocket_gene.GetPage = True

temp = "MEMBERNAME=" & carabot.connexion.connexion_user_name & "&PASSWORD=" & carabot.connexion.connexion_user_passe

form1.MySocket_gene.HeaderAdd "Referer", "http://auth.caramail.lycos.fr/"
form1.MySocket_gene.HeaderAdd "Cookie", "JSESSIONID=X" ' ca marche sans calcul cool

form1.MySocket_gene.HttpConnect carabot.connexion.connexion_server_boot, 80, _
                    IIf(form1.chkUseProxy = 0, 0, form1.CmbTypeProxy.ListIndex + 1), _
                    form1.txtProxyServer.Text, _
                    form1.txtProxyPort.Text, _
                    IIf(form1.chkUseProxy = 0, 0, form1.ChkProxyIdent.Value), _
                    form1.txtProxyUser.Text, _
                    form1.txtProxyPass, _
                    Methode_POST, _
                    Version1_1, _
                    "/lsu/Bin/Authentication/actionLoginPage.jsp", temp

voila, tu peux me donner un verdict ? car avec le sniffer y a bien 3 vbCrLf, et si j'en met 3 en mswinsock (pour tester si 3 le derange pas), j'ai la meme erreur caramail, c'est donc 2 vbCrLf avant les datapost sinon ca bugge la methode POST.

signaler à un administrateur
Commentaire de cdemez le 26/05/2004 16:18:35

A quand une version c# ???

Car les Sockets .NET ne gere absolument pas les firewall !!!

Shit shit

signaler à un administrateur
Commentaire de azerty25 le 26/05/2004 20:12:27

Comment ça, tu veux dire qu'ils passent à travers ?!

signaler à un administrateur
Commentaire de cdemez le 26/05/2004 20:26:15

Non !

Au contraire, en C# si tu as un Firewall tu ne pourras jamais communiquer via TCP/IP !

Il faut implementer ta propre classe Socket qui gere SOCKS4/5 et HTML !!!

J'ai commencé, mais c est un boulot considérable que je voudrais éviter !

signaler à un administrateur
Commentaire de azerty25 le 26/05/2004 20:29:42

arf, sa doit etre tres ... chiant ! Je te souhaite bonne chance alors lol

signaler à un administrateur
Commentaire de np78 le 02/12/2004 09:46:04

Bonjour,

Comment utiliser la méthode POST ?

Je souhaite lire la page google.fr (ca je sais faire) puis dans le champs recherche entrez un mot cléf, puis poster le tout afin d'obtenir les réponses.

D'ou ma question Comment utiliser la méthode POST ? il n'y a pas d'exemple dans le code source.

Merci

Nicolas

signaler à un administrateur
Commentaire de Renfield le 01/12/2007 00:46:43 administrateur CS

dans CSocket.DecodeChunkedMessage

j'ai passé IntOctetsToRead en Long, et fait :

IntOctetsToRead = Val("&H" & Left(StrMessage, LngPosA - 1) & "&")

sinon, ca coincait pour, par exemple: ec38

signaler à un administrateur
Commentaire de Renfield le 01/12/2007 01:34:09 administrateur CS

idem, bien sur pour:
IntOctetsToRead = Val("&H" & Mid(StrMessage, LngPosB, LngPosA - LngPosB) & "&")

ta classe pourrais gérer les cookies, ce serait pas mal.

signaler à un administrateur
Commentaire de Noxid le 04/05/2008 03:41:13 10/10

Source très propre, et vraiment fonctionnelle !! Bravo !!
J'ai essayé durant des heures et des heures d'utiliser Winsock dans une classe...impossible.

Excellent substitut à Winsock. Ca marche parfaitement !
Je me permets de publier une nouvelle source "Substitut à Winsock" ou "Winsock dans une classe" pour aider les autres en citant bien que cela vient d'ici :)

Encore merci, ca vaut bien un 10/10 !

signaler à un administrateur
Commentaire de loadseq le 04/05/2008 04:32:43

un très bon travail :)
j ai essayé de creer une collection d objet Csocket dans le but de creation dynamique de socket et manipuler le tout ou chacun par index , mais ca bug partout :))
si qlq'1 a deja essayé cela,merci de donner un coup de main.

Ajouter un commentaire



Nos sponsors

Sondage...

CalendriCode

Juillet 2009
LMMJVSD
  12345
6789101112
13141516171819
20212223242526
2728293031  

Consulter la suite du CalendriCode

Comparez les prix Nouvelle version

Photothèque Nouveau !



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
Temps d'éxécution de la page : 0,452 sec

Google Coop CodeS-SourceS Google Coop CodeS-SourceS


Certaines images présentes sur le site (notament certains avatars) sont issues des collections IconShock, donc si vous souhaitez utiliser ces icons vous devez les acheter, ne les copiez pas et ne utilisez pas dans vos sites et applications sans les avoir commandé.