begin process at 2010 02 10 07:22:52
  Trouver un code source :
 
dans
 
Accueil > 

Code

 > 

Réseaux & Internet

 > EDONKEY SEARCHER (SOCKET, WIN32)

EDONKEY SEARCHER (SOCKET, WIN32)


 Information sur la source

Note :
10 / 10 - par 10 personnes
10,00 / 10

  • 1

  • 2

  • 3

  • 4

  • 5

  • 6

  • 7

  • 8

  • 9

  • 10
Catégorie :Réseaux & Internet Niveau :Initié Date de création :12/11/2004 Date de mise à jour :13/11/2004 15:16:32 Vu / téléchargé :8 044 / 985

Auteur : aardman

Ecrire un message privé
Site perso
Ce membre participe au partage de revenus publicitaires
Commentaire sur cette source (16)
Ajouter un commentaire et/ou une note


 Description

Voila un programme qui permet d'effectuer des recherches de fichier sur le reseau p2p edonkey.
Pour fonctionner, le programme a besoin d'un fichier server.met (fichier utilisé par tout les clients edonkeys), qui doit se trouver dans le meme repertoire que l'exe. Je n'ai volontairement pas mis ce fichier dans le zip, donc si vous voulez tester le programme, il faut soit le trouver sur le net, soit le prendre dans le repertoire de son client p2p favoris.

Le fonctionnement du programme est décrit dans le fichier readme.txt...



 Conclusion

Les commentaires sont evidemment les bienvenues, ainsi que les remarques/questions ou si vous trouvez un bug (a priori il n'y en a plus trop...).

 Fichier Zip

Les Membres Club peuvent télécharger directement un fichier contenu dans le zip sans télécharger le zip en entier !

Télécharger le zip


 Historique

13 novembre 2004 15:16:32 :
correction d'un petit probleme d'icone... (merci a vecchio)

 Sources du même auteur

Source avec Zip FONCTIONS IMPORTÉES/EXPORTÉES D'UN EXECUTABLE (WIN32)
Source avec Zip TÉLÉCHARGER UN FICHIER (WIN32, SOCKETS)
Source avec Zip DES YEUX (WIN32)
Source avec Zip Source avec une capture DES CHIFFRES ET DES LETTRES (WIN32)
Source avec Zip DES CHIFFRES SANS LES LETTRES (WIN32)

 Sources de la même categorie

Source avec Zip TIM_RESEAU, CLASSES POUR RESEAU COMPLET par williamallas
Source avec Zip INTERNET IP FINDER TROUVER VOS ADRESSE IP (INTERNET) par xmustapha
Source avec Zip CLIENT/SERVEUR AVEC TSOCKETSERVER & TCLIENTSOCKET par xmustapha
Source avec Zip REMOTE SHELL GEN par ganjarasta
PROXY IRC SIMPLE (WINDOWS/WINSOCK) par _michel

Commentaires et avis

Commentaire de AlexMAN le 13/11/2004 10:14:41

Fonctionne parfaitement chez moi, le resultat et le code sont vraiment impressionnants, j'ai beaucoup de choses a apprendre de toi. Vraiment excellent, bravo.

Bonne continuation !

Commentaire de BruNews le 13/11/2004 13:40:55 administrateur CS

ABSOLUMENT SUPERBE !!!

Commentaire de aardman le 13/11/2004 17:10:39

Salut,
merci pour les commentaires c'est sympa :)
AlexMAN > si tu as des questions n'hesite pas.

Commentaire de AlexMAN le 14/11/2004 00:23:24

Et Brunews sil a des kestions, il devrait hesiter lui ? Ca veut dire koi ? Ke je suis moins doué que lui ? pfff, nimporte koi...
LOL
Bon voila, ct le ptit delire de la nuit, je vais aller me coucher, mais j'en reviens tjrs pas, donc je voulais te re-féliciter aardman, bravo..

Bonne nuit a tous

++

Commentaire de arno03 le 30/12/2004 17:21:58

c'est wawfull :D
cest bien fait, c'est pratique: j'ai qqfois besoin de chercher des fichiers sur edonkey mais sans avoir un client p2p come emule, shareaza etc...


maintenant si j'aurais une suggestion ca serait:
mettre un lien direct vers le fichier server.met, ton prog le téléchargerait et le placerait direct ds le bon repertoire.

et maintenant j'ai 2 questions:
combien tu as mis de temps pour faire tout ca ?
et est ce que, à partir de cette source, il est possible de télécharger les fichiers recherchés ?
je n'ai pas envie de refaire emule, c'est juste par curiosité ^^

voila bah bravo, et 10/10 pr moi

Commentaire de aardman le 30/12/2004 18:41:23

Salut,
merci pour le commentaire.
J'ai mis un peu plus de 2 mois pour le faire.

Ce prog est a la base un prog de recherche, donc il ne fait pas grand chose en fait: lecture du server.met, connexion au serveur, envoie/receptions de recherches.
Lorsqu'on trouve un fichier, on peut juste récuperer son lien ED2K.

Pour télécharger un fichier, il faudrait quasiment faire un client edonkey complet, car il faut gerer une liste de fichier partagés, une liste de source, gerer les sources(requetes, reponses, connexions, transfers). Il faudrait aussi recalculer les hash des parties des fichiers obtenus pour verifier leur validité.
Par principe, il faudrait ajouter toute la partie upload vers les clients, c'est a dire gerer la file d'attente, les requetes, les connexions, etc..

Ca sera ptet dans une prochaine source :)

Commentaire de yanmart le 07/03/2006 11:36:37

Salut ,
Le programme est trop bien...
Mais j'aimerais faire des tests sur le code source, Mais il m'est impossible de le compiler, Donc ça serait cool que tu explique comment tu l'as compiler.
J'ai essayer avec visual c++... mais ça marche pas

                   Merci d'avance......

Commentaire de gdenans le 07/04/2006 18:47:22

salut à tous

bravo pour le code et courage pour la suite.
Comme je vois que tu connais bien le P2P, et donc tu dois avoir trouvé pas mal de documentation pour comprendre comment ça marche, est-ce que tu pourrais me donner des liens ou des documents qui m'aident à comprendre comment ça marche (je vais bien sûr étudier ton code au maximum mais des explications préliminaires seraient bienvenues pour commencer). Je dois faire une étude pour savoir si un projet de partage de fichiers avec transfert cripté par ssl ou IPSec est faisable et si ça vaut la peine de le faire. Aussi je me demande si le firewall ou router peut analiser le contenu des fichiers transferés par e-mule ou seulement deviner l'utilisation d'e-mule en voyant les ports utilisés. J'ai beaucoup de questions qui me turlupinent en fait.

merci d'avance...
zil

Commentaire de aardman le 11/04/2006 03:31:37

Salut,
voila quelques documents sur le p2p en general:
http://betouchi.free.fr/doc_et_ebook/prog_reseau/p2p/
Pour edonkey/emule, ce pdf est le plus complet que j'ai trouvé:
http://betouchi.free.fr/doc_et_ebook/prog_reseau/p2p/edonkey_protocol/emule_proto_spec.pdf

Commentaire de jerrol le 03/04/2007 05:44:36

Salut. J'ai l'impression que ton programme ne fonctionne plus. Enfin chez moi en tout cas... Le problème est qu'il n'arrive plus à se connecter à aucun serveur.
Et pourtant, à l'époque, je l'avais essayé et ça marchait impec (à l'époque de Razorback2). Ca donnait même un bon millier de réponses à chaque fois, alors que c'est bridé à 300 sur la mule. Est-ce que les serveurs d'aujourd'hui ont changé leur protocole désormais et rend ton programme incompatible ?

Commentaire de aardman le 03/04/2007 13:52:17

Salut,
c'est surement ca, le protocol n'a pas changé mais maintenant les connexions aux serveurs sont 'obfuscated', pour contourner les protections de certains fournisseurs d'acces à internet.
eMule peut te retourner autant voire plus de résultats, en cliquant sur le bouton More quand celui ci est activé.

Commentaire de taye78 le 04/05/2007 20:56:22

ok

Commentaire de lol55 le 01/05/2009 16:55:09

Bonjour à tous,

J'avais découvert cette source il y a quelques années mais je ne parvenais pas à me connecter à un serveur, la connexion échouait à chaque fois...
Je repensais à ceci ces dernier temps, je retrouve donc la source sur cppfrance.com puis je télécharge l'archive et je tente à nouveau de me connecter à un serveur (à partir de cette liste mise à jour régulièrement : http://www.gruk.org/server.met ), la connexion échoue, j'essaye avec un autre serveur, de même.

J'ouvre alors le projet avec Visual Studio puis je relis tout le code source pour me remémorer le fonctionnement du programme comme je l'avais déjà fait auparavant.
Je modifie simplement quelques lignes, je recompile puis lorsque je tente de me connecter : CA MARCHE!! ^^
La fonction recherche fonctionne aussi!

------------------------------------------------------------------------------

Voici les lignes à modifier dans le projet :
Dans le fichier edonkey.cpp, remplacer les premières lignes de la fonction InitEdonkeySearcher (ligne 93 jusqu'à "// hash md5 du client") par :

lstrcpy(eds.ed2k_nickname, "http://emule-project.net");
// l'username sera l'identifiant du client
if(!eds.ed2k_nickname)
    return 0;

Puis quelques lignes après, remplacer la ligne eds.ed2k_version = ... par :

eds.ed2k_version = 0x5c;   // version utilisée par eMule v0.49c

Dans le fichier interface.h, à la 8ème ligne, il faut modifier le numéro du port 16xxx par le numéro du port OUVERT qui fonctionne en HighID avec votre logiciel eMule (le miens est le 7890) :

#define ED2K_PORT   7890     // port edonkey

Téléchargez une liste de serveur à jour :
http://www.gruk.org/server.met
Que vous placez dans le dossier de l'exécutable de notre programme.

Enregistrez les deux fichiers modifiés, compilez, tentez de vous connectez... Oh ca marche!!

--------------------------------------------------------------------------

Je suis content d'avoir trouvé la solution à ce problème qui me tournait dans la tête depuis quelques semaines!...

Encore merci à Aardan pour cette source!
En espérant qu'il nous fasse un jour une nouvelle source là dessus, un "mini eMule"! ^^

Enjoy! :-)

Lol55

Commentaire de lol55 le 01/05/2009 17:30:40

Après avoir testé plusieurs autres connexions à des serveurs différents j'ai remarqué que certaines connexions fonctionnent, et d'autres non!

Commentaire de lol55 le 22/11/2009 03:22:05 10/10

Excellent commencement

Commentaire de taye78 le 22/11/2009 15:59:45

ah ok

 Ajouter un commentaire




Nos sponsors


Sondage...

Comparez les prix

CalendriCode

Février 2010
LMMJVSD
1234567
891011121314
15161718192021
22232425262728

Consulter la suite du CalendriCode

 
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 : 0,468 sec (3)

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