AUTOCLIK 示例:自动化服务器应用程序

更新:2007 年 11 月

AUTOCLIK 示例是简单的自动化(原来为 OLE 自动化)服务器应用程序。autoclik 解决方案由两个不同的项目组成:autoclik 项目,表示自动化服务器的实现;autodriv 项目,表示驱动该示例的客户端。

AUTOCLIK 阐释以下方面:

  • 由应用程序向导创建的自动化起始代码。

  • 用于创建启用自动化的 CCmdTarget 派生类和用于添加自动化属性和方法的选项。

  • 向其他使用自动化的应用程序公开现有类成员和函数。

  • 单个 Microsoft 基础类库 (MFC) 应用程序中的多调度接口。

安全说明:

提供该示例代码是为了阐释一个概念,并不代表着最安全的编码实践,因此不应在应用程序或网站中使用该示例代码。对于超出本示例代码的预期用途以外的使用所造成的偶然或继发性损失,Microsoft 不承担任何责任。

获取示例和安装示例的说明:

  • 在 Visual Studio 的“帮助”菜单上,单击“示例”。

    有关更多信息,请参见定位示例文件

  • 示例的最新版本和完整列表可以从 Visual Studio 2008 Samples page(Visual Studio 2008 示例页面)联机获取。

  • 还可以在计算机的硬盘上查找示例。默认情况下,示例和自述文件将复制到 \Program Files\Visual Studio 9.0\Samples\ 下的文件夹中。对于 Visual Studio 速成版,所有示例都位于联机位置。

生成示例

生成 AUTOCLIK 示例

  1. 打开解决方案 autoclik.sln。

  2. 在“生成”菜单中单击“生成”。

运行示例

在注册 AUTOCLIK 应用程序后,就可以准备好运行 AUTODRIV 应用程序了。从 IDE 生成解决方案将在运行 AUTODRIV 前自动执行 AUTODRIV 注册。运行 AUTODRIV 应用程序。它自动启动 AUTOCLIK 应用程序并创建一个文档。若要测试此示例的功能,使用由 AUTODRIV 应用程序提供的接口操纵该文档。

AUTODRIV 示例是用来驱动 AUTOCLIK 示例的简单自动化客户端应用程序。AUTODRIV 示例很好地说明了如何编写自动化驱动程序应用程序。它使用 COleDispatchDriver::SetPropertyCOleDispatchDriver::GetProperty 来通过自动化操纵控件。

有关如何通过远程自动化将 AUTOCLIK 和 AUTODRIV 结合使用的详细信息,请参见使用 AUTOCLIK 和 AUTODRIV 运行远程自动化

关键字

AUTOCLIK 自动化服务器示例说明以下关键字:

AfxMessageBox;AfxOleInit;AfxOleLockApp;AfxOleUnlockApp;CCmdTarget::EnableAutomation;CCmdTarget::FromIDispatch;CCmdTarget::GetIDispatch;CCmdTarget::OnFinalRelease;CControlBar::EnableDocking;CControlBar::GetBarStyle;CControlBar::SetBarStyle;CDialog::DoModal;CDocument::GetFirstViewPosition;CDocument::GetNextView;CDocument::OnNewDocument;CDocument::SetModifiedFlag;CDocument::UpdateAllViews;CFrameWnd::ActivateFrame;CFrameWnd::DockControlBar;CFrameWnd::EnableDocking;CFrameWnd::LoadFrame;CObject::AssertValid;CObject::Dump;CObject::IsKindOf;CObject::Serialize;COleTemplateServer::ConnectTemplate;COleTemplateServer::UpdateRegistry;CStatusBar::Create;CStatusBar::SetIndicators;CToolBar::Create;CView::DoPreparePrinting;CView::GetDocument;CView::OnBeginPrinting;CView::OnDraw;CView::OnEndPrinting;CView::OnPreparePrinting;CWinApp::AddDocTemplate;CWinApp::EnableShellOpen;CWinApp::InitInstance;CWinApp::LoadStdProfileSettings;CWinApp::RegisterShellFileTypes;CWnd::DoDataExchange;CWnd::GetParentFrame;CWnd::OnCreate;CWnd::OnLButtonDown;CWnd::PreCreateWindow;CWnd::ShowWindow;CWnd::UpdateWindow;DragAcceptFiles;ShowWindow;TextOut

AUTODRIV 自动化客户端示例说明以下关键字:

AfxGetApp;AfxMessageBox;AfxOleInit;CDC::DrawIcon;CDC::GetSafeHdc;CDialog::DoModal;CDialog::EndDialog;COleDispatchDriver::AttachDispatch;COleDispatchDriver::GetProperty;COleDispatchDriver::InvokeHelper;COleDispatchDriver::SetProperty;CRect::Height;CRect::Width;CWinApp::InitInstance;CWinApp::LoadStdProfileSettings;CWnd::DoDataExchange;CWnd::GetClientRect;CWnd::IsIconic;CWnd::OnClose;CWnd::OnCreate;CWnd::OnPaint;CWnd::OnQueryDragIcon;CWnd::SendMessage;CWnd::ShowWindow;CWnd::UpdateData;GetSystemMetrics;LoadIcon;ShowWindow

说明:

某些示例(如此示例)尚未经过修改以反映 Visual C++ 向导、库和编译器中所做的更改,但仍演示了如何完成所需的任务。

请参见

其他资源

MFC 示例