如何生成示例

若要生成 COM 示例,必须将计算机环境设置为生成 Microsoft Win32 C++ 应用程序。

准备计算机以创建 COM 示例

必须使用正确安装的 32 位 C++ 编译器、链接器和资源编译器(与 Microsoft Visual C++ 4.x 或更高版本兼容)以及正确安装的 Windows SDK 来设置计算机环境。 最好最后安装 Windows SDK。 Windows SDK 提供示例中编码的 COM 功能所需的 .h include 和 .lib 库文件。

若要成功运行 Remclien、Freserve 和 Freclien 示例,需要 Windows 操作系统中可用的系统设施:Windows Server 2003、Windows XP、Windows 2000 或 Windows NT 4.0。 Remclien、Freserve 和 Freclien 示例将生成,但不会在 Windows Me、Windows 98 或 Windows 95 操作系统上运行,除非分布式 COM (DCOM) 和自由线程 COM 是操作系统的一部分。 此支持适用于 DCOM95 加载项中的 Windows Me、Windows 98 和 Windows 95 操作系统。

每个示例目录都具有生成和运行示例所需的源文件。 父示例目录有一个 Makeall.bat 文件,可以从命令提示符运行该文件,以生成以下分支中的所有代码示例。 有关详细信息,请参阅 Makeall.bat 文件。 如果环境设置为生成 Win32 C++ 应用程序,只需从其所在的目录运行Makeall.bat即可生成以下分支中的所有代码示例。 Makeall 可确保生成的正确顺序,以便满足所有代码示例依赖项。

main 目录还有一个生成文件,它使用与 Makeall.bat 支持的选项类似的选项生成所有教程代码示例。 有关详细信息,请参阅此生成文件。 此生成文件假定整个代码示例分支作为 Windows SDK 的一部分安装。 目前,此位置的路径类似于 D:\MSSDK\SAMPLES\COM\TUTSAMP,其中 D: 表示安装驱动器。 例如,如果你已提取教程代码示例分支 (COM 目录及其子目录) Windows SDK (外部的另一个位置,或者如果你从 Microsoft 网站) 单独下载获取了示例集,则使用 Makeall.bat 编译分支中的所有示例。 一般情况下,建议Makeall.bat。 还提供了Logmall.bat文件。 它的作用与 Makeall 批处理文件相同,只不过它将所有编译输出记录到 main 教程目录中的文件Errorlog.txt。

main 目录中还提供了两个批处理文件(Regall.bat和Unregall.bat),用于注册和注销教程代码示例系列中的所有 COM 服务器。 若要注册所有服务器,请从 main 目录运行 Regall.bat 文件。 若要注销所有服务器,请以相同的方式运行 Unregall.bat。 这些批处理文件需要 REGISTER、MARSHAL、DLLSERVE、LICSERVE、LOCSERVE、APTSERVE、FRESERVE 和 CONSERVE 代码示例的先前版本。 如果执行代码示例的正常生成,服务器生成文件将自动注册服务器。 在这种情况下,无需运行 Regall 批处理文件。

运行Cleanall.bat批处理文件以执行所有 COM 教程示例的详尽清理。

警告

此批处理文件删除示例中 Visual C++ 创建的所有 Visual Studio 项目文件和其他临时工作文件。 教程代码示例中生成的所有 COM 服务器都从注册表中注销。 删除所有可执行 exe 和 .dll 文件。 删除所有调试符号文件。 还会删除在各种生成环境中生成的文件。

 

运行“Makeall Clean”以执行更快但更温和的清理所有代码示例。 此清理操作不会尝试像Cleanall.bat那样全面。 删除 .obj 文件,但会保留输出二进制文件。 COM 服务器不会从注册表中注销。

此示例系列源自 Windows SDK 不可或缺的一部分,因此教程叙述假定环境正确安装了 Windows SDK。

但是,Microsoft Visual C++版本 4.0 及更高版本可能还提供编译所需的 .h include 和 .lib 库文件。 在这种情况下,可能不需要安装 Windows SDK 即可编译示例。

有关详细信息和完整的示例生成详细信息,请参阅:

环境设置

生成文件

使用 Visual Studio

提取代码示例

编码样式约定