2010-05-05 27 views
0

我有一段cdosys代碼,它正確運行並生成與我的SQL Server 2008服務器交談的MS Exchange 2003服務器的電子郵件。但是,當他們到達時,姓名不會出現在電子郵件中。代碼中是否存在錯誤?這是不是可能的?無法使用SQL Server 2008中的cdosys將FromName添加到電子郵件中

在此先感謝

usp_send_cdosysmail 
@from varchar(500), 
@to text, 
@bcc text , 
@subject varchar(1000), 
@body text , 
@smtpserver varchar(25), 
@bodytype varchar(10) 
as 
declare @imsg int 
declare @hr int 
declare @source varchar(255) 
declare @description varchar(500) 
declare @output varchar(8000) 
exec @hr = sp_oacreate 'cdo.message', @imsg out 
exec @hr = sp_oasetproperty @imsg, 
'configuration.fields("http://schemas.microsoft.com/cdo/configuration/sendusing").value','2' 

exec @hr = sp_oasetproperty @imsg, 
    'configuration.fields("http://schemas.microsoft.com/cdo/configuration/smtpserver").value', 
    @smtpserver 

exec @hr = sp_oamethod @imsg, 'configuration.fields.update', null 
exec @hr = sp_oasetproperty @imsg, 'to', @to 
exec @hr = sp_oasetproperty @imsg, 'bcc', @bcc 
exec @hr = sp_oasetproperty @imsg, 'from', @from 
exec @hr = sp_oasetproperty @imsg, 'fromname','A From Name' 
exec @hr = sp_oasetproperty @imsg, 'subject', @subject 

-- if you are using html e-mail, use 'htmlbody' instead of 'textbody'. 

exec @hr = sp_oasetproperty @imsg, @bodytype, @body 
exec @hr = sp_oamethod @imsg, 'send', null 

-- sample error handling. 
if @hr <>0 
select @hr 
begin 
exec @hr = sp_oageterrorinfo null, @source out, @description out 
if @hr = 0 
begin 
select @output = ' source: ' + @source 
print @output 
select @output = ' description: ' + @description 
print @output 
end 
else 
begin 
print ' sp_oageterrorinfo failed.' 
return 
end 
end 
exec @hr = sp_oadestroy @imsg 

回答

1

你也應該能夠

sp_oasetproperty @imsg, 'from', '"Mr Bob T. Fantastic" <[email protected]>'

+0

frickin的天才,感謝和良好的名稱 – 2010-05-05 12:40:00

相關問題