begin process at 2012 02 08 10:45:11
  Trouver un code source :
 
dans
 
Accueil > 

Code

 > 

Réseau & Internet

 > OUTLOOK : VERSION BÊTA

OUTLOOK : VERSION BÊTA


 Information sur la source

Note :
5,5 / 10 - par 2 personnes
5,50 / 10

  • 1

  • 2

  • 3

  • 4

  • 5

  • 6

  • 7

  • 8

  • 9

  • 10
Catégorie :Réseau & Internet Niveau :Débutant Date de création :29/09/2002 Date de mise à jour :05/10/2002 23:07:35 Vu / téléchargé :7 724 / 929

Auteur : Bruto

Ecrire un message privé
Commentaire sur cette source (19)
Ajouter un commentaire et/ou une note

 Description

Cliquez pour voir la capture en taille normale
C'est un programme qui permet d'envoyer & de recevoir des emails. Il n'utilise pas un autre programme externe mais se base sur les deux composants NMPOP3 ( pour la réception ) et NMSMTP ( pour l'envoi ).
Pour cela j'ai essayé de reproduire l'interface d'Outlook, bien sûr ce n'est pas sur dix jours que je vais reproduire le même logiciel. Toutefois, il inclut déjà, pour une petite version de démarrage, pas mal d'options.        

Source

  • No code : all in the zip.
  • J'ai inclus une dll nommé LP_Crypage.dll dans le projet. Je préfère garder le contenu secret mais si vous ne voulez pas l'utiliser, supprimer :
  • 1 - Dans LP_Mail :
  • --> l'appel de la function DeCrypte :
  • Form_Comptes.Edit_Serveurs_Serveur_Password.Text := DeCrypte(Reg.ReadString('Password'));
  • --> la déclaration de la function DeCrypte :
  • function DeCrypte(Str:String):string; external 'LP_Cryptage.dll';
  • 2 - Dans LP_Mail_Assistant :
  • --> l'appel de la fonction Cryptage :
  • Reg.WriteString('Password', Cryptage(Edit_Password.Text, 0));
  • --> la déclaration de la function Cryptage
  • function Cryptage(Str:string; Mode:Byte=0):string; external 'LP_Cryptage.dll';
  • Merci de votre compréhension.
No code : all in the zip.

J'ai inclus une dll nommé LP_Crypage.dll dans le projet. Je préfère garder le contenu secret mais si vous ne voulez pas l'utiliser, supprimer :

1 - Dans LP_Mail :
        --> l'appel de la function DeCrypte :
              Form_Comptes.Edit_Serveurs_Serveur_Password.Text := DeCrypte(Reg.ReadString('Password'));
        --> la déclaration de la function DeCrypte :
              function DeCrypte(Str:String):string; external 'LP_Cryptage.dll';

2 - Dans LP_Mail_Assistant :
       --> l'appel de la fonction Cryptage :
             Reg.WriteString('Password', Cryptage(Edit_Password.Text, 0));
       --> la déclaration de la function Cryptage
             function Cryptage(Str:string; Mode:Byte=0):string; external 'LP_Cryptage.dll';

Merci de votre compréhension.      

 Conclusion

Comme il est signalé dans le titre, c'est une version légère d'Outlook.
Il reste pas mal de chose à approfondir sur la forme. Sinon il montre pas mal de fonctionnalité.

Les modifications à apporter :
- souligner les liens internets et les mettre en bleu dans les fenêtres d'envoi et de réception.
- permettre l'ajout d'un indicateur ( ! ) pour signaler l'impotance d'un mail.
- ...

Pour infos, il y a un assistant qui vous aide à paramètrer votre boîte.

N'hésitez pas à faire des remarques, mais également des retouches à faire, vos modifications, ...

Je vous authorise à modifier(en nettement mieux alors) ce source et de le remettre nouveau source.
Comme le source est gros, toute retouche m'étant signalée ne sera pas toujours pris en compte directement dans le zip car je ne vais pas ennuyer Nix tout le temps.

En espérant que ce source vous soit utile. Bonne prog à tous.        

 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


 Sources du même auteur

Source avec Zip Source avec une capture UTILITAIRE MDI & ROUTINES MDI DE BASE
Source avec Zip Source avec une capture JOURS FÉRIÉS : ASTUCES
Source avec Zip Source avec une capture CONVERTISSEUR 36 FORMATS - DECIMAL - OCTAL - ... : VERSION T...
Source avec Zip Source avec une capture NETTOYAGE DES FICHIERS INI : VERSION TOOLS
Source avec Zip Source avec une capture NRJ.BE : GAGNER DES POINTS

 Sources de la même categorie

Source avec Zip Source avec une capture PETITE APPLICATION DE TCHAT DANS UN RÉSEAU LOCALE par benimen
Source avec Zip Source avec une capture LOG DE PING POUR SURVEILLER LA QUALITÉ D'UNE CONNECTION par PhilLU
Source avec Zip GET IP AVEC INDY par Gerard
Source avec Zip GCS-FACEBOOK par pinkfloydhighopes
Source avec Zip Source avec une capture PINGNOW ADRESSE IP par mekhmoukhs

Commentaires et avis

Commentaire de Frostizz le 29/09/2002 12:18:16

A la compilation, Delphi me dit qu'il ne trouve pas le fichier Attache.dcu, en me montrant la ligne "Options in 'Options.pas' {Form_Options};"
Tu peut régler ce probleme ?

@++

Commentaire de Bruto le 29/09/2002 12:44:03

Le zip doit faire 360Ko peut-être est-ce de là s'il n'est pas de cette taille.
Sinon c'est vrai je fais référence à un ancienne form que j'ai oublié de retirer de mon code.
Il faut supprimer dans l'unit 'Mail', dans Uses : 'Attache' et c'est bon
Désolé pour ce prob je ne l'avais pas détecté.

Commentaire de Frostizz le 29/09/2002 13:54:01

Ok donc en allant dans l'unit "Mail" si on enlève "Attache," et kon recompile c bon...

Un logiciel sans problème c'est pas un vrai logiciel...

Commentaire de Frostizz le 29/09/2002 14:16:36

Il faut aussi penser à dire k'il faut créé un repertoire Temp situé dans le même repertoire que le fichier éxécutable.
...

Commentaire de Bruto le 29/09/2002 14:56:31

Je pensais qu'il le créait automatiquement, encore une erreur de ma part.
Vois-tu il est difficile de détecter des erreurs de ce type sur l'ordinateur du créateur du source. Des erreurs d'exécution oui mais ça, ...
Pour infos:
Serveur pop ex : pop.skynet.be
Serveur SMTP ex : relay.skynet.be
UserID ex : Michel.Degan
Pour ceux qui auraient du mal.
Sino est-ce que le prog te satisfait Frostizz ?

Commentaire de Nono40 le 29/09/2002 22:41:24

Pour le zip : tu mets beaucoup trop de fichiers dedans !!!!!

Supprime les fichiers .~pas .~dfm .~dpr, ils ne servent à rien, ce ne sont que des copie de sauvegarde. Ainsi ton ZIP fera moins de 250 et tu pourras le mettre à jour sans demander à Nix.

Nono

Commentaire de Nono40 le 29/09/2002 22:43:55

J'ai une erreur 'Opération pointeur incorrecte' quand on ferme l'application, je ne sais pas si tu l'as aussi. Je n'ai pas trouvé d'ou elle vient pour le moment.

Pour créer le sous répertoire temp au démarrage, tu peut utiliser :
ForceDirectories(ExtractFilPath(ParaStr(0))+'Temp');

Utilise plutôt IncludeTrailingPathDelimiter() car elle est aussi compatible avec Linux.

Mise à par ça c'est vraiement top, je vais continuer d'essayer...

Ah si je viens de voir quelque chose : List_Mail_Item est défini deux fois ( Mail_Reception.pas et Principale.pas ) or il n'est créé qu'une fois dans le TForm_Principale.FormCreate(). De plus List_Mail_Item est créé avec un propriétaire (ListView_Mail), dans ce cas il ne faut pas le libérer soi-même avec un free, c'est peut-être la source le l'erreur...

Nono.

Commentaire de Nono40 le 29/09/2002 22:50:21

Il y a des petites erreur sur les create() et free(), souvent tu crées dans le forumCreate ( donc une fois au début ) et tu libère dans le FormClose ( donc à chaque fois que l'on ferme la fiche). Pour tes variables globales tu pourrais utiliser les déclaration Initialization et Finilization. Par exemple dans l'unité Mail.pas, supprimer des évenements List_Att := TStringList.Create(); et List_Att.Free; et ajoute tout à la fin de l'unité :
Initialization
  List_Att := TStringList.Create();
Finalization
  List_Att.Free;
end.

Bon je continue de regarder...

Nono.

Commentaire de Nono40 le 29/09/2002 23:01:28

Euh, oui bon, oublie le commentaire juste au dessus... Je n'avais pas vu que tu crées la fiche à l'exécution... C'était donc logique pour les unites Mail.pas et Mail_Reception.pas.... Par contre dans ce cas, il faut les détruire quand on les fermes. Soit par Action=caFree dans le OnClose ou directement Form_Mail_Envoyer.Free quand elle n'est plus utile.

Nono.

Commentaire de Bruto le 30/09/2002 11:11:44

Je viens de faire les correctifs mais il reste encore une erreur 'opertion de pointeurs incorrectes' si vous trouvez, ... j'ai souvent ce type de problème, ça m'énerve.
Sinon comme je l'ai dit plus haut, si vous améliorez le projet avec de nouvelles options, possibilités, ... vous pouvez l'ajouter comme votre source mais il faut que vous me remerciez comme je le fait dans la form 'A propos'.
Maintenant il fait 254Ko c'est nettement mieux merci Nono40.
Pour info : la procédure IncludeTrailingPathDelimiter() n'est pas reconnu chez moi, j'utilise Delphi 5 entreprise. Si quelqu'un peut m'indiquer où je pourrais trouver la version 6 'grat**te' Merci

Commentaire de Nono40 le 30/09/2002 20:00:58

La version gratuite de Delphi 6 est tout simplement sur le site de Borland, mais c'est la version personnelle... Et cette version n'inclu pas la palette FastNet dont fait partie NMPOP3 et NMSMTP. Elle ne pourra donc pas compiler ton projet.

Au fait dans le zip tu peux aussi enlever les .dcu pour réduire encore la taille du zip.

Nono.

Commentaire de Nono40 le 30/09/2002 22:49:58

J'ai trouvé le problème de 'Opération pointeur incorrecte'. Le problème vient de ta dll de cryptage, si on la supprime du projet il n'y a plus d'erreur. Dans les prototype d'appel de Cryptage de Decryptage tu utilises des paramètres en String et des résultats en String. C'EST FORTEMENT DECONSEILLE. Car String est en fait une structure pointeur cachée, or l'espace des variables des dlls n'est pas celui de l'application, delphi ne gére alors bien les pointeurs que dans des conditions très strictes sur les Uses ( voir l'aide en ligne ). Il vaut mieux utiliser le type ShortString si tu n'utilises pas de chaines de plus de 255 caractères ( ce que je conseille si ta dll ne sera utilisée que par des applis delphi ), sinon il faut passer en PChar mais c'est un peu plus casse-pied à manipuler ( mais indispensable si ta dll doit être utilisée par VB ou C++).

Si tu veux vraiement utiliser le type String regarde l'aide en ligne sur la création des dlls, il y a une rubrique spécialement dédiée au String en paramètre des fonctions exportées.

A mon avis le problème de ton source suivant doit être le même...

Nono.

P.S. il faut modifier la propriété SpeedButton_Select.Anchors de la fenêtre Form_Carnet pour que le bouton suive les modifications de taille.

Commentaire de Bruto le 01/10/2002 12:57:23

ok pour la dll je signalerai quand je l'aurais modifiée, j'utiliserai l'option PChar puisque j'utilise VB, C++, ...
C'est toujours bien de pouvoir utiliser du codes déjà fait dans un langage et de le manipuler avec un autre.
Sinon est-ce que tu as modifié, amélioré le projet Nono40 ?

Commentaire de Nono40 le 01/10/2002 23:27:15

Non, je n'ai pas touché au projet. Sauf pour aller à la chasse au bug 'Opération pointeur incorrecte'. Pour moi ce qui manque le plus dans ce projet c'est la sauvegarde automatique des messages à la fermeture de l'application. Ainsi quand on revient dans le programme, les messages sont déjà chargés ( ce qui permet de les consulter hors connection ). Ceci permet aussi d'activer l'option pour supprimer les messages du serveur une fois qu'ils sont lus.

Il est possible d'enregistrer le contenu d'un composant dans un flux. C'est très utile pour les TListView :
*** Sauvegarde du contenu :
procedure TForm1.Button1Click(Sender: TObject);
Var St:TFileStream;
begin
  St:=TFileStream.Create('C:TEMPESSAI.DAT',fmCreate);
  Try
    St.WriteComponent(ListView1);
  Finally
    St.Free;
  End;
end;

*** Relecture du contenu :
procedure TForm1.Button2Click(Sender: TObject);
Var St:TFileStream;
begin
  St:=TFileStream.Create('C:TEMPESSAI.DAT',fmOpenRead);
  Try
    St.ReadComponent(ListView1);
  Finally
    St.Free;
  End;
end;

Nono.

Commentaire de Bruto le 02/10/2002 10:47:28

Je vais essayer d'inclure cette idée. Je n'avais pas voulu mettre l'option suppression du serveur car ne connaissant pas tous des possibilités, je préfèrais ne pas effacer des messages importants. C'était plus un source sous forme de projet et sur la façon d'envoyer et de recevoir des mails, le but étant de montrer le plus de fonctionnalité pour permettre d'intégrer une partie ou l'ensempble dans un de vos programmes. En effet, pourquoi lancer Outlook ( bouffe bq de ressource ) si on peut le faire directement dans votre programme.
Les mises à jours sont en route. Comme je suis sur un autre projet, ce ne sera pas pour tout de suite.
Merci encore à ceux qui ont des idées, des astuces, ...

Commentaire de sofiane2 le 15/05/2003 16:45:41

NMSMTP , NMPOP3 tu peut me l'envoyer stp

Commentaire de Bruto le 15/05/2003 20:35:34

Les composants se trouvent dans l'onglet "Fasnet"
NMPOP3 : enveloppe avec cle
NMSMTP : enveloppe avec tire bouchon

J'ai le paquet "Fasnet" complet si tu ne l'as pas ( dclnmf50.bpl ). Le mettre dans le dossier :
"C:Program FilesBorlandDelphi5Bin"
Dans le menu "ComposantInstaller des pacquets"
Ajouter & sélectionner le nouveau fichier bpl.
Automatiquement, il ajoute l'item "Outils NesMasters Fasnet". Cocher l'item si pas déjà fait.
Faire Ok et vérifier que l'onglet FasNet est ajouter dans la pallette de composants.

Si tu veux que je t'envoi le pacquet sofiane2. Transmets-moi ton adresse mail en m'écrivant un message sur code-source. Ne donne pas ton adresse ici. Clique sur l'enveloppe à gauche de ce message.

Idem pour les autres

Commentaire de Nero` le 20/12/2004 17:07:19

Salut brutos.

j'aimerais pouvoir essayer ton soft mais je n'est pas le composant NMPOP3 j'utilise delphi 7.

pourais tu me l'envoyer stp ?

merci @++

Commentaire de dyonisos5 le 19/12/2006 16:49:21

Salut brutos !
J'ai regardé ton programme et il semble très abouti mais ne peux pas non plus le lancer du fait de la version.
J'ai le même problème que Nero`, sur la version 7 de Delphi, le composant Fastnet n'éxiste pas apperement.
Orai tu une idée sur le moyen d'ouvrir ton projet ?
Merci.

 Ajouter un commentaire




Nos sponsors


Sondage...

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,045 sec (4)

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