1

I am running into an issue when attempting to use MapPoint libraries within our C# .NET application from a published app on a Windows Server 2008 machine. When instantiating the MapPoint.MapClass, I get the error:

"Your registry settings for this application were not copied correctly. To correct these settings, run Setup again for this application from the location where you originally installed it."

I am able to launch MapPoint just fine by itself outside of the app, the error only comes up when running the published app. We have multiple servers that clients run the app on, and the server running Server 2003 is able to launch MapPoint just fine. In addition, XP and Win7 machines also work fine. We also have a Foxpro application that also utilizes MapPoint's API installed on the 2008 server, and it doesn't have any issues.

MapPoint is included as a COM reference in the VS project referring to "Microsoft MapPoint 13.0 Object Library (North America) 8.3".

Looking online, I found a bunch of possible solutions, but nothing worked. I have tried:

  1. Uninstalling MapPoint 2006 entirely and manually removing all entries from the registry, then reinstalling
  2. Doing the same as 1 but then installing the trial of MapPoint 2011, resulting in the exact same error message
  3. Disabling UAC
  4. Setting MapPoint.exe's compatibility mode to Server 2003 and XP

Please let me know if anyone has any other suggestions.

Rett
  • 41
  • 1
  • 4

1 Answers1

0

it does sound like something is partially installing / being blocked. Is this a user issue? Ie. Can you install for all users?

it doesn't explain the MP2006 issue, but I would avoid the trial version for API work - the trial nag screen can be a problem. Eg. If you start the app hidden, the user cannot always see the nag screen to dismiss it.

You say you are instantiating a Map class. What about the Application (or _Application) class: you must have one of these to create the Map.

winwaed
  • 7,645
  • 6
  • 36
  • 81
  • 1
    The issue happens for all users on the server. You're right about the trial version, but we only installed it to test and see if MP2011 would fix the issue or not. From the C# application, we instantiate a MapPoint.MapClass then call the MapClass.FindAddressResults function. I'm not sure what Application class you're referring to here. – Rett Mar 18 '11 at 13:09
  • I'm not sure what "MapClass" you referring to either! I think you mean "Map", and the fact you don't know about Application objects suggests the problem is almost certainly the way that you are starting MapPoint. You should get the reference to your Map object using a property in your MapPoint Application object OR your MapPointControl object. See http://msdn.microsoft.com/en-us/library/aa562244.aspx for details on how to create these. – winwaed Mar 18 '11 at 13:42
  • "MapClass" in the MapPoint namespace derives from "Map", which is the type of the Application's "ActiveMap" property. It is possible to instantiate a Map without ever instantiating an Application, which is how our program currently works. However, just to test I tried instantiating an Application and getting the Map from the ActiveMap property instead. Unfortunately, I still get the same error. – Rett Mar 18 '11 at 15:37