尝试从Windows Server 2008计算机上的已发布应用程序在C#.NET应用程序中使用MapPoint库时遇到问题。实例化MapPoint.MapClass时,出现错误:
“此应用程序的注册表设置未正确复制。要更正这些设置,请从原始安装位置再次为此应用程序运行安装程序。”
我可以在应用程序外部正常启动MapPoint,仅在运行已发布的应用程序时才会出现错误。我们有多台客户端在其上运行应用程序的服务器,并且运行Server 2003的服务器能够启动MapPoint。此外,XP和Win7机器也可以正常工作。我们还有一个Foxpro应用程序,该应用程序也利用了安装在2008服务器上的MapPoint的API,并且没有任何问题。
MapPoint作为VS项目中的COM参考,其中包含“ Microsoft MapPoint 13.0对象库(北美)8.3”。
从网上看,我发现了很多可能的解决方案,但没有任何效果。我试过了:
完全卸载MapPoint 2006,然后从注册表中手动删除所有条目,然后重新安装
进行与1相同的操作,但随后安装了MapPoint 2011试用版,导致出现完全相同的错误消息
禁用UAC
将MapPoint.exe的兼容模式设置为Server 2003和XP
如果有人有其他建议,请告诉我。
最佳答案
听起来确实有些东西正在安装/被阻止。这是用户问题吗?就是您可以为所有用户安装吗?
它没有解释MP2006问题,但是我会避免使用API版本的试用版-试用nag屏幕可能是个问题。例如。如果您隐藏启动应用程序,则用户将无法始终看到导航屏幕以将其关闭。
您说您正在实例化Map类。那么Application(或_Application)类呢?您必须具有以下之一才能创建Map。