VMAIL X - CLIENT SMTP POUR L'ENVOI DE MAIL + EXE/ACTIVEX !
cs_seboss
Messages postés39Date d'inscriptiondimanche 13 janvier 2002StatutMembreDernière intervention26 avril 2006
-
25 mai 2002 à 13:32
anice2
Messages postés6Date d'inscriptionmercredi 7 mai 2003StatutMembreDernière intervention 9 février 2008
-
18 avril 2007 à 12:17
Cette discussion concerne un article du site. Pour la consulter dans son contexte d'origine, cliquez sur le lien ci-dessous.
anice2
Messages postés6Date d'inscriptionmercredi 7 mai 2003StatutMembreDernière intervention 9 février 2008 18 avril 2007 à 12:17
Vraiment trop bien la source mais il me reste un petit soucis : je voulais mettre un login et pass pour le serveur smtp et j'ai pas pu le faire !! si c possible d'ajouter cette option et qu'on puisse ce connecté avec son propre serveur smtp ca va etre sympa .
Merci d'avance et bon courage
cs_JLN
Messages postés371Date d'inscriptionsamedi 1 juin 2002StatutMembreDernière intervention17 juin 2013 15 juil. 2005 à 07:55
Super et je l'utilise depuis quelques temps, si une nouvelle version est prête je te suggere de la placer ici tu auras toujours autant de fan pour ce type de developpement. Je met 10 parce qu'il n'y a pas plus !
Bonne prog
JLN
cs_pledoux
Messages postés147Date d'inscriptionmardi 12 octobre 2004StatutMembreDernière intervention 6 mars 2007 12 janv. 2005 à 09:37
Vraiment bien mais, pour être vraiment complet, il manque deux choses :
1 - le principe de transparence (cas d'une ligne avec uniquement un point) ex :
debut message
.
fin message
dans ce cas la fin du message n'est pas transmise. Il faut que tu double le point (toute séquence <CRLF>.<CRLF> doit être remplacée par <CRLF>..<CRLF>. Le serveur SMTP interprête pour supprimer le second point.
2 - La gestion du destinataire en copie cachée n'est pas complétement implémentée. Comme pour "to :" et "cc :" il faut envoyer "bcc :" dans la section data
syllef
Messages postés3Date d'inscriptionjeudi 17 juin 2004StatutMembreDernière intervention24 novembre 2004 6 oct. 2004 à 10:03
Le composant est très bien
Mais, je n'arrive pas à joindre des fichiers
Déjà, il y a une erreur dans le script d'utilisation du composant :
.AttacherFichier.Add , "C:\autoexec.bat", "Fichier
Le premier paramètre n'est pas optionnel.
Lorsque je joins un fichier au mail, il est envoyé sans le fichier...
Pouvez vous m'aider en me donnant un exemple d'un mail avec fichier joint?
Merci
cs_jbel
Messages postés5Date d'inscriptionmercredi 30 avril 2003StatutMembreDernière intervention11 avril 2006 9 déc. 2003 à 15:27
Pas mal ce prog... même très bien je dois dire! C'est mieux que ce que je cherchais.
J'ai juste un petite question quand même:
en utilisant un serveur "Microsoft Exchange Server" j'arrive à envoyer des mails en interne en mettant le nom de mon serveur, mais comment faire pour envoyer des mails en externe???
Merci ++
fofodavid
Messages postés47Date d'inscriptionmardi 18 mars 2003StatutMembreDernière intervention29 août 2004 19 oct. 2003 à 12:43
ouiias bof bof
cs_MarcoPaulo
Messages postés3Date d'inscriptionvendredi 5 juillet 2002StatutMembreDernière intervention18 décembre 2005 19 juil. 2002 à 14:28
Ta source m'a ete tres utile pour construire mon redirecteur de fax. Merci beaucoup.
Si cela t'interese, j'ai modifie 2 choses.
1) un coup de pop quand je me fais jeter par 500(lock by pop)
2) le system d'encodage
Public Function b64EncodeFile(strFilePath As String) As String
On Error GoTo ErrEdit
Dim lFileSize
Dim nbligne
Dim temp As String
Dim bStr As String * 1
Dim rStr As String * 3
Dim inFile As Long
Dim nPos As Long
Dim tPos As Long
Dim pour As String
b64EncodeFile = ""
inFile = FreeFile
rStr = ""
bStr = 0
nPos = 0
tPos = 0
If Dir(strFilePath) = "" Then GoTo ErrEdit
lFileSize = FileLen(strFilePath)
nbligne = Int(lFileSize / 3)
Open strFilePath For Binary Access Read As inFile
Do While nPos < nbligne
tPos = tPos + 1
nPos = nPos + 1
DoEvents
Get #inFile, , rStr
temp = temp & base64_enc_buffer(rStr)
If Len(temp) = 76 Then
b64EncodeFile = b64EncodeFile & temp & vbCrLf
temp = ""
End If
rStr = ""
Loop
If Len(temp) > 0 Then
b64EncodeFile = b64EncodeFile & temp
End If
If lFileSize - (nbligne * 3) > 0 Then
temp = ""
For tPos = 1 To lFileSize - (nbligne * 3)
Get #inFile, , bStr
temp = temp & bStr
Next
b64EncodeFile = b64EncodeFile & base64_enc_buffer(temp) & vbCrLf
End If
Close inFile
b64EncodeFile = b64EncodeFile & vbCrLf
Exit Function
ErrEdit:
b64EncodeFile = ""
Exit Function
End Function
Private Function base64_enc_buffer(str As String) As String
Dim r1 As String
Dim r2 As String
Dim r3 As String
Dim r4 As String
base64_enc_buffer = r1 & r2 & r3 & r4
End Function
Private Function base64(num As Byte) As String
If (num < 65 And num > -1) Then
base64 = Mid(base64_alphabet, num + 1, 1)
Else
base64 = ""
End If
End Function
cs_Jack
Messages postés14006Date d'inscriptionsamedi 29 décembre 2001StatutModérateurDernière intervention28 août 201579 18 juil. 2002 à 19:52
Tu rigoles, c'est excellent :
- Très belle présentation
- Des méthodes sures (vb5 d'accord)
Pour le faire fonctionner, il faut juste aller dans le fichier INI et modifier le serveur par le vôtre (pop.free.fr par exemple) au lieu de l'adresse IP bizarre (10.1.0.1) qu'il met.
Si tu allais farfouinner dans la base de registre, tu trouverais tout ce genre de renseignements qui ne s'initialisent pas ici.
Bravo, bravo, ça me plais beaucoup (10)
cs_seboss
Messages postés39Date d'inscriptiondimanche 13 janvier 2002StatutMembreDernière intervention26 avril 2006 25 mai 2002 à 13:32
18 avril 2007 à 12:17
Merci d'avance et bon courage
15 juil. 2005 à 07:55
Bonne prog
JLN
12 janv. 2005 à 09:37
1 - le principe de transparence (cas d'une ligne avec uniquement un point) ex :
debut message
.
fin message
dans ce cas la fin du message n'est pas transmise. Il faut que tu double le point (toute séquence <CRLF>.<CRLF> doit être remplacée par <CRLF>..<CRLF>. Le serveur SMTP interprête pour supprimer le second point.
2 - La gestion du destinataire en copie cachée n'est pas complétement implémentée. Comme pour "to :" et "cc :" il faut envoyer "bcc :" dans la section data
6 oct. 2004 à 10:03
Mais, je n'arrive pas à joindre des fichiers
Déjà, il y a une erreur dans le script d'utilisation du composant :
.AttacherFichier.Add , "C:\autoexec.bat", "Fichier
Le premier paramètre n'est pas optionnel.
Lorsque je joins un fichier au mail, il est envoyé sans le fichier...
Pouvez vous m'aider en me donnant un exemple d'un mail avec fichier joint?
Merci
9 déc. 2003 à 15:27
J'ai juste un petite question quand même:
en utilisant un serveur "Microsoft Exchange Server" j'arrive à envoyer des mails en interne en mettant le nom de mon serveur, mais comment faire pour envoyer des mails en externe???
Merci ++
19 oct. 2003 à 12:43
19 juil. 2002 à 14:28
Si cela t'interese, j'ai modifie 2 choses.
1) un coup de pop quand je me fais jeter par 500(lock by pop)
2) le system d'encodage
Private Const base64_alphabet = "ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/="
Public Function b64EncodeFile(strFilePath As String) As String
On Error GoTo ErrEdit
Dim lFileSize
Dim nbligne
Dim temp As String
Dim bStr As String * 1
Dim rStr As String * 3
Dim inFile As Long
Dim nPos As Long
Dim tPos As Long
Dim pour As String
b64EncodeFile = ""
inFile = FreeFile
rStr = ""
bStr = 0
nPos = 0
tPos = 0
If Dir(strFilePath) = "" Then GoTo ErrEdit
lFileSize = FileLen(strFilePath)
nbligne = Int(lFileSize / 3)
Open strFilePath For Binary Access Read As inFile
Do While nPos < nbligne
tPos = tPos + 1
nPos = nPos + 1
DoEvents
Get #inFile, , rStr
temp = temp & base64_enc_buffer(rStr)
If Len(temp) = 76 Then
b64EncodeFile = b64EncodeFile & temp & vbCrLf
temp = ""
End If
rStr = ""
Loop
If Len(temp) > 0 Then
b64EncodeFile = b64EncodeFile & temp
End If
If lFileSize - (nbligne * 3) > 0 Then
temp = ""
For tPos = 1 To lFileSize - (nbligne * 3)
Get #inFile, , bStr
temp = temp & bStr
Next
b64EncodeFile = b64EncodeFile & base64_enc_buffer(temp) & vbCrLf
End If
Close inFile
b64EncodeFile = b64EncodeFile & vbCrLf
Exit Function
ErrEdit:
b64EncodeFile = ""
Exit Function
End Function
Private Function base64_enc_buffer(str As String) As String
Dim r1 As String
Dim r2 As String
Dim r3 As String
Dim r4 As String
Select Case Len(str)
Case 0
r1 = ""
r2 = ""
r3 = ""
r4 = ""
Case 1
r1 = base64(Int((Asc(Mid(str, 1, 1))) / 4))
r2 = base64((Asc(Mid(str, 1, 1)) Mod 4) * 16)
r3 = base64(64)
r4 = base64(64)
Case 2
r1 = base64(Int((Asc(Mid(str, 1, 1))) / 4))
r2 = base64((Int((Asc(Mid(str, 2, 1))) / 16)) + ((Asc(Mid(str, 1, 1)) Mod 4) * 16))
r3 = base64((Asc(Mid(str, 2, 1)) Mod 16) * 4)
r4 = base64(64)
Case 3
r1 = base64(Int((Asc(Mid(str, 1, 1))) / 4))
r2 = base64((Int((Asc(Mid(str, 2, 1))) / 16)) + ((Asc(Mid(str, 1, 1)) Mod 4) * 16))
r3 = base64((Int((Asc(Mid(str, 3, 1))) / 64)) + ((Asc(Mid(str, 2, 1)) Mod 16) * 4))
r4 = base64(Asc(Mid(str, 3, 1)) Mod 64)
End Select
base64_enc_buffer = r1 & r2 & r3 & r4
End Function
Private Function base64(num As Byte) As String
If (num < 65 And num > -1) Then
base64 = Mid(base64_alphabet, num + 1, 1)
Else
base64 = ""
End If
End Function
18 juil. 2002 à 19:52
- Très belle présentation
- Des méthodes sures (vb5 d'accord)
Pour le faire fonctionner, il faut juste aller dans le fichier INI et modifier le serveur par le vôtre (pop.free.fr par exemple) au lieu de l'adresse IP bizarre (10.1.0.1) qu'il met.
Si tu allais farfouinner dans la base de registre, tu trouverais tout ce genre de renseignements qui ne s'initialisent pas ici.
Bravo, bravo, ça me plais beaucoup (10)
25 mai 2002 à 13:32