Hola Isaías gracias por la respuesta ya descargue el dll y lo copie donde me indica las instrucciones, bueno luego copie este codigo al Query Analyzer (Analazador de Consultas) para q me cree el procedimiento.. pero la coloque dentro de la base de datos q yo utilizo osea no al base de datos master por q no tengo privilegios para usar esa base de datos cambie la parte de codigo que dice
exec @rc = master.dbo.xp_smtp_sendmail
por
exec @rc = MiBasedeDatos.dbo.xp_smtp_sendmail
y me manda el sgte mensaje:
Cannot add rows to sysdepends for the current stored procedure because it depends on the missing object 'master.dbo.xp_smtp_sendmail'. The stored procedure will still be created.
Que significa esto??
Este es el codigo para crear el procedimiento:
-- drop original xp_sendmail extended stored procedure, if exists
--
if (not object_id('dbo.xp_sendmail') is null) and (ObjectProperty(object_id('dbo.xp_sendmail'), N'IsExtendedProc') = 1)
exec sp_dropextendedproc 'dbo.xp_sendmail'
go
-- drop replacing xp_sendmail stored procedure, if exists
--
if (not object_id('dbo.xp_sendmail') is null) and (ObjectProperty(object_id('dbo.xp_sendmail'), N'IsProcedure') = 1)
drop proc dbo.xp_sendmail
go
-- create replacing xp_sendmail procedure
--
create proc dbo.xp_sendmail
@recipients varchar(8000) = NULL,
@message varchar(8000) = NULL,
@query varchar(8000) = NULL, -- parameter will not be used
@attachments varchar(8000) = NULL,
@copy_recipients varchar(8000) = NULL,
@blind_copy_recipients varchar(8000) = NULL,
@subject varchar(8000) = 'SQL Server Message',
@type varchar(8000) = NULL,
@attach_results varchar(8000) = NULL, -- parameter will not be used
@no_output varchar(8000) = 'FALSE',-- parameter will not be used
@no_header varchar(8000) = 'FALSE',-- parameter will not be used
@width int = 80, -- parameter will not be used
@separator varchar(8000) = NULL, -- parameter will not be used
@echo_error varchar(8000) = NULL, -- parameter will not be used
@set_user varchar(8000) = NULL, -- parameter will not be used
@dbuse varchar(8000) = NULL -- parameter will not be used
as
declare @rc int
exec @rc = master.dbo.xp_smtp_sendmail
@FROM = N'
[email protected]', -- change value to suite your own needs
@FROM_NAME = N'xp_sendmail procedure', -- change value to suite your own needs
@TO = @recipients,
@replyto = @recipients, -- change value to suite your own needs
@CC = @copy_recipients,
@BCC = @blind_copy_recipients,
@priority = N'normal', -- change value to suite your own needs
@subject = @subject,
@message = @message,
-- @messagefile = @messagefile, -- no equivalent parameter value available
@type = N'text/plain', -- change value to suite your own needs
-- @attachment = @attachment, -- no equivalent parameter value available
@attachments = @attachments,
@server = N'smarthost', -- change value to suite your own needs, like mail.domain.com
-- @codepage = @codepage,
@timeout = 10000 -- change value to suite your own needs
if (@@error <> 0 or @rc <> 0)
raiserror(N'Sending message using xp_sendmail failed', 16, 1)
return @rc
go