Frequently Asked Questions

Q: Running xp_SMTPSendMail80 reports "Unable to load xp_SMTPSendMail80 or a dll that it references"
A: This is normally caused by one of three things

  • The Microsoft C++ 2008 Redistributable Package needs to be installed. See the instructions here
  • The Windows SQL Server account does not have execute rights on xp_SMTPSendMail80.
  • The extended proc has been created with the incorrect directory path. Use sp_dropextendedproc 'xp_SMTPSendMail80' to drop the extended proc and reinstall using the correct path.

Q: The server has multiple network cards and xp_SMTPSendMail80 cannot connect to the SMTP server.
A: The dll can be forced to use one network card in a multihomed machine. By default it will use the card at the top of the bindings. To choose another card a registry key must be added HKLM\Software\SQLSMTPInterface\BindIP as a string. This key should be set to the IP address of the required network card in dot format such as

Q: Executing xp_SMTPSendMail80 returns result "7  Error accessing the registry".
A: The service account that SQL Server runs under needs read/write access to the registry key HKLM\Software\SQLSMTPInterface to run.