如何在PB8中发送邮件时抑制Outlook弹出消息

时间:2014-12-05 09:00:39

标签: powerbuilder

我正在尝试在PowerBuilder 8中执行某些操作后发送邮件。但是它弹出一条Outlook弹出消息,询问是否允许Outlook发送消息。

有没有办法绕过这个弹出窗口并直接发送邮件?如果答案是兑换请在下面的代码中告诉我在哪里使用它 -

//string ls_name
//integer id
ls_name = sle_name.text
id = integer(sle_id.text)

dw_report.Saveas("d:\abc.xls", Excel!, True)


mailSession mSes

mailReturnCode mRet

mailMessage mMsg

// Create a mail session

mSes = create mailSession

// Log on to the session

mRet = mSes.mailLogon(mailNewSession!)

IF mRet <> mailReturnSuccess! THEN
        MessageBox("Mail", 'Logon failed.')
        RETURN

END IF

// Populate the mailMessage structure

mMsg.Subject = ls_name

mMsg.NoteText = 'Recieved Mail From PB'

mMsg.Recipient[1].name = 'priyadarsini_m01@infosys.com'
//mMsg.AttachmentFile[1].file = 'D:\EB130157\EB130157_22.doc'   

 mMsg.AttachmentFile[1].FileType = mailAttach!
  mMsg.AttachmentFile[1].FileName = 'abc.xls'
  mMsg.AttachmentFile[1].PathName = 'D:\abc.xls'    
  mMsg.AttachmentFile[1].position = 1

//mMsg.Recipient[2].name = 'Shaw, Sue'

// Send the mail

mRet = mSes.mailSend(mMsg)

IF mRet <> mailReturnSuccess! THEN
        MessageBox("Mail Send", 'Mail not sent')
        RETURN

END IF

mSes.mailLogoff()

DESTROY mSes 

2 个答案:

答案 0 :(得分:1)

我认为这是Windows / Outlook中的安全设置,这是您无法在PowerBuilder中控制的。

答案 1 :(得分:1)

这里有很多变量(例如,我认为与直接SMTP相比,Exchange服务器环境有所不同),并且随着时间的推移情况发生了变化。曾经有一个名为Redemption的OLE解决方案,虽然我不知道它是否相关。

我知道我最近在Exchange环境中的Outlook 2010中遇到了类似这样的问题,以及此处的设置:

  

选项/信任中心/信任中心设置... /程序化   访问

设置为“当我的防病毒软件处于非活动状态或已过期时,警告我有关可疑活动的信息”,并告诉我我的用户的防病毒软件已被视为过时。修复防病毒问题使提示消失。

我认为这会解决您的问题吗?可能不是。这只是为了说明您可能需要拓宽视野以寻找解决方案,并且您的起点可能应该是Outlook,而不是PowerBuilder。 (如果微软已经完成了它的工作,那么你无法用任何工具来破坏它的安全性,所以你最好不要用来代替而不是来反对它。)

祝你好运。