自动化

自动化 (原来称作为 OLE 自动化) 使应用程序可以对另一个应用程序实现的对象,或者显示对象,以便可以进行操作。

自动化服务器 是应用程序 (COM 服务器的类型) 来公开其功能通过 COM 接口对于其他应用程序,调用 自动化客户端。 该风险使自动化客户端通过直接访问对象并使用它们提供的服务自动某些功能。

自动化服务器和客户端使用从 IDispatch 始终派生的 COM 接口并采用并返回一组特定调用 Automation 类型的数据类型。 可以自动显示自动化接口,提供方法和属性可以从其他应用程序的任何对象。 自动化用于 OLE 和 COM 对象可用。 自动化的对象可能是本地或远程的 (在另一个计算机访问网络);因此具有自动化两类:

  • 自动化 (本地)。

  • 远程自动化 (在网络,使用分布式 COM 或 DCOM)。

,当应用程序提供有用的功能。其他应用程序时,显示对象是有利的。 例如, Activex 控件是自动化服务器的类型;承载 Activex 控件的应用程序是该控件的自动化客户端。

另举一例,字处理程序可能显示其拼写检查功能在其他程序。 通过使用其他应用程序的现成的功能,该对象风险允许供应商改进它们的应用程序。 这样,自动将某些面向对象的编程原则,例如可重用性和封装,在应用程序级别。

更重要的支持自动提供给用户和解决方案提供程序。 通过显示应用程序功能通过通用,显式定义的接口,自动在一个一般编程语言可以生成整个解决方案,例如 Microsoft Visual Basic,而不是在不同的应用程序特定的宏语言。

许多商业应用程序,如 Microsoft Excel 和 Microsoft Visual C++,允许自动其功能。 例如,在 Visual C++ 中,可以编写自动生成的 VBScript 宏,编辑代码的方面或调试任务。

通过在自动化的参数

在创建自动化方法的一个困难帮助提供一种统一 “安全”结构将数据传递在自动化服务器和客户端之间。 自动使用 VARIANT 类型传递数据。 VARIANT 类型是一个标记的联合。 它具有值的数据成员 (这是匿名联合 C++) 以及指示信息的类型数据成员存储在该联合。 VARIANT 类型支持许多的标准数据类型:2 个 (和 4 字节整数, 4 位,而 8 字节浮点数、字符串和布尔值。 此外,它还支持 HRESULT (OLE 错误代码), 货币 (一个定点数值类型) 和 日期 (绝对日期和时间) 类型,以及指向 IUnknownIDispatch 接口。

VARIANT 类型在 COleVariant 类中封装。 支持的 货币日期 类在 COleCurrencyCOleDateTime 类中封装。

自动化示例

  • AUTOCLIK 使用此示例了解自动化技术和作为基本的了解远程自动化。

  • ACDUAL 添加双重接口向自动化服务器应用程序。

  • CALCDRIV 自动化驱动 MFCCALC 的客户端应用程序。

  • INPROC 演示进程内自动化服务器应用程序。

  • IPDRIVE 自动化驱动 INPROC 的客户端应用程序。

  • MFCCALC 演示自动化客户端应用程序。

您想进一步了解什么?

您希望做什么?

请参见

概念

MFC按照