FiveWin viene con la clase TSMTP peeeero, como no es de extrañar en FiveWin, la clase esta incompleta y no soporta correo con autenticación ni soporta archivos anexos, asi que descartemos la clase nativa de FiveWin.
Hay varias opciones posibles:
1) usar BLAT, es un programa externo que se configura facilmente mediante un archivo de texto, es gratis y funciona muy bien tanto a 16 como a 32 bits. En su web (www.blat.net) encuentras ejemplo detallados, un simple WINEXEC BLAT <archivo> hace lo que necesitas.
2) A 32 bits con xHarbour, puedes usar el objeto nativo que viene incluido para envio de correo, te pongo un ejemplo aqui, pero te recomiendo que revises la documentacion en linea de xHarbour (http://www.xharbour.com/xhdn/referenceguide/) para mas información sobre la autenticacion.
PROCEDURE Main
LOCAL oSmtp, oEMail
LOCAL cSmtpUrl
LOCAL cSubject, cFrom, cTo, cBody, cFile
// preparing data for eMail
cSmtpUrl := "smtp://mailaccount:
[email protected]" <--- MIRA ESTO
cSubject := "Testing eMail"
cFrom := "
[email protected]"
cTo := "
[email protected]"
cFile := "File_Attachment.zip"
cBody := "This is a test mail sent at: " + DtoC(date()) + " " + Time()
// preparing eMail object
oEMail := TIpMail():new()
oEMail:setHeader( cSubject, cFrom, cTo )
oEMail:setBody( cBody )
oEMail:attachFile( cFile )
// preparing SMTP object
oSmtp := TIpClientSmtp():new( cSmtpUrl )
// sending data via internet connection
IF oSmtp:open()
oSmtp:sendMail( oEMail )
oSmtp:close()
? "Mail sent"
ELSE
? "Error:", oSmtp:lastErrorMessage()
ENDIF
RETURN
Esto solo esta disponible a 32 bits en xHarbour, Harbour no lo tiene.
3) Puedes usar el objeto Funcky SMTP (www.funcky.com), personalmente yo utilizo este metodo con xHarbour y funciona muy bien, ojo, solo funciona a 32 bits, con xHarbour, porque Harbour no tiene soporte a objetos COM.
Smtp := CreateObject("FUNCkySMTP")
WITH OBJECT Smtp
:Server = "UserName:
[email protected]"
:Timeout = 20000
:FromName = "Barbie"
:FromAddress = "
[email protected]"
:Subject = "Party, my place"
:Message = "Hey guys! I had a really RAD time making " + _
"the movie and I miss you guys. I am throwing "+ _
"a party this weekend and you are all invited. " + _
"Dont dis me, see ya soon... mua!"
:ToName = "Juan Perez"
:ToAddress =
[email protected] If ( :Send())
Str = "Mail successfull sent to " + :ToName
End If
END