并行程序集创建指南

以下准则介绍了如何创作自己的 COM 或 Win32 并行程序集。 如果需要的功能由某个 受支持的 Microsoft 并行程序集提供,则您可能不需要创建您自己的并行程序集。 在这种情况下,请使用 Microsoft 提供的程序集,并按照使用 独立应用程序和并行程序集中并行程序集的过程进行操作。

首先,请考虑组件是否对并行程序集提供合适的候选项。 有关详细信息,请参阅是否 应该提供共享组件作为并行程序集?

若要创建并行程序集,请遵循以下准则:

  • 确定要包含在程序集中的资源。 请记住,程序集包含一个或多个始终同时提供给应用程序和客户的文件。 该程序集用作命名、绑定、版本控制、部署和 默认配置所用的基本单元。 作为一般规则,当不确定两个资源是否属于同一程序集时,建议编写它们来进入单独的程序集。 通常,并行程序集包含一个 DLL。
  • 为程序集创建程序集 清单 。 清单应描述程序集中的 COM 对象或类型库。 有关应编写到程序集清单中的内容的详细信息,请参阅 程序集清单。
  • 当在系统上运行多个版本的程序集时,评估对象的使用情况。 确定程序集的不同版本是否需要单独的数据结构,例如内存映射文件、命名管道、已注册 Windows 消息和类、共享内存、信号量、互斥体和硬件驱动程序。 跨程序集版本使用的任何数据结构都必须是向后兼容的版本。 确定可跨版本使用的数据结构,以及哪些数据结构必须专用于某个版本。 确定共享数据结构是否需要单独的同步对象,如信号灯和 mutex。
  • 通过遵循 创作并行程序集的 DLL中的准则,创作你的 DLL 以作为并行程序集。
  • 创作一组标头文件和帮助程序函数,为包含程序集状态的注册表项提供简单的版本。 程序集通常在注册表项中保存其状态设置。 必须以单个版本为基础编写注册表设置,才能隔离可同时运行的多个程序集版本。 设计你的并行程序集和 DLL,以便在并排共享方案中正确地存储和处理程序集的状态。 遵循创作状态存储中的指导原则并行程序集。
  • 使用 私有程序集 的应用程序的开发人员应确保应用程序目录的安全。 如果使用Windows Installer安装了应用程序,则可以使用 LockPermissions 表保护应用程序目录。 通常,系统会为私有程序集提供读取、写入和执行访问权限;所有其他进程仅提供执行和读取访问权限。
  • 使用具有并行共享的方案来测试程序集,以确保它是有效的并行程序集。 成功安装程序集不足以确保它按预期方式工作。
  • 采用一种方法对程序集的更新进行编号。 每个程序集都与由四个部分构成的版本号关联。 从左到右,主要版本号、次要版本号、内部版本号和修订部分之间用句点分隔。 更改与早期版本不兼容的版本的程序集的主要或次要号。 仅更改用于向后兼容的程序集更改的生成和修订部分。 例如,开发人员可以采用一种编号方法,其中所有1.0.0。 * 版本号指的是版本为1.0.0.0 的程序集。