1

我正在编写一个基于 VC++ MFC 对话框的应用程序,它需要在其中嵌入 Microsoft MapPoint。为此,我使用 MS VC++ .NET 2003 和 MapPoint Europe 2006 来执行此操作,但遇到问题,因为当我选择“插入 ActiveX 控件”时,选项列表中没有出现 MapPoint 控件。我尝试手动注册mappointcontrol.ocx似乎regsvr32成功但控件仍然没有出现在列表中。

谁能建议我在这里做错了什么,以及任何可能的解决方案。

谢谢

伊恩

4

2 回答 2

1

您是否尝试过使用 ActiveX 控件测试容器?它在控件列表中吗?在测试容器中使用注册按钮怎么样?

还要检查注册表以查看它是否已注册。您应该在 HKEY-CLASSES-ROOT\controlName 中有一个条目,其中包含指向 UUID 的 CLSID 元素。该 UUID 还应该位于 HKEY-CLASSES-ROOT\CLSID\uuid 中,并且具有指向 DLL 的 LocalServer32 条目和指向 controlName 的 ProgID。

于 2008-09-16T15:28:07.653 回答
1

我现在已经让 Mappoint 控件工作了,但方式略有不同。该控件确实出现在测试容器可以使用的控件列表中。我已经尝试重新注册它并取消注册它,但是当我尝试“插入 ActiveX 控件”时它仍然没有出现在控件列表中。但是,如果我使用“添加/删除工具箱项目”,我可以将其添加到工具箱中,然后将其拖到我的应用程序中,它可以正常工作。我不确定为什么这种方法有效,但它确实有效,我可以继续我的编码。

非常感谢您对此提供的所有帮助。

于 2008-09-17T15:05:03.427 回答