Catalog · How the catalog works
evil-mail
Delphi 7 bulk email sender with SMTP support. Manages recipient lists, attachments, HTML message preview, SSL/TLS encryption, and multi-send queue. Educational security tool. Discontinued 2013.
- ★ 6 on GitHub
Anyone may press Interesting, signed in or not. It helps others find this project.
README
Evil Mail
A bulk email sending utility built with Object Pascal in Borland Delphi 7, featuring SMTP authentication with SSL/TLS support, HTML message composition with live preview, file attachments, and recipient list management. This project was developed for educational purposes and is no longer actively maintained (discontinued 2013-12-05).
Features
- SMTP Authentication with SSL/TLS -- connects to any SMTP server with configurable host, port, username, and password using the Indy (
TIdSMTP) component with OpenSSL support viaTIdSSLIOHandlerSocket - Bulk Email Delivery -- iterates through a recipient list and sends individual messages to each address, with a progress bar and status panel tracking delivery progress (e.g., "3 | 10 Enviando...")
- HTML Message Body -- composes email bodies in
text/HTMLcontent type with a live preview window that renders the HTML using an embeddedTWebBrowser(Internet Explorer) control - File Attachments -- supports attaching
.zipand.rarfiles viaTIdAttachment, with a warning that HTML formatting is not supported alongside attachments - Recipient List Management -- add, modify, remove, and clear email addresses from a
TListBox; import recipient lists from text files and export them back to disk - Sender Identity Spoofing -- configurable "From" address and display name fields, allowing the sender identity to differ from the authenticated SMTP account
- Internet Connectivity Check -- verifies active internet connection (modem, LAN, or proxy) via
InternetGetConnectedStatefromWinInetbefore attempting to send - Embedded OpenSSL DLLs -- on first launch, extracts
libeay32.dllandssleay32.dllfrom embedded resources (Dlls.res) intoC:\Windows\System32\to enable SSL/TLS connections without requiring a separate OpenSSL installation - XP Visual Styles -- applies Windows XP themed controls via
TXPManifest - Anti-Freeze UI -- uses
TIdAntiFreezeto keep the UI responsive during network operations
Technologies
| Component | Details |
|---|---|
| Language | Object Pascal (Delphi 7) |
| IDE | Borland Delphi 7 |
| SMTP Library | Indy 9 (TIdSMTP, TIdMessage, TIdAttachment, TIdSSLIOHandlerSocket) |
| SSL | OpenSSL (libeay32.dll, ssleay32.dll) embedded as Win32 resources |
| HTML Preview | TWebBrowser (OLE/COM Internet Explorer control via SHDocVw) |
| Connectivity | WinInet API (InternetGetConnectedState) |
Project Structure
evil-mail/
????????? EM.dpr # Delphi project file - application entry point, creates Form1 and Form2
????????? EM.res # Compiled application resources (icon)
????????? UEM.pas # Main form unit - SMTP configuration, email composition, sending logic, recipient list
????????? UEM.dfm # Main form layout - GroupBoxes, Edit fields, Buttons, ListBox, StatusBar, ProgressBar
????????? UEMP.pas # HTML preview form unit - loads Preview.HTML into embedded WebBrowser
????????? UEMP.dfm # Preview form layout - fullscreen WebBrowser component
????????? Clear.bat # Cleanup script - removes Delphi temporary files (*.dcu, *.dsk, *.cfg, etc.)
├── Imgs/
│ └── Icon.ico # Application icon
├── Resources/
│ ├── Dlls.res # Compiled resource file containing embedded OpenSSL DLLs
│ ├── libeay32.dll # OpenSSL cryptographic library (source for embedding)
│ └── ssleay32.dll # OpenSSL SSL/TLS library (source for embedding)
├── LICENSE # GNU General Public License v3.0
└── README.mdArchitecture
The application consists of two forms:
- Form1 (
TForm1inUEM.pas) -- the main window with three sections:- Settings Group ("Definicoes"): SMTP server host, port, username, password (with show/hide toggle)
- Message Group ("Mensagem"): sender email, sender display name, subject line (defaults to "Sem Assunto"), and a memo field for the HTML message body
- Recipient List Group ("Lista"): a
TListBoxwith right-click context menu for add/modify/remove/clear/import/export operations
- Form2 (
TForm2inUEMP.pas) -- the HTML preview window; the main form saves the memo contents toPreview.HTMLin the working directory, and Form2 navigates the embeddedTWebBrowserto that file
Email Sending Flow
CheckConexao()verifies internet connectivity viaWinInet- For each recipient in
lstdestinos, the code configuresTIdMessagewith the HTML body, sender info, and subject TIdSMTPauthenticates (atLogin) and connects to the configured host/port- The message is sent and the connection is disconnected per recipient
- Progress is tracked in the
TStatusBarandTProgressBar
Installation
- Open
EM.dprin Borland Delphi 7 (or a compatible IDE such as Embarcadero RAD Studio) - Ensure Indy 9 components are installed in the IDE
- Compile the project (Ctrl+F9) or build and run (F9)
Usage
- Launch the compiled
EM.exe - Enter the SMTP server details (host, port, username, password)
- Set the sender email address and display name
- Compose the message body (supports HTML markup)
- Add recipients manually or import a text file (one email per line)
- Click Enviar Mensagem to send to all recipients
- Use Visualização HTML to preview the message rendering
Contributing
This project is no longer actively maintained. See CONTRIBUTING.md for historical build information.
License
This project is licensed under the GNU General Public License v3.0.

