这个问题好像很难,都不会,高手进来看看!

kongwzg 2003-12-19 12:52:33
通过OutLook2002自动发信,每次操作时Outlook都会跳出一个对话框,“A program is trying to automatically send e-mail using a Microsoft on your behalf. Do you want to allow this?”

因此每次都要手工点击“yes"才能继续。
如何去掉呢?

我找了资料说下面这样写就可以了
Set ol = CreateObject("Outlook.Application")
Set Session = ol.Session
Set AL = ol.Session.AddressLists("Global Address List")
Set AE = AL.AddressEntries(1)
MsgBox AE.Address

可执行『Set Session = ol.Session 』这句通不过吖。
怎么办?

或看
http://expert.csdn.net/Expert/topic/2576/2576979.xml?temp=.0393793
...全文
46 12 打赏 收藏 转发到动态 举报
写回复
用AI写文章
12 条回复
切换为时间正序
请发表友善的回复…
发表回复
dengwei007 2004-01-01
  • 打赏
  • 举报
回复
确实那天我的outlook出错了打不开,所以进了outlook express。

msdn上面的资料说通过这种方式调用outlook的外部程序,必然会出现那个提示框。
http://msdn.microsoft.com/library/default.asp?url=/library/en-us/odc_ol2003_ta/html/odc_olsecnotescomaddins.asp
上面的链接里面给出了一个不显示那个提示框的办法,但是只对COM Add-in有效。
kongwzg 2003-12-22
  • 打赏
  • 举报
回复
to dengwei007(邓蔚)
我想你是搞错了,我要用的是outlook不是outlook express,在outlook的安全中没有你说的那个选项。
dengwei007 2003-12-20
  • 打赏
  • 举报
回复
我帮你找了一下,在选项——安全里面有一个选项:当别的应用程序试图以我的名义发送邮件时警告我。那就是它了,把它去掉就不会有提示了。不过它保存在注册表什么地方,还是要好好找一找。
simanh 2003-12-20
  • 打赏
  • 举报
回复
up
dengwei007 2003-12-20
  • 打赏
  • 举报
回复
想想,微软加上这个东东的目的就是为了防止未经使用者同意,你的软件会做出一些不良企图的事情。为了安全起见,我觉得没有必要跳过这个环节呀。

解决参考方法:
outlook应该有个设置屏蔽这个功能,把安全度降低(在设置里面找找),你可以通过先修改注册表直接关闭这个功能,发送邮件,再帮人家改回去就OK了。
kongwzg 2003-12-19
  • 打赏
  • 举报
回复
怎么办
kongwzg 2003-12-19
  • 打赏
  • 举报
回复
TO online(龙卷风(白学了,重新充电中)) :
你给我看的是MS Outlook 98 但我现在的是2002

其它的也不行,还是有一个对话框出现
ABIGPig 2003-12-19
  • 打赏
  • 举报
回复
dim ol as object,session as object
Set ol = CreateObject("Outlook.Application")
Set Session = ol.Session
Set AL = ol.Session.AddressLists("Global Address List")
Set AE = AL.AddressEntries(1)
MsgBox AE.Address
liyan010 2003-12-19
  • 打赏
  • 举报
回复
up & save
Reker熊 2003-12-19
  • 打赏
  • 举报
回复
Dim xOutLook As New Outlook.Application
Dim xMail As MailItem

Private Sub Command1_Click()
xMail.To = Text1.Text
xMail.Subject = Text2.Text
xMail.Body = Text3.Text
xMail.Send
End Sub

Private Sub Form_Load()
For i = 1 To xOutLook.Session.AddressLists(1).AddressEntries.Count
List1.AddItem xOutLook.Session.AddressLists(1).AddressEntries(i).Address
Next i
Set xMail = xOutLook.CreateItem(olMailItem)

If List1.ListCount > 0 Then
Text1.Text = List1.List(0)
End If
Text2.Text = ""
Text3.Text = ""
Command1.Caption = "Send"
End Sub

Private Sub Form_Unload(Cancel As Integer)
xOutLook.Quit
Set xMail = Nothing
Set xOutLook = Nothing
End Sub

Private Sub List1_Click()
Text1.Text = List1.List(List1.ListIndex)
End Sub
online 2003-12-19
  • 打赏
  • 举报
回复
http://www.microsoft.com/china/msdn/technic/develop/office/0214a.asp
golden24kcn 2003-12-19
  • 打赏
  • 举报
回复
我也用过mapi,出现了以上问题,问了很多人,一点办法也没有!!! :(
所以只能用socket!但代码巨烦!

7,762

社区成员

发帖
与我相关
我的任务
社区描述
VB 基础类
社区管理员
  • VB基础类社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧