/*
'******多个系统调用此存储过程
--CDS            
--DOCC           
--Rohs   
--ISO            
--Instrument Management System
--**********by Mouse
--**********2010-06-19
*/--(cSubject, sBody, Mail_To, Mail_cc, MailFrom, Fromname) 
--EXEC proc ALL_Email 'test','This is Email','[email protected]','[email protected]','[email protected]', 'CDS Auoto Mail Send'CREATE  PROCEDURE ALL_Email  @cSubject varchar(50),
@sBody varchar(5000),
@Mail_To varchar(500),
@Mail_cc varchar(500),
@MailFrom varchar(80),
@Fromname varchar(50)AS
DECLARE @intRetCode INT
DECLARE @strErr1  VARCHAR(255)
DECLARE @strErr2           VARCHAR(255)
DECLARE @Object  INTdeclare @outStr varchar(255)
/* 創建實例 */
EXECUTE @intRetCode = sp_OACreate 'ALL_Email.ISO',@Object OUTPUT--select @intRetCodeIF @intRetCode <> 0
BEGIN
/* 調用實例失敗 */
EXECUTE sp_OAgetErrorInfo @Object,@strErr1 OUT,@strErr2 OUT
PRINT '創建實例失敗,故障原因為:' + @strErr1 + ' ' + @strErr2
RETURN 
END /* 創建成功,開始調用 */
EXECUTE @intRetCode = sp_OAMethod @Object,'Send_Email',@outStr OUT,@cSubject, @sBody, @Mail_To, @Mail_cc, @MailFrom, @Fromname IF @intRetCode <> 0
BEGIN
/* 調用方法出錯 */
EXECUTE sp_OAGetErrorInfo @Object,@strErr1 OUT,@strErr2 OUT
PRINT '調用方法失敗,故障原因是:' + @strErr1 + ' ' + @strErr2
EXECUTE sp_OADestroy @Object
RETURN
END
ELSE EXECUTE sp_OADestroy @Object
GO

解决方案 »

  1.   

    Ole Automation Procedures 服务器选项启用了吗?sp_configure 'show advanced options', 1;
    GO
    RECONFIGURE;
    GO
    sp_configure 'Ole Automation Procedures', 1;
    GO
    RECONFIGURE;
    GO
     
      

  2.   


    --发送邮件模块
    EXEC msdb.dbo.sp_sEND_dbmail
    @profile_name='denghui_li',
    @recipients=@mailto,
    @copy_recipients=@mailcc,
    @body =@html,
    @subject =@title,
    @body_format='html'
      

  3.   

    ALL_Email.ISO是什么?
    是发邮件组件吧!注册了吗!有权限启动吗?
    什么提示?
    可能 是邮箱的问题,换一个邮箱试一下,如163邮箱。
    因为邮箱必须支持SMTP中转,检查一下!
      

  4.   


    謝謝各位我現在也只能先配置好Profile 再調用了。EXEC msdb.dbo.sp_send_dbmail 
    @profile_name = 'SendMail', 
    @recipients = @AddAddress,
    @subject = @subjects,
    @body = @mailbody,
    @body_format = 'html'