有关 Outlook 电子邮件安全更新的 OL98: 开发人员信息

文章翻译 文章翻译
文章编号: 262700 - 查看本文应用于的产品
本文已归档。它按“原样”提供,并且不再更新。
展开全部 | 关闭全部

本文内容

概要

本文提供了为开发人员、 解决方案的提供程序和独立软件供应商 (isv) Microsoft Outlook 电子邮件安全更新已发布的 2000 年 6 月 7,有关的信息。

更多信息

重要提示: Microsoft 建议您熟悉的 Outlook 电子邮件安全更新基本功能与之前您阅读此文章。 Outlook 电子邮件安全更新有关的一般信息提供了在下面的 Microsoft 网站:
http://www.microsoft.com/downloads/details.aspx?FamilyID=48B0BC6A-B123-4F48-B27D-119078B4819F&displaylang=EN
有关 Outlook 电子邮件安全更新的其他信息,请单击下面文章编号,以查看 Microsoft 知识库中相应的文章:
262617有关 Outlook 电子邮件安全更新的 OL98: 信息
在应用此安全更新后,本文介绍 Outlook 的行为。管理员可以配置客户端计算机,以便它们不包含所有这些限制。作为一名开发人员,您需要熟悉可用于此安全更新的管理选项。

有关如何重写此安全更新在限制的其他信息请单击下面文章编号,以查看 Microsoft 知识库中相应的文章:
263296关于 Outlook 电子邮件安全更新的 OL98: 管理员信息

概述

Outlook 电子邮件安全更新为 Outlook 提供了更高级别的防范恶意电子邮件。此更新直接影响许多 Outlook 功能函数,和它可能会产生负面影响您通过使用 Outlook 和其他邮件服务的技术或应用程序编程接口 (api) 中包含的开发人员功能生成的解决方案。如果您通过使用 Microsoft 消息处理技术创建了任意类型的解决方案,Microsoft 建议您熟悉此安全更新对 Outlook,这些更改如何影响您的解决方案所做的更改。在某些种情况下解决方案不起任何作用 ; 在另外一些情况下解决方案可能会导致一条警告消息,当您尝试运行它时中断您的解决方案。

此安全更新更改了 Outlook,并在以下方面的一般消息传递功能:

  • (从最终用户的角度) 的常规附件行为
  • Outlook 对象模型
  • 在 Outlook 中与安全相关的其他区域
  • 协作数据对象 (CDO) 对象模型
  • 简单的消息应用程序编程接口或简单消息应用程序编程接口 (MAPI)
要点: 此安全更新会影响使用 Outlook 对象模型和简单 MAPI 的所有自定义解决方案。这包括以下内容:

  • outlook 自定义的窗体发布到任何文件夹或窗体库,包括企业窗体库。
  • 即使经过数字签名的项目的任何其他类型的开发项目中使用 Outlook 对象模型或简单 MAPI。

outlook 对象模型设计更改

附件

与级别 1 或 $"不安全"的附件文件扩展名不能访问 Outlook 对象模型中中, 专门:
  • 对象模型中的 附件 集合是不知道的不安全的附件。
  • 如果试图发送以编程方式与这些附件之一的邮件不会发送该邮件。如果程序用 C 或 c + + 编程语言编写的您将收到 MAPI_E_CANCELLED 返回代码。
  • 如果试图通过使用 Outlook 对象模型中打开一个不安全文件系统对象 (或"freedoc"文件) 收到该 E_FAIL 返回代码在 C 或 c + + 的编程语言。以前,您可以通过使用 Outlook 对象模型中的 显示 方法打开一个不安全因素的文件系统对象。

Item.Send

您在运行使用 Outlook 对象模型调用 Send 方法的程序时您将收到一条警告消息。此警告消息告诉您一个程序正试图以您的名义发送邮件,并询问您是否要允许发送该邮件。警告消息包含了一个 按钮,但是, 按钮不可用直至五秒钟过去自警告消息显示。警告消息可以是立即关闭如果您单击 。当单击 发送 方法将返回 E_FAIL 错误 C 或 c + + 编程语言。

访问通讯簿和收件人

如果某个程序试图通过使用 Outlook 对象模型引用任何类型的收件人信息,则显示一个对话框,要求您确认此信息的访问。您可以允许访问通讯簿或收件人信息达 10 分钟之后您将收到对话框。 这允许诸如移动设备同步完成的功能。 如果您决定不允许访问您的通讯簿或收件人信息,您会收到在 C 或 c + + 的编程语言中的所有这些邮件的 E_FAIL 返回代码。

当解决方案试图以编程方式访问 Outlook 对象模型的以下功能时,您会收到确认对话框中:
  • AddressEntries 集合或任何 AddressEntry 对象。
  • 收件人 集合中或任何 收件人 对象。
  • ContactItem 对象的下列属性:
    Email1.Address
    Email1.AddressType
    Email1.DisplayName
    Email1.EntryID
    Email2.Address
    Email2.AddressType
    Email2.DisplayName
    Email2.EntryID
    Email3.Address
    Email3.AddressType
    Email3.DisplayName
    Email3.EntryID
    NetMeetingAlias
    ReferredBy
  • MailItem 对象的下列属性:
    SentOnBehalfOfName
    SenderName
    ReceivedByName
    ReceivedOnBehalfOfName
    ReplyRecipientNames
    若要
    抄送
    密件抄送
  • AppointmentItem 对象的下列属性:
    组织者
    RequiredAttendees
    OptionalAttendees
    资源
    NetMeetingOrganizerAlias
  • TaskItem 对象的下列属性:
    ContactNames
    联系人
    代理者
    所有者
    StatusUpdateRecipients
    StatusOnCompletionRecipients
  • GetMemberDistListItem 对象的方法。
  • ContactNamesJournalItem 对象的属性。
  • SenderNameMeetingItem 对象的属性。
  • SenderNamePostItem 对象的属性。
  • GetRecipientFromID 对象属性的 命名空间
  • 操作 对象的 Execute 方法。
  • UserProperty 对象的 公式 属性中。

Item.SaveAs

当您使用 SaveAs 方法将项目保存到文件系统时,您将收到"通讯簿"警告消息。这包括所有类型的项目,不论该项目有附件或活动内容。进行此更改,以便您不能以编程方式将项目保存到文件,然后分析该文件以检索电子邮件地址。

发送 CommandBar 按钮

不再可以使用 Execute 方法以编程方式单击 Outlook 工具栏上的 发送 按钮。虽然这通常不进行 Outlook 解决方案中,以防止恶意企图进行此更改。 在 C 或 c + + 的编程语言中,您收到所有这些邮件的 E_FAIL 返回代码。

SendKeys

通过使用 Visual Basic 或 Visual Basic 应用程序 SendKeys 命令,outlook 不允许访问某些对话框。这会防止恶意程序自动消除警告消息和规避新的安全功能。

未发布的窗体中的 VBScript 不再运行

您在创建自定义 Outlook 窗体时可以直接嵌入项内的 Visual Basic 脚本版 (VBScript) 中进行选择。如果其他用户不能获取对已发布的窗体的访问,您可能需要这样做。这些类型的窗体被称为"一次性"窗体。

有关一次性窗体的其他信息,请单击下面文章编号,以查看 Microsoft 知识库中相应的文章:
181266OL98: 使用窗体定义和一次性窗体
当您打开这些项目的一个不具有对其应用此更新的 Outlook 版本中时,Outlook 将显示一条安全警告消息,询问您是要启用或禁用窗体中的代码。您在使用了版本的 Outlook 具有对其应用该更新时 Outlook 禁用该代码,您不能将其激活。如果要使用自定义窗体中用 VBScript 编写脚本,以组织表单库或 Microsoft Exchange Server 的计算机上的公用文件夹,也必须发布自定义窗体。您还可以分发该自定义窗体,并将其安装在单独的客户端计算机上的本地窗体库。

office 应用程序重新设置为高安全级

若要帮助保护免受可能在 Microsoft Office 文档中的有害的宏病毒,安全更新,请将置于很高的安全性模式的 Office 程序下面的列表。

: 对于在典型的 Microsoft Office 97 程序会询问您是否运行宏。在典型的 Microsoft Office 2000 程序没有被签名并受信任的不能运行宏。如果宏进行签名和受信任的您不被询问是否要运行该宏。

受影响的产品

  • 只有 Microsoft Outlook 2000。为应用程序的 Visual Basic 未包含在 Outlook 98。
  • Microsoft Word 97 和 Microsoft Word 2000。默认状态下,Word 是在 Office 2000 中的高级安全模式中。
  • Microsoft Excel 97 和 Microsoft Excel 2000 中。
  • Microsoft PowerPoint 97 和 Microsoft PowerPoint 2000。
: Microsoft Access 在没有任何等效的设置为宏的安全性,并因此不受影响。如此一来所有访问文档类型都包含在列表中的不安全的文件扩展名不能被访问的。

使用 outlook 和 HTML 邮件

此安全更新将 Outlook 默认情况下放置到"受限制区域"。如果您打开超文本标记语言 (HTML) 格式的电子邮件,并且 HTML 包含脚本 Internet 安全设置的上下文中运行该脚本。

注意: 这是一个 Outlook 98 和 Outlook 2000 之间的不同之处。当您使用 Outlook 98 活动内容运行,只要安全设置设置充分低。安装了 Outlook 电子邮件安全更新,使用 Outlook 2000 完全禁用无论 Internet 的 HTML 电子邮件中的脚本安全设置。

简单 MAPI 设计更改

Outlook 为默认的简单 MAPI 客户端计算机上安装了 Outlook,处理请求通过使用简单 MAPI 所做的调用。因此,当安装了 Outlook 电子邮件安全更新时更改方式处理简单 MAPI 调用的。默认状态下,如果您使用许多简单 MAPI 函数您会收到一条警告消息,说一个程序正试图访问收件人信息,或者您的名义发送邮件。

下面的列表描述了 Outlook 对简单 MAPI 调用的响应方式。
Simple MAPI call   Behavior if handled by Outlook
----------------------------------------------------------------
MAPIAddress        OK
MAPIDeleteMail     OK
MAPIDetails        OK
MAPIFindNext       OK
MAPIFreeBuffer     OK
MAPILogoff         OK
MAPILogon          OK
MAPIReadMail       Prompt
MAPIResolveName    Prompt
MAPISaveMail       OK
MAPISendDocuments  OK
MAPISendMail       OK with the MAPI_DIALOG argument, otherwise prompt
有关简单 MAPI 调用的详细信息,请参阅 Microsoft 网站上下面的文章:
http://msdn2.microsoft.com/en-us/library/ms529053.aspx

CDO 设计更改

如果已在 Outlook 98 计算机上以前安装中,Outlook 98 电子邮件安全更新删除 CDO 对象模型。这不同于 Outlook 2000 电子邮件安全更新,它不会从计算机删除 CDO 对象模型。

CDO 电子邮件安全更新已发布的 Outlook 98。

有关在 CDO 的其他信息更新,请单击下面文章编号,以查看 Microsoft 知识库中相应的文章:
268462OL98: CDO 电子邮件安全更新信息

不再支持的公共消息调用

在安装 Outlook 电子邮件安全更新后,公共消息调用 (CMC) 将不再起作用。CMC 接口是一套十个函数,使您可以快速添加到自定义程序的简单消息功能。例如对于您的程序可以发送一条消息,单个 CMC 函数调用,并使用两个 CMC 函数调用接收消息。

CMC 有关的其他信息,请参阅下面的 Microsoft 网站:
http://msdn2.microsoft.com/en-us/library/ms527945.aspx
Microsoft 不会不打算重新实现此功能,因此建议您不要使用 CMC 在消息传送解决方案。

设计与安全更新的解决方案

没有直接的编程的方法来确定一个用户已启用了哪些安全更新功能。但是,根据您的解决方案可能会能够使用一个或多个下列方法确定是否已安装此安全更新。

确定 Outlook 内部版本号

您可以以编程方式确定要查看此安全更新是否已应用到 Outlook 的 Outlook 版本。但是,此不直接告诉您是否管理员已授予用户任何"覆盖"功能。以下 Outlook vba 的应用程序的代码示例阐释了如何确定已安装的 Outlook 版本。
Sub CheckForVersion()
   MsgBox UpdateApplied
End Sub

Function UpdateApplied()
   Set ol = CreateObject("Outlook.Application")
   iBuild = Int(Mid(ol.Version, 5, 4))
   ' NOTE: The version number format changed between Outlook 98 and 2000
   If iBuild >= 7806 Then
      UpdateApplied = True
   Else
      UpdateApplied = False
   End If
   Set ol = Nothing
End Function
: 此代码不起作用在 Microsoft Outlook 97 中,因为该版本不包含在对象模型中的 版本 属性。

确定邮件送达位置

您可能希望验证 Outlook 传递到个人文件夹文件 (.pst) 的邮件。如果邮件正被传送到个人文件夹文件,所有功能都有效的安全更新。以下 Outlook 自动化代码示例阐释了如何确定如果用户的邮件将被传递到邮箱或个人文件夹文件。
Sub CheckForPST()
   MsgBox UsingPST
End Sub

Function UsingPST()
   Set ol = CreateObject("Outlook.Application")
   Set oInbox = ol.Session.GetDefaultFolder(6) ' 6 = olFolderInbox
   If InStr(oInbox.Parent.Name, "Mailbox - ") Then
      UsingPST = False
   Else
      UsingPST = True
   End If
   Set oInbox = Nothing
   Set ol = Nothing
End Function

参考

有关 Outlook 电子邮件安全更新的其他信息,请单击下面文章编号,以查看 Microsoft 知识库中相应的文章:
262617有关 Outlook 电子邮件安全更新的 OL98: 信息
262700有关 Outlook 电子邮件安全更新的 OL98: 开发人员信息
263296关于 Outlook 电子邮件安全更新的 OL98: 管理员信息
262618OL98: 次 Outlook 电子邮件安全更新的问题
264566OL98: Outlook 电子邮件安全更新的已知安装问题
264127OL98: 次 Outlook 电子邮件安全更新的互操作性问题
264129OL98: 次 Outlook 电子邮件安全更新的第三方问题

属性

文章编号: 262700 - 最后修改: 2013年10月20日 - 修订: 1.7
这篇文章中的信息适用于:
  • Microsoft Outlook 98 标准版
关键字:?
kbnosurvey kbarchive kbmt kbdownload kbinfo KB262700 KbMtzh
机器翻译
注意:这篇文章是由无人工介入的微软自动的机器翻译软件翻译完成。微软很高兴能同时提供给您由人工翻译的和由机器翻译的文章, 以使您能使用您的语言访问所有的知识库文章。然而由机器翻译的文章并不总是完美的。它可能存在词汇,语法或文法的问题,就像是一个外国人在说中文时总是可能犯这样的错误。虽然我们经常升级机器翻译软件以提高翻译质量,但是我们不保证机器翻译的正确度,也不对由于内容的误译或者客户对它的错误使用所引起的任何直接的, 或间接的可能的问题负责。
点击这里察看该文章的英文版: 262700
Microsoft和/或其各供应商对于为任何目的而在本服务器上发布的文件及有关图形所含信息的适用性,不作任何声明。 所有该等文件及有关图形均"依样"提供,而不带任何性质的保证。Microsoft和/或其各供应商特此声明,对所有与该等信息有关的保证和条件不负任何责任,该等保证和条件包括关于适销性、符合特定用途、所有权和非侵权的所有默示保证和条件。在任何情况下,在由于使用或运行本服务器上的信息所引起的或与该等使用或运行有关的诉讼中,Microsoft和/或其各供应商就因丧失使用、数据或利润所导致的任何特别的、间接的、衍生性的损害或任何因使用而丧失所导致的之损害、数据或利润不负任何责任。

提供反馈

 

Contact us for more help

Contact us for more help
Connect with Answer Desk for expert help.
Get more support from smallbusiness.support.microsoft.com