升级使用 Snap-In Designer 构建的 VB6 代码

Upgrading VB6 Code Built with Snap-In Designer

我们有一些旧的 VB6 代码,显然是使用称为 MMC 管理单元设计器的东西开发的。我无法找到恢复该项目功能的最佳途径。无论出于何种原因,它不再有效(我不知道为什么或何时发生)。当 MMC 加载 MSC 文件并选择管理单元的节点时,我们刚刚看到一个错误,"MMC could not create the snap-in." 我个人甚至不知道这个管理单元应该是什么样子或做什么,所以重新实施它将是一个挑战。

一种方法是尝试找到我听说的包含此 MMC Snap-In 设计器的平台 SDK 版本,下载并安装它,看看是否在 IDE 提供有关如何使其工作的任何线索,或者至少它过去是如何工作的。还有可能只是识别一些丢失的注册表条目,我们可能会随着时间的推移以某种方式丢失,或者当我们过渡到支持 64 位 OS(而我们的大部分代码仍然编译为 32 位二进制文​​件)。

但是,如果有任何可能将管理单元设计器项目升级到当今使用的任何项目,我宁愿将 VB6 项目升级到更新的项目。我不熟悉这个旧的 Snap-In 设计器,但至少如果我们有某种方法将此代码升级到现代的东西,我将能够使用当前可用资源了解管理单元开发。这些 MMC Snap-In Designer 项目是否有任何升级路径?

虽然我找不到自动升级,但我发现,至少在我们的例子中,手动将 MMC 管理单元的 VB6 代码重写为 VB.NET 相对容易。这部分是因为管理单元结构本身非常简单,部分是因为所有功能都在一个单独的 DLL 中,该 DLL 已经 VB.NET。我认为我必须传递的唯一有用的建议是仍然可以通过文本编辑器通过加载 .DSR 文件来访问管理单元的 VB6 代码(即使您没有安装管理单元设计器)并向下滚动一种方式。我认为从 .NET 实现 MMC 管理单元的对象模型与 VB6 MMC 管理单元设计器使用的模型有很大不同,但是如果您知道需要完成什么,那么 .NET 模型很容易处理.只需参考 DSR 文件中的 VB6 代码,找到 与 MMC 相关的代码片段,并使用对设计的更高层次的理解(不是直接使用该代码)来重新-实施项目的纯 MMC 方面。