演练:为智能设备创建 MFC 多平台 ActiveX 控件

更新:2007 年 11 月

可以使用 Visual C++ 编写面向多种设备的 MFC ActiveX 控件代码。本演练阐释如何生成用于多种设备的 C++ 多平台 MFC ActiveX 控件。

创建 MFC ActiveX 多平台控件项目

本演练由三项主要任务组成:

  • 创建多平台智能设备 MFC ActiveX 控件项目。

  • 为 MFC ActiveX 控件的 OnDraw() 方法添加代码。

  • 部署多平台 MFC ActiveX 控件解决方案以用于测试。

有关更多信息,请参见 MFC 智能设备 ActiveX 控件向导

说明:

对于在以下说明中使用的某些 Visual Studio 用户界面元素,您的计算机可能会显示不同的名称或位置。这些元素取决于您使用的 Visual Studio 版本及设置。有关更多信息,请参见Visual Studio 设置

本演练使用“Visual C++ 开发设置”编写。

创建多平台智能设备 MFC ActiveX 控件项目

  1. 在“文件”菜单上指向“新建”,单击“项目”,在“项目类型”窗格中展开“Visual C++”,然后单击“智能设备”。

  2. 在“模板”窗格中单击“MFC 智能设备 ActiveX 控件”。

  3. 在“名称”框中键入“MFCAX”。

  4. 在“解决方案”框中,接受默认选项“创建解决方案的目录”。

  5. 单击“确定”启动“MFC 智能设备 ActiveX 控件向导”。

  6. 在“MFC 智能设备应用程序向导欢迎”页上单击“下一步”。出现 “MFC 智能设备 ActiveX 控件向导”的“平台”,此时您可以选择要添加到当前项目的平台。

    从“已安装的 SDK”窗格中选择您所针对的并要添加到当前项目中的平台,例如“Smartphone 2003”和“Pocket PC 2003”。若要添加平台,请在左窗格中选择该平台(如“Smartphone 2003”),然后单击右箭头(“>”)按钮。若要移除平台,请在右窗格中选择该平台(如“Pocket PC 2003”),然后单击左箭头(“<”)按钮。

  7. 单击“完成”以完成并关闭向导,或者单击“下一步”接受向导中的所有剩余选项的默认值。

    说明:

    创建设备项目后,您可以在第一次创建之后不断添加更多平台。但是,将新的平台添加到现有的项目并不会将其他依赖性运行时 DLL 添加到“附加文件”配置属性中。例如,如果应用程序动态链接到 MFC,则必须在新添加的平台的“附加文件”属性中包含下列 DLL:Mfc90u.dll、Atl90.dll 和 Msvcr90.dll。此示例假设为发布配置。

为多平台 MFC 控件的 OnDraw() 方法添加代码

为 MFC ActiveX 控件的 OnDraw 方法添加代码

  1. 在“解决方案资源管理器”中展开“源文件”,然后选择 MFCAXCtrl.cpp 源文件并将其在编辑器打开。

  2. 将 OnDraw 方法的代码替换为下面的代码,尤其是最后三行:

    void CMFCAXCtrl::OnDraw(
        CDC* pdc, const CRect& rcBounds, const CRect& rcInvalid)
    {
        if (!pdc)
            return;
     
        CRect rect;
        GetClientRect(&rect);
        pdc->DrawTextW(_T("Hello World"),11, &rect,1);
    }
    
  3. 在“生成”菜单上单击“重新生成解决方案”。

部署多平台解决方案

部署解决方案

  1. 要运行部署的解决方案,首先需要在目标设备上部署和注册 ActiveX 控件项目。

  2. 在 Visual Studio 工具栏上的“目标设备”下拉列表中选择目标,例如“Pocket PC 2003 SE 仿真程序”或“Pocket PC 2003 设备”。

  3. 在“生成”菜单上单击“部署”。

选择目标设备

为了确保在部署解决方案时系统提示您选择设备,请完成以下过程。

在部署时提示选择设备

  1. 在“工具”菜单上单击“选项”,展开“设备工具”,再单击“常规”。如果“设备工具”不可见,请选中“选项”对话框底部的“显示所有设置”。

  2. 选择“部署设备项目前显示设备选项”复选框。

有关更多信息,请参见“Mobile Developer Center”(移动开发人员中心)

请参见

参考

Visual C++(如何实现 - 智能设备)

其他资源

如何:创建多平台设备项目 (Visual C++)