Page 1 sur 1

VMail

Publié : jeu. 21/août/2008 23:47
par venom
bonjour,

voila je sais que ce type de programme existe depuis bien longtemps mais bon.
Voici un programme qui sert a envoyer des mail de façon basic ( pas de pièce jointe ).

telecharger

et voici le code source :wink:

Code : Tout sélectionner

;- Window Constants
Enumeration
  #Window_0
EndEnumeration

;- Gadget Constants
Enumeration
  #Frame3D_0
  #Frame3D_1
  #Frame3D_2
  #Text_0
  #Text_1
  #Text_2
  #String_0
  #String_1
  #String_2
  #String_3
  #Combo_0
  #Button_0
EndEnumeration

  If OpenWindow(#Window_0, 216, 0, 600, 345, "VMail",  #PB_Window_SystemMenu | #PB_Window_MinimizeGadget | #PB_Window_TitleBar | #PB_Window_ScreenCentered )
    If CreateGadgetList(WindowID(#Window_0))
      Frame3DGadget(#Frame3D_0, 10, 10, 580, 260, "")
      Frame3DGadget(#Frame3D_1, 10, 280, 175, 50, "votre fournisseur")
      Frame3DGadget(#Frame3D_2, 415, 285, 175, 50, "Envoyer")
      TextGadget(#Text_0, 20, 35, 25, 20, "De :")
      TextGadget(#Text_1, 20, 65, 20, 20, "A:")
      TextGadget(#Text_2, 15, 95, 30, 20, "Objet:")
      StringGadget(#String_0, 50, 30, 530, 20, "")
      StringGadget(#String_1, 50, 60, 530, 20, "")
      StringGadget(#String_2, 50, 90, 530, 20, "")
      EditorGadget(#String_3, 20, 120, 560, 140)
      ComboBoxGadget(#Combo_0, 20, 300, 155, 200)
       AddGadgetItem(#Combo_0, 0, "alice" , 0)
       AddGadgetItem(#Combo_0, 1, "caramail" , 0)
       AddGadgetItem(#Combo_0, 2, "cegetel" , 0)
       AddGadgetItem(#Combo_0, 3, "club-internet" , 0)
       AddGadgetItem(#Combo_0, 4, "free" , 0)
       AddGadgetItem(#Combo_0, 5, "neuf" , 0)
       AddGadgetItem(#Combo_0, 6, "noos" , 0)
       AddGadgetItem(#Combo_0, 7, "orange" , 0)
       AddGadgetItem(#Combo_0, 8, "tele2" , 0)
       AddGadgetItem(#Combo_0, 9, "tiscali" , 0)
       AddGadgetItem(#Combo_0, 10, "wanadoo" , 0)
        SetGadgetState(#Combo_0, 0)
      ButtonGadget(#Button_0, 425, 305, 155, 20, "Envoyer")
      
    EndIf
  EndIf

  Repeat
   EventID = WaitWindowEvent()
    If EventID = #PB_Event_Gadget 
      Select EventGadget()
      
       Case #Button_0
        fournisseur$ = GetGadgetItemText(#Combo_0, GetGadgetState(#Combo_0), 0); on renvoie le fournisseur
        mailserver.s="smtp."+fournisseur$+".fr"
        MySMTPPort.l = 25; on ouvre le port 25 pour le smtp
        If PureSMTP_OpenSMTPConnection(mailserver, MySMTPPort) = #PureSMTP_Ok
         mailto.s=GetGadgetText(#String_1); on renvoie le texte dans le string 1
         mailfrom.s=GetGadgetText(#String_0); on renvoie le texte dans le string 0
         subject.s=GetGadgetText(#String_2); on renvoie le texte dans le string 2
         texte.s=GetGadgetText(#String_3); on renvoie le texte dans le string 3
          res = PureSMTP_SendMail(mailto, mailfrom, subject, texte); et on rassemble tout pour envoyer le mail merci a gnozal pour sa lib
        EndIf 
        If res = 1; si le mail a bien etait envoyer on renvoie un message pour dire que c'est OK
         MessageRequester("Envoie","Le mail a etait envoyer avec succées a : "+GetGadgetText(#String_1),0)
          End 
        ElseIf res = 0; si le mail a pas etait envoyer on renvoie un message pour dire qu'une erreur c'est produite
         MessageRequester("Envoie","Erreur, le mail n'a pas était envoyer a : "+GetGadgetText(#String_1),#MB_ICONERROR)
        EndIf 

      EndSelect
    EndIf
  Until EventID = #PB_Event_CloseWindow
attention il faut la lib de gnozal : ici pour faire fonctionner le code.



@++

Publié : ven. 22/août/2008 9:35
par Ar-S
Merci pour ce petit code, mais tu sais que depuis la 4.20 PB prend en charge la gestion des mails ?
Moi j'aimerai trouver un code permettant de gérer l'authentification pour envoyer des mails aussi aux possesseurs de Gmail, Hotmail et autre le necessitant.

En tout cas merci pour le partage.

Publié : ven. 22/août/2008 10:11
par venom
mais tu sais que depuis la 4.20 PB prend en charge la gestion des mails
oui je sais :wink: mais bon ... je suis bien avec ma 4.10

EDIT

bon aller version 4.20 sans lib :wink:

Code : Tout sélectionner

;- Window Constants
Enumeration
  #Window_0
EndEnumeration

;- Gadget Constants
Enumeration
  #Frame3D_0
  #Frame3D_1
  #Frame3D_2
  #Text_0
  #Text_1
  #Text_2
  #String_0
  #String_1
  #String_2
  #String_3
  #Combo_0
  #Button_0
EndEnumeration
InitNetwork()

  If OpenWindow(#Window_0, 216, 0, 600, 345, "VMail",  #PB_Window_SystemMenu | #PB_Window_MinimizeGadget | #PB_Window_TitleBar | #PB_Window_ScreenCentered )
    If CreateGadgetList(WindowID(#Window_0))
      Frame3DGadget(#Frame3D_0, 10, 10, 580, 260, "")
      Frame3DGadget(#Frame3D_1, 10, 280, 175, 50, "votre fournisseur")
      Frame3DGadget(#Frame3D_2, 415, 285, 175, 50, "Envoyer")
      TextGadget(#Text_0, 20, 35, 25, 20, "De :")
      TextGadget(#Text_1, 20, 65, 20, 20, "A:")
      TextGadget(#Text_2, 15, 95, 30, 20, "Objet:")
      StringGadget(#String_0, 50, 30, 530, 20, "")
      StringGadget(#String_1, 50, 60, 530, 20, "")
      StringGadget(#String_2, 50, 90, 530, 20, "")
      EditorGadget(#String_3, 20, 120, 560, 140)
      ComboBoxGadget(#Combo_0, 20, 300, 155, 200)
       AddGadgetItem(#Combo_0, 0, "alice" , 0)
       AddGadgetItem(#Combo_0, 1, "caramail" , 0)
       AddGadgetItem(#Combo_0, 2, "cegetel" , 0)
       AddGadgetItem(#Combo_0, 3, "club-internet" , 0)
       AddGadgetItem(#Combo_0, 4, "free" , 0)
       AddGadgetItem(#Combo_0, 5, "neuf" , 0)
       AddGadgetItem(#Combo_0, 6, "noos" , 0)
       AddGadgetItem(#Combo_0, 7, "orange" , 0)
       AddGadgetItem(#Combo_0, 8, "tele2" , 0)
       AddGadgetItem(#Combo_0, 9, "tiscali" , 0)
       AddGadgetItem(#Combo_0, 10, "wanadoo" , 0)
        SetGadgetState(#Combo_0, 0)
      ButtonGadget(#Button_0, 425, 305, 155, 20, "Envoyer")
     
    EndIf
  EndIf

  Repeat
   EventID = WaitWindowEvent()
    If EventID = #PB_Event_Gadget
      Select EventGadget()
     
       Case #Button_0
        fournisseur$ = GetGadgetItemText(#Combo_0, GetGadgetState(#Combo_0), 0); on renvoie le fournisseur
        mailserver.s="smtp."+fournisseur$+".fr"
        mailto.s=GetGadgetText(#String_1); on renvoie le texte dans le string 1
        mailfrom.s=GetGadgetText(#String_0); on renvoie le texte dans le string 0
        subject.s=GetGadgetText(#String_2); on renvoie le texte dans le string 2
        texte.s=GetGadgetText(#String_3); on renvoie le texte dans le string 3
       If CreateMail(0, mailfrom, subject)
        SetMailBody(0, texte)
        AddMailRecipient(0, mailto, #PB_Mail_To)
        res = SendMail(0, mailserver, 25, 1)
        If res = 1; si le mail a bien etait envoyer on renvoie un message pour dire que c'est OK
         MessageRequester("Envoie","Le mail a etait envoyer avec succées a : "+GetGadgetText(#String_1),0)
          End
        ElseIf res = 0; si le mail a pas etait envoyer on renvoie un message pour dire qu'une erreur c'est produite
         MessageRequester("Envoie","Erreur, le mail n'a pas était envoyer a : "+GetGadgetText(#String_1),#MB_ICONERROR)
          End
        EndIf
       EndIf 

      EndSelect
    EndIf
  Until EventID = #PB_Event_CloseWindow


@++