begin process at 2012 02 09 14:06:22
  Trouver un code source :
 
dans
 
Accueil > 

Code

 > 

Réseaux & Internet

 > [WIN32/STL] CLIENT MSN MESSENGER (SANS MFC, QT, ...) [UNICODE/ANSI]

[WIN32/STL] CLIENT MSN MESSENGER (SANS MFC, QT, ...) [UNICODE/ANSI]


 Information sur la source

Note :
10 / 10 - par 1 personne
10,00 / 10

  • 1

  • 2

  • 3

  • 4

  • 5

  • 6

  • 7

  • 8

  • 9

  • 10
Catégorie :Réseaux & Internet Classé sous :client, msn, messenger, win32, wininet Niveau :Initié Date de création :17/10/2008 Date de mise à jour :21/01/2009 21:27:46 Vu / téléchargé :6 156 / 526

Auteur : Scooper

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


 Description

Cliquez pour voir la capture en taille normale
Bonjour à tous.

(MAJ 29/10/08) :
  - Interface skinnée pour la fenetre principale ainsi que celle de discution (cf. Screenshot)
  - Ajout d'une animation dans un thread séparé lors de la connexion au serveur
  - Ajout d'une richeditbox pour les discussions avec affichage des emoticons (insert bitmap) + gestion des polices d'écritures (font couleur grand et italique)
  - 16 emoticons incluses
  - Possibilité de choisir sa police d'écriture (font, gras, italique et couleur).
  - ...

(MAJ 20/10/08) :
  - Ajout du projet pour Dev Cpp (Compile en ANSI mais pas en UNICODE, minigw ne connais pas wstringstream)
  - Click droit sur un contact donne les numéros de téléphone + des statuts à propos des listes (forward, blocked, reverse list)
  - Ajout d'une progressbar lors de la connexion

Il y a environ 3 ans j'avais déposé ici même un client msn super mal codé et avec les MFC (pas bien !).

Bref j'ai recréer un client msn messenger en Win32/stl sans autre librairies.
Le projet à été compilé avec VS 2005 sous XP. Il peux être compilé en UNICODE ou ANSI (les 2 exe sont inclus).
Il ne nécessite pas de dll supplémentaires pour fonctionner sur un système sans outils de développement (c'était le but recherché de pouvoir fonctionner sans installer le VC runtime)

Ce qu'on peux apprendre :
  - Encapsulation de fenêtres dans des classes (CreateDialog)
  - Requête SSL et récupération des headers de retour avec Wininet
  - Stockage d'adresse d'objets dans une listbox pour y accéder directement après (comme en C#)
  - Classe héritée (CMyMsnHandler et CMyMsnMessaging héritent de CMySocketHandler)
  - Utilisation de Macros pour lancer des fonctions avec nombre d'args inconnu (... et VA_ARGS)
  - compilation en UNICODE ou ANSI (conversion de certaines fonctions)
  - Synchronisation de Thread (pour la reception de data via sockets)

après ce n'est que de l'implémentation de protocole ... -> http://www.hypothetic.org/docs/msn/

Ce projet est une bonne base pour faire évoluer le protocole pour un échange de donnée personnalisé. Par exemple : chat sécurisé, ... (il est possible de définir des protocoles de communications -> voir http://www.hypothetic.org/docs/msn/client/messages .php en bas de page)

Améliorations possibles :
  - Ajout de smileys dans les discutions
  - Conversion de tous les caractères accentuées pour les pseudos et chats (voir Utils::replaceEmphasis)
  - Ajouter un thread lors de la connexion pour indiquer l'avancement à l'utilisateur.
  - Faire des fenêtres sans bordures et personnalisées
  - ...

Je suis ouvert à toutes les suggestions/améliorations possible.

Je pense que ce projet doit être compilable sous devcpp ou C::B car win32 natif et stl inclus avec ces outils de developpement (je pense ?)

Il semblerait que sur Vista le programme ne se lance pas :( j'ai pas Vista pour tester.

Je n'arrive pas a activer les styles XP (peut-être car les DLL sont compilées en statiques (MULTITHREAD au lieu de MULTITHREAD DLL pour s'affranchir de VCREDIST) ?

PS 1 :
Dans la classe CMySocket il y a des fonctions qui permettent de recevoir des données avec un timeout mais pas utilisé dans ce projet et c'est pas très *beau* car c'est création de thread + kill de thread -> j'ai changé de méthodes mais laissé les sources si des personnes en ont besoin ...

Source

  • tout est dans le zip
tout est dans le zip


 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

17 octobre 2008 22:58:42 :
prévisualisation
20 octobre 2008 20:45:01 :
- Ajout du projet pour Dev Cpp (Compile en ANSI mais pas en UNICODE, minigw ne connais pas wstringstream) - Click droit sur un contact donne les numéros de téléphone + des statuts à propos des listes (forward, blocked, reverse list) - Ajout d'une progressbar lors de la connexion
26 octobre 2008 13:55:22 :
mots clés
29 octobre 2008 23:58:57 :
(MAJ 29/10/08) : - Interface skinnée pour la fenetre principale ainsi que celle de discution (cf. Screenshot) - Ajout d'une animation dans un thread séparé lors de la connexion au serveur - Ajout d'une richeditbox pour les discution avec affichage des emoticons + police du contact - Possibilité de choisir sa police d'écriture (font, gras, italique et couleur). - ...
30 octobre 2008 00:02:47 :
renommage de l'exe car pas uploadé :'(
05 décembre 2008 21:32:36 :
mots clef
21 janvier 2009 21:27:49 :
suppression du login et mot de passe du compte de test resté malheureusement dans le code source

 Sources du même auteur

Source avec Zip Source avec une capture CLIENT MSN MESSENGER (MAJ)
Source avec Zip Source avec une capture SNAKE EN BGI AVEC TURBO C++ 3.0
Source avec Zip JEU ASTROID FRONTIER

 Sources de la même categorie

Source avec Zip SERVEUR MULTITHREAD [LINUX/WIN] par nipepsinicolas
Source avec Zip Source avec une capture SECURE REMOTE SHELL [WIN32] par ganjarasta
Source avec Zip Source avec une capture SUIVI DE PRODUCTION ONDULEUR PHOTOVOLTAÏQUE SOLARMAX par brunovan
Source avec Zip MINICHAT MULTI-CLIENT par wisar
SOCKET CPP par baptchr55

 Sources en rapport avec celle ci

METTRE À JOUR LE TITRE DU MORCEAU EN COURS DANS MSN LIVE par citronz1969
INTERACTIONS MSN MESSENGER par dump
Source avec Zip Source avec une capture SNIFFER MSN MESSENGER GRACE AU HOOK DES FONCTIONS WINSOCK par cosmobob
Source avec Zip WIZZ (WIN32) par vecchio56
Source avec Zip Source avec une capture CLIENT MSN MESSENGER (MAJ) par Scooper

Commentaires et avis

Commentaire de Darksheep le 19/10/2008 10:23:56

Super ! je vais regarder ça
Quelques idées d'amélioration :
-Interface plus design
-Une "Progressbar" en attendant la que la connection se fasse (au lieu d'un blockage)
-Sauvegarde dans un fichier du Login et du Pass (option Mémoriser mon adresse et Mémoriser mon mot de passe, dans Windows live messenger)

Sinon j'te met 10/10

Commentaire de Darksheep le 19/10/2008 10:27:27 10/10

Voila ^^ désolé pour les fautes :s

Commentaire de Scooper le 19/10/2008 19:12:54

merci pour la note :)
Sinon je pense pas ajouter de champs sauvegarder le mot de passe -> trop dangereux...
et ce programme à été fait a la base pour permettre de wizzer sans cesse l'interlocuteur histoire de l'emmerder un peu hihi

Sinon la prochaine version que je metterai contiendra les informations du contact ainsi que si il est bloqué et si vous êtes dans sa liste de contact (utile pour certaines occassions)

J'ajouterai aussi le projet pour devcpp où ca compile sans problèmes en changeant 2 3 trucs dans le code en ANSI; par contre en UNICODE ca compile pas :s minigw connait pas std::wstringstream donc si quelqu'un sait pourquoi ?

J'ajouterai aussi la progressbar c'était mon idée (c'est pour ca que comctl32 est linké et qu'au début je fais initcommoncontrols pour la progressbar sinon ca ne fonctionne pas)

Commentaire de uaip le 20/10/2008 19:29:38

Salut, j'ai peut-être mal compris, mais pour donner le style XP à ton appli, un simple manifest suffit.

- Soit tu rajoutes simplement le fichier "le_nom_de_ton_appli.exe.manifest" dans le répertoire de l'exe (il devra y rester, même après la compilation),
- Soit tu rajoutes la ligne "1 RT_MANIFEST manifest.xml" dans ton *.rc, en prenant soin d'ajouter ce fichier dans le répertoire de l'exe (il pourra être supprimé après la compilation).

Sinon ça a l'air vraiment pas mal. Je testerai tout ça prochainement.
Bon boulot en tout cas :)

Commentaire de uaip le 20/10/2008 19:31:24

Ah merde, j'ai oublié de préciser que ce fichier "manifest" se trouve un peu partout (sur le net, par exemple).

Commentaire de Scooper le 20/10/2008 19:45:54

Salut,
j'ai essayé en ajoutant le fichier manifest.xml à la compilation (dans l'option add manifest file) et aussi avec le pragma comment mais ne fonctionne pas.
Dans mes autres logiciels, j'ajoute suelement :
//for xp style
#if defined _M_IX86
#pragma comment(linker,"/manifestdependency:\"type='win32' name='Microsoft.Windows.Common-Controls' version='6.0.0.0' processorArchitecture='x86' publicKeyToken='6595b64144ccf1df' language='*'\"")
#elif defined _M_IA64
#pragma comment(linker,"/manifestdependency:\"type='win32' name='Microsoft.Windows.Common-Controls' version='6.0.0.0' processorArchitecture='ia64' publicKeyToken='6595b64144ccf1df' language='*'\"")
#elif defined _M_X64
#pragma comment(linker,"/manifestdependency:\"type='win32' name='Microsoft.Windows.Common-Controls' version='6.0.0.0' processorArchitecture='amd64' publicKeyToken='6595b64144ccf1df' language='*'\"")
#else
#pragma comment(linker,"/manifestdependency:\"type='win32' name='Microsoft.Windows.Common-Controls' version='6.0.0.0' processorArchitecture='*' publicKeyToken='6595b64144ccf1df' language='*'\"")
#endif

et ca fonctionne toujours mais pas pour ce prog ^^

Commentaire de Scooper le 20/10/2008 21:17:59

en rajoutant un petit timer, il est simple de mettre à jour son pseudo toutes les 10 secondes pour faire une horloge parlante lol

Commentaire de Scooper le 30/10/2008 00:01:19

prochaine màj :
  - Remplacement de la listbox par un treeview pour ajouter des images pour les status
  - ajout d'une fenêtre pour choisir l'emoticon (actuellement il y en a 16 inclus)
  - implémentation du protocole MSN avec les MSN OBJECT pour récupérer les photos et les emoticons personnalisées des autres contacts

Commentaire de ZeroCool80 le 04/08/2009 09:40:10

Problème au niveau du zip pas moyen d'ouvrir le projet avec dev C++ :(

Commentaire de Scooper le 04/08/2009 13:05:21

Bonjour,

Je viens d'essayer et le zip fonctionne correctement.

Commentaire de H2000 le 07/01/2010 15:13:59

Salut,

Est-ce possible de faire un fichier ActiveX de votre client MSN ?

Merci

Cordialement

Commentaire de freds72 le 16/11/2010 17:18:57

Meme question que sur le precedent article, serait-il possible de preciser sous quelle licence ce code est publie?
Cordialement,
Frederic

Commentaire de patsla le 29/03/2011 15:04:04

Hi, même je veux savoir en vertu dont la licence est ce projet?
J'espère obtenir une réponse de vous bientôt.
excusez mon mauvais français
- Pat

 Ajouter un commentaire


Discussions en rapport avec ce code source dans le forum

programmation client [ par CyraX ] bonjour tout le monde...Voila je souhaiterais programmer un client pour un server de message instantanés style AIM ou MSN.Cependant, je manque d'infor modifier login msn messenger en fonction de l heure [ par morgandetoi06 ] bonjour, j aimerai savoir s'il est possible de faire un programme qui change automatiquement le login sur MSN messenger en fonction de l'heure du syst API pour changer le pseudo de msn messenger [ par morgandetoi06 ] est ce que quelqu un pourrait donner la fonction a integrer dans un programme en c++ pour modifier le pseudo sur msn messenger ??merci d avance MSN et Win32 [ par thebigbang ] Bonjour à tousProblème : récupérer le contenu du richedit principal de la fenetre de conversation de MSNJ'ai essayé de recup son handle et d'appliquer Sources MSN Messenger??? [ par supergrey ] Bonjour je voudrai savoir si il existe une source permettant de se connecter et de dialoguer sur MSN messenger ou un autre messenger populaire.Merci d une source pour se connecter a msn messenger??? [ par supergrey ] Salut, je voudrais savoir si depuis le temps qu'on en parle quelqu'un a réussit a faire une source pour simplement se connecter a msn messenger?M MSN Messenger [ par LordBob ] Salut a tous,j'aimerais savoir si il y avait un moyen de commander simplement MSN Messenger a partir d'un programme en C/C++...Merci par avance...Bob. Changer le port de MSN messenger [ par dakkon ] BonjourAlors j'ai un petit probleme, je voudrais change le port utilisé par MSN messenger. Mais je ne sais pas si c'est possible.Je suis au boulot, et Msn Messenger [ par nem02004 ] Bonjour, il ya til moyen de recuperer la liste des contactes MSN ?( apart prendre les adresses dans les archives de conversation ) SoftPhone [ par bjramzi ] Salut! Je suis entrains de développer une appli SoftPhone. J'ai récupéré la documentation de l'API MSN Messenger.  Le pro


Nos sponsors


Sondage...

Comparez les prix

CalendriCode

Février 2012
LMMJVSD
  12345
6789101112
13141516171819
20212223242526
272829    

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,827 sec (3)

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