begin process at 2010 02 10 07:29:42
  Trouver un code source :
 
dans
 
Accueil > 

Code

 > 

Réseau & Internet

 > POWER SMTP SERVER

POWER SMTP SERVER


 Information sur la source

Note :
Aucune note
Catégorie :Réseau & Internet Classé sous :serveur, smtp, paradox Niveau :Initié Date de création :04/02/2007 Date de mise à jour :11/02/2007 00:24:06 Vu / téléchargé :5 740 / 1 319

Auteur : Francky23012301

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

 Description

Cliquez pour voir la capture en taille normale
Réalisant actuellement un source d'envergure, j'ai été obligé de réaliser un serveur SMTP.

J'ai été confronté à un premier problème : il n'y a rien de sérieux sur le web traitant de ce sujet (enfin en terme de développement). Ensuite les composants Indy sont bourrés de beugs : au point que j'en porte une moumoute.

Ce serveur SMTP vous permet d'envoyer et aussi de recevoir des messages. Evidemment les pièces jointes sont traitées. Chaque message est enregistré dans une table Paradox et récupérable.

Un systeme de BlackList est incluse : un ptit click suffit.

Ce projet a été testé avec un mail bomber : ca marche tres bien mais attention suivant le client smtp utilisé ca peut etre tres tres tres long.

2~3 petits gagdets sont présents pour répondre à des questions du forum : ;).

Il y a juste un ptit beug au niveau du DBGrid que je ne comprends pas.


 Conclusion

Merci à Delphiprog pour son aide.

Vous devez compiler les deux projets.
Les deux executables résultant doivent se trouver dans le meme dossier.
Ensuite vous créer l'identification en lancant l'application "activation.exe"
Ensuite faite joue joue avec votre serveur.

Pour ceux qui n'ont pas de client smtp voila comment faire

*Aller sur http://www.mon-ip.com
*Ouvrir une fenetre ms dos
*telnet MonIp MonPort
*Helo CodesSources
*Mail From:<Compte_bidon@yahoo.fr>
*RCPT To:<un compte bidon que vous avez créé>
*Data
*;
*Subject: Salut
*
*Il s'agit d'un test
*. //Il faut terminer par le point
*Quit //Pour fermer proprement la connection via telnet

 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

04 février 2007 16:32:55 :
Petit beug au niveau de l'identification : la longueur du array était incorrecte (trace d'un test). Désolé C'est bon maintenant : tout fonctionne!
04 février 2007 19:25:25 :
Merci Cirec: Correction de la libération de l'objet (Ptite tête le Francky ^^). Modifications pour les update dans l'unité UIniFile
11 février 2007 00:24:07 :
Version avec indy 10 réalisée : Attention des fonctionnalités optionnelles sont absentes par rapport à la version 9 (Beug d'indy : l'object IdCommand n'est pas reconnu dans les procedures CommandHandlers0Command(ASender: TIdCommand)); Le code fonctionne correctement

 Sources du même auteur

Source avec Zip Source avec une capture TSELECTBUTTON-TPOTENTIO-TTRACKBARVALUE
Source avec Zip Source avec une capture TAGREEMENT
Source avec Zip Source avec une capture DELPHIUM_KARAOKÉ
Source avec Zip Source avec une capture SMTPCLIENT ET SMTPMESS : COMPOSANTS POUR ENVOYER DES MAILS ...
Source avec Zip BASE64_CONVERTOR

 Sources de la même categorie

Source avec Zip BASE64/BASE64URL ENCODE/DECODE par f0xi
Source avec Zip AFFICHAGE DES INFODFS par fbalien
Source avec Zip Source avec une capture INTRA MESSENGER - DELPHI par keket
Source avec Zip CODAGE DÉCODAGE PDU 7BITS par AccessToYou
Source avec Zip Source avec une capture SIMPLEWEBBROWSER par cantador

 Sources en rapport avec celle ci

Source avec Zip CRÉE UN RÉPERTOIRE ET CRÉE CES TABLES PAR PROGRAMME par opgiat
Source avec Zip Source avec une capture CREATION D’UNE TABLE PARADOX PAR PROGRAMMATION par HAFTARIFOUAD
Source avec Zip Source avec une capture SERVEUR FFCTT AVEC BDD MYSQL par FFCAST
Source avec Zip Source avec une capture SMTPCLIENT ET SMTPMESS : COMPOSANTS POUR ENVOYER DES MAILS ... par Francky23012301
Source avec Zip CRÉATION UNE TABLE PARADOX PAR PROGRAMMATION par delyes

Commentaires et avis

Commentaire de Francky23012301 le 04/02/2007 16:44:40

Petites remarques importantes :

*A cause de l'utilisation des Try .. Except..Finally il ne faut pas lancer l'appli via l'IDE mais construire le projet puis le lancer via l'explorateur

*Réaliser avec Indy 9 : la version 10 diffère.

Commentaire de cirec le 04/02/2007 17:39:20 administrateur CS

Salut,

il y a eu du boulot de fait la dessous :)

j'ai regardé le code (rapidement) j'ai deux trois petites choses à dire :


en premier pourquoi Indy 9 et non 10 ?
il y a moins de bug dans la version 10 !

ensuite le reste se passe dans l'unité UIniFile :

Dans la fonction Read_Nb_Sections par exemple tu oublis de libérer l'objet IniFile
ceci dit tu pouvais te passer de la déclaration de l'objet IniFile Ex:

With TIniFile.Create(aIniFile) do Try
  ReadSections(List);
Finally
  Free;
End;

et pour finir avec UIniFile tu fais systématiquement ceci à la fin des méthodes :
If (WindowsVersion='95') or (WindowsVersion='98') then FileIni.UpdateFile;
je doute qu'une action de ce type puisse s'effectuer après libération de FileIni !!!

pour le reste je laisse le soin aux autres de tester ... n'ayant pas installé Indy 9 mais Indy 10 :)

@+
Cirec

Commentaire de Francky23012301 le 04/02/2007 19:28:02

Merci Cirec de m'avoir souligné ces oublis.

Pour répondre à ta question : Pourquoi Indy 9 : car c'est la version que j'avais. Je vais voir si ce n'est pas trop différent entre les 2 versions mais j'ai bien peur que si.

De plus je ne pourrais pas utiliser les directives de compilation en ce qui concerne Indy (il me semble).

Commentaire de Francky23012301 le 04/02/2007 20:36:33

A priori c'est jouable : je demande juste un peu de temps. En attendant vous pouvez télécharger les executables ici : http://membres.lycos.fr/francky23012301/Sources/Power_Smtp_Server.zip

Commentaire de hendrix le 07/02/2007 11:52:56

Moi j'ai indy 10 alors j'attends avec impatience les nouvelles sources :-) ! Bon courage à toi en attendant.

@+

Commentaire de MAURICIO le 07/02/2007 18:33:27

Salut Francky,

moi aussi je suis sur Indy10 ...
J' attends une mise à jour de ta part!

J' ai moi même fait un programme de mail fonctionnant comme MS Exchange+Outlook avec les compos Indy10. Il existe quelques bugs comme lorsque les mails viennent sous le format UTF8 etc ...

Je suis en train de faire une nouvelle version mais j' avoue que j' attends de voir si il y aura une nouvelle version de Indy.

A+

Commentaire de Francky23012301 le 08/02/2007 12:52:25

Salut,

Je vous demande de patienter jusqu'à dimanche et en plus du serveur SMTP avec Indy 10 vous aurez aussi le serveur POP. Je suis entrain de faire les modifs pour les 2.

A Mauricio : tes beugs viennent surement du TidMessage d'Indy. Tu devrais regarder le code et faire des modifs si ton application est par rapport à ta boite. Si mes souvenirs sont bons, le .pas correspondant est long mais pas inmangeable

Commentaire de MAURICIO le 08/02/2007 13:12:13

C' est tout à fait ça: le problème vient du TidMessage.
par contre, j' attends une mise à jour de leur part ...
A+

PS: j' attends ta nouvelle version !!!

Commentaire de Francky23012301 le 11/02/2007 00:30:19

Le code vient d'etre mis à jour (Version Indy 10).

Juste une petite remarque : d'après ce que j'ai pu voir, la version 10 est encore moins aboutit que la version 9.

@Mauricio : je me demande si le projet Indy n'est pas abandonné.

Commentaire de philnext le 12/02/2007 18:53:45

Je sais que ça ne fait pas avancer mais après avoir un peu utilisé Indy j'ai préféré utiliser ICS : http://www.overbyte.be/eng/products/ics.html
pour lequel le support est très réactif et le logiciel très stable.

Commentaire de Francky23012301 le 12/02/2007 23:46:49

Merci PhilNext:

En fait les fonctionnalités manquantes sont des options du protocole SMTP : beaucoup de serveurs ne les proposent pas.
Donc on peut s'en passer aussi.

En ce qui concerne l'appli, elle fonctionne parfaitement (2000 mails en moins de 30 sec sans faire exploser ma table paradox : pas mail hein héhé ?? lol).

Oui je connais les composant ICS mais ce n'est pas ma tasse de thé : pour moi faire de la programmation réseau, ca doit etre propre et élégant, ce qui n'est pas le cas avec ces composants. Les composants Indy ont comme principal défaut que la quantité a primé sur la qualité.

Merci

Commentaire de Francky23012301 le 18/02/2007 20:27:34

Ben non il n'y a pas niouf ^^.

Il est important de savoir que votre serveur SMTP admet un nom de domaine et que celui ne peut etre valide que s'il a été créé et référencé ce qui n'est pas le cas biensur. Il y a cependant une parade ;) : se connecter au serveur smtp pour envoyez le mail (Comme si vous vous connectiez au serveur smtp de free pour envoyer un message à une adresse free). Ainsi si vous utilisez un client SMTP style hotmail, wanadoo, aol, free ect ect  ca ne vas pas fonctionner.


Pour résumer : client smtp ou invite de commande vous devez vous connectez à Power Smtp Server pour envoyer le mail.

Si vous utilisez le client suivant (non testé) http://delphipage.free.fr/indyexemple2.html au niveau de host vous devez rentrer votre adresse IP.

Je peux pas etre plus précis

Un grand merci à Cirec au passage de m'avoir souligné que l'utilisation n'était pas si clair que cela.

Commentaire de Filipe35 le 21/02/2007 17:43:37

Mis en favoris en attendant une petite lecture :P

Commentaire de Francky23012301 le 22/02/2007 18:34:10

Tiens ca fait longtemps qu'on t'avais pas vu Philippe : ca fait plaisir.

Commentaire de Filipe35 le 23/02/2007 19:20:55

Yep, les études, les sorties, les soirées, les stages pro, etc ...

J'ai hate d'avoir un temps libre bien à moi pour lire ta source, surtout que je m'étais penché aussi sur un serveur SMTP il y a bien longtemps...

Et si j'ai le temps entre mes 3 projets de dev (^.^) je posterais ptet un tuto sur les reseaux ( vu que j'ai acquis pas mal de connaissances dans ce domaine ces derniers temps )

Bon codage ;)

++

Filipe

Commentaire de emmatopiak le 04/05/2007 18:56:00

Une moumoute ?

Sinon ca le mérite d'etre clean, sain le code.
Je ne donne pas de note, mais le fond y est.
Amen

Commentaire de Francky23012301 le 07/05/2007 15:19:43

Et ouais : je suis un chtit pépère et l'age commence à se faire ressentir.

je crois les tetons pour que je tienne encore la route

Commentaire de VPNVB le 25/07/2008 12:32:49

Salut Francky23012301
Merci pour Power SMTP Server!!!!!
pour moi il est tré functionaile
j'ai fait une petite modification:
j'ai migré les tables parradox (.DB) à Firebird
j'ai utilisé JVCL pour se connecté à firebird (pas clacic ou super, mais Embedded)
donk le serveur est inclue avec Power SMTP Server
parce qu'une base de donnée Firebird, SQLite ou ... c'est une base de donnée Centralisé (un ceul fichié)
merci!

 Ajouter un commentaire


Discussions en rapport avec ce code source dans le forum

comment connaitre le serveur smtp [ par xbr32 ] je voudrais savoir si il existe un moyen de connaitre le serveur smtp dun ordinateur quil utilise pour se connecter pour envoyer des messages (par exe Configurer un serveur mail [ par fersouce ] voila un bout de code qui permit de faire l'envoi d'un mail sous delphi: //Connexion au serveur smtp IdSMTP1.AuthenticationType:=atLogin; //Type d'aut Coder un serveur smtp [ par SuperSonic ] Bonjour, ma question est simple.J'aimerais programmer un serveur smtp en delphi et j'aimerais en savoir un peu sur le protocole, enfin sur ce qu'il y Lenteur paradox??? [ par jmp77 ] Hello,Voila mes softs utilisent des bases de données paradox. Ces bases sont posées sur un serveur distant. J'y accède par un réseau 100Mbit classique Creer un serveur smtp? [ par ewertheimer ] Bonjour j'aimerais creer un serveur smtp grace au composant IdSMTPServer mais je ne sais pas du tout comment faire. Meri d'avance de vos reponses. cacher liste des destinataires avec serveur SMTP [ par winocam ] Bonjour, j'aimerais savoir si il est possible de cacher la liste des destinataires lorsque l'on envois un message via un serveur SMTP. En effet j'aime Récursivité sur un FTP [ par slhuilli ] Bonjour,Je suis a la recherche d'une source permettant de lister de maniere récursive le contenu des fichiers sur un serveur FTP. Je précise que c'est paradox & asp [ par cedlensois ] Bonjour quelqu'un connait-il la chaine de connection (le driver) à des bases paradox pour l'asp & asp.net ?Cédric Tri sur Tables [ par apz ] Salut,Comment effectuer un tri sur les tables DBase et les Tables Paradox ?Ou se situe la difference ?(nous savons que les tables DBase ne sont pas in Host SMTP [ par winocam ] Est-il possible de récupérer automatiquement le host pour un serveur SMTP sous Windows XP ? Cela fonctionnait très bien sous Windows 95/98 en allant r


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

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