Skip to content
⌘ NSIS Forum Archive

EMail plugin for NSIS

32 posts

apollo51#

EMail plugin for NSIS

I could write a SMTP Relay plugin for NSIS in Delphi 7...
This way you won't need a SMTP server to send the email.

Anyone interested?
flizebogen#
Sounds interessing, but i guess there is a big chance that it might be abused for spam.

But i would be interested in a plugin that en/decrypts a given value. (For secure storing of passwords)
apollo51#
Well, here's my first version.

I will work on the format Name<username@host.com> soon, you can use e-mail addresses only now.
Joel#
Sounds a great idea 👍

I tested in my XP home and compiled the example. I got this MessageBox Could not send e-mail to author! apollo51@home.nl

Also change the values with my custom and the same. I think the problem might be that the DLL needs some runtime pre-installed, since is from Delphi 7. I check it with my favorite resource hacker.
According the dependecy checker, we need a some of *.bpl to run the DLL:
indy70.bpl
rtl70.bpl
Must be Delphi runtime
Vytautas#
I thinks its just a compiler setting, cos I use Delphi 7 and my programs do not depend on any run-time libraries.

Vytautas
apollo51#
Compiled with rtl and indy runtime packages but I think it won't run again
apollo51#
Originally posted by Vytautas
I thinks its just a compiler setting, cos I use Delphi 7 and my programs do not depend on any run-time libraries.

Vytautas
Yes, it is but when I use Delphi's default package setting the dll is 100kb+ and that's too big...
apollo51#edited
The latest version can be downloaded at: http://www.apollo51.demon.nl/nsis/SMTPRelay.zip

Because it's larger than 100kb 🙁

But it supports sender name now by using the < > characters around the email address.
fabiochelly#
Because it's larger than 100kb 🙁
Try to use the indy components without using forms.
Or use the ICS components : they propose a define to use them without using forms.
Try also to replace any SysUtils functions by your own ones.
atsuk#
i don't understand.it works with some e-mails, but doesn't with some others.that's weird. are there some caracters, that are not supported i.e. " _ " in recipient e-mail?
am i the only one, who has this problem?
apollo51#
I don't know, only tested it with some stupid subjects and bodies

All I know is that not all domains are supported, @hotmail.com works fine, and @home.nl too
apollo51#
I really don't know why some recipients can't be reached... maybe some servers block smtp relay clients?
atsuk#
but is there way to make sure, that mail really is delivered to recipient? i mean at the moment nsis will not alert about errors, but mail is not delivered
apollo51#
I don't know (yet) how to track that, because the mail is sent to the domain of the recipient
apollo51#
Originally posted by fabiochelly
Try to use the indy components without using forms.
Or use the ICS components : they propose a define to use them without using forms.
Try also to replace any SysUtils functions by your own ones.
The DLL does not use forms, and how much KB would I save by removing the SysUtils functions?
mfacer#
I'd also like to try the 100kb code....

...has anyone got this? or a similar send email plugin??

cheers.
mindwarp#
Originally posted by apollo51
Compiled with rtl and indy runtime packages but I think it won't run again
Can anyone how tell me how to get this to work ?

Invalid command: SMTPRelay::Send
Error in script "D:\DesktopNT\smtprelay\MailApollo51.nsi" on line 8 -- aborting creation process

TIA
sgiusto#
Blat is a program used to send email directly to a SMTP server. Is available as exe, dll or in source code.
It has been removed from public domain because it has often been used to write spam software. I use it to automatically send emails from my programs. It supports multiple recipients, attachments, SMTP authentication and so on. It can also produce Debug information to check if email has been successfully sent.
If of interest I could pack it in a nsis plugin