I emailed Garmin Tech Support and received a very nicely detailed message with instructions on fixing my problem. Basically, they told me to uninstall Mapsource, edit my registry to remove both instances of "Garmin" from the software sections of the registry and then re-install the software. Finally, they told me to upgrade to version 6.5 after I get v5 installed and running correctly.
I attempted to follow their instructions to the letter, but they don't match what I am seeing. When I attempt to uninstall Mapsource, I see two instances in the "Add / Remove Programs" dialog box. There is a listing for "Mapsource" and one for "U.S. Recreational Lakes with Fishing Hot spots central v5." If I uninstall both, there are no "Garmin" listings to remove from the registry. If I only uninstall one of them (as the instructions from Garmin state), I only see one instance of "Garmin" in the registry and it will not allow me to delete it.
1. Install the whole shebang on a different PC, export the garmin registry trees and compare (again, both HKLM and HKCU). If they are identical, compare the contents of c:\garmin (or wherever you installed MS).
2. Install regmon (www.sysinternals.com) on your PC. Set filtering to see mapsource.exe's registry accesses. Note down the point where Mapsource bails out -> try to think what could be the problem (or post on forum and have others think for you ). Trust me, the registry settings are pretty common sense, I have successfully added new mapsets by hand on more occasions than I would care to think of.
Thanks for the additional suggestions. I actually (don't tell Garmin) have the software installed at work. I did that to see if the CD was good. I will go there and export the registry this afternoon, bring it home and compare the two.
I uninstalled last night when I grew frustrated at the whole thing. So, just now, I looked in the registry under HKCU and HKLM and there are NO listings for Garmin. There never has been when the software is uninstalled. When the software is installed, there is one in each place.
I had a similar problem with a different software; found out that it was caused by my anti-virus program. I forgot to disable it when I did the install. Something you might want to check.......Good luck
Each time I tried to install Version 7 it loaded all the files but gave the InstallShield error message 1628 " Failed to complete installation" as it tried to write to the registry. BTW - It would blow up Version 6 too make it or any other version of MapSource in-operable. I'd click on the ICON and the error message would inform me there was something wrong with the Garmin Registry and to install the software again... I did just that (probably 10 times).
Here's how I got V.7 to install. I used my Wife's laptop running the same OS and installed both version 6 and version 7 without unlocking the maps. I then went into the her registry and exported the to Garmin tabs. One is in Current User, the other is in Local Machine. I then placed these on my desktop and double-clicked them and MapSource fired right up. I then unlocked both maps and am back in business...
I have had that exact same problem and have used MapsetToolkit to remove the registry entries of each Mapsource product individually until I fix what has it crashing. Mapset toolkit allows you to uninstall the registry values of each product individually and will show you a list of what is installed. It only takes a second to do this and is a very quick fix for MapSource error.
I recently had the same issue when I installed some topo maps made by someone here. When I installed it, I wasn't sure exactly where to install it to, so after it installed, I moved the folder. I got that exact same error every time I tried to open Mapsource. Re-installed Mapsource and still the same thing. I then placed the folder back to it's original place that it was installed to and everything is working great since. So I'm thinking you must have moved the maps folder or it did not install to the correct place.
1) THREAD COUNT
Currently, the number of threads is set globally. However, the number of simultaneous connections depends on the source rather than a general option: would it be possible to add a parameter to customMapSource or via bsh, to define the maximum number of http thread for a specific mapsource?
By the way, I added 12 and 24 (when I access my local tile server): it would be good to externalize THREADCOUNT_LIST in general settings
2) left column height panel
How could we dynamically resize the height of the different panels in the left column?
Depending on the use of the tool and especially the number of sources in the list, the basic dimensions are not practical.
Personally I have fixed new dimensions (but don't know how to code dynamic height panels...)
4) CertificateException
I have currently disabled CertificateException which unnecessarily annoys me (... yes some servers are misconfigured with their TLS certificate ^^).
It would be useful to be able to add a global parameter authorizing or not, badly managed certificates on the server side, without managing their changing fingerprints for each mapsource.
In best-effort, it would be great to dynamically generate and display server error message in tiles when the response error had payload with mime text/xxx better than a debug trace in log
Example "bad referer", "Missing parameter", "key not authorized" etc ...
Important Note: a clean solution MUST never cache or use for atlas creation, tiles with code! = 200 : ONLY FOR DISPLAY
And here is my dirty patch to manage it:
The idea of showing the error message in the preview map is nice. I have implemented a different approach as first draft that uses the TileDownloadException to get back all required information which is then only used in the preview map.
Hence the download and caching process itself should not be changed at all. Just the returned exception looks a little bit different, but that should not be a problem. However I did not had the chance to test it practically.
Thanks a lot for r2475 with "print error messages on tiles in the map preview"
You'll find attached a patch r2475_2 with some message improvement, payload image support and a "try catch" bug fix (TileDownLoader.java @@ -320,15 +320,17 @@)
You'll also find attached some customMapSource xml files with error simulation on my tile server, if you want to easily test.
Give me your feedback, hoping that my code is not too dirty ^^
thanks for the patch, it looks pretty good.
I have commited it with only some slight improvements regarding text data extraction (before the patch e.g. NZTopoMaps errors had a lot of HTML code inside):
MaxConnectionsPerHost:
My problem is that implementing a thread limitation on map source level is very difficult, because the thread count is set for a whole atlas. And as you can mix-up multiple map sources in one atlas we can't just aply the thread limitation for one map source.
I see only two possible solutions:
1. Get all MaxConnectionsPerHost values from all affected map sources and aply the minimum value.
2. Implement some rather complicated limitation system that even if you doanload using a large number of threads only x downloads for a certain map source can be active at a time. This would require to use a semaphore in each map source. It should work but would be a relative complex solutition.
Map source panel:
I don't know if a resizeable panel is possible at that point, as the component hierarchy is already very complex. A simpler hack would be to add a content menu to the panel header that allows to resize the panel to may be 3 pre-defined height values.
Concerning points 1 & 2 ,from what i saw code it does seem complicated (that's why I didn't even try to hack the code) and for my part, as long as I have workarounds with panel height patch and proxy in the middle, it can be leaved as is :)
In MOBAC map sources updating is not that simple, as it has to be implemented for every custom map source type by hand. I created a short test for maps of type CustomMapSource and CustomWmsMapSource.
1) As the method update the current mapsource tree and not recreate it, you may just precise somewhere that new or deleted files are not taken in account and the name, as UID, cannot be changed.
2) if name changed anyway, RuntimeException seems quite hard and display filename in stack trace may be easier than filesize ;)
This is supposed a quick introduction on how to render your own maps using openmtbmap.org style. Mind though, that I didn't update the mkgmap parameter options since a long time, as depending on the country I use quite different options. Check mkgmap docs for your best options.
This page only exists in English, because you will likely not succeed if you don't understand English. Diese Seite exisitert nur auf Englisch, da man ohne Englischkenntnisse es kaum schaffen wird, sehr viel weiterfuehrende Dokumentation ist nur auf Englisch verfuegbar.
Please note, I do not offer the style-file anymore. This has several reasons: a) I nearly offer worldwide coverage on maps. b) During the last two years, I got only twice a proposal for change. c) Quite a few people/companies copied stuff from the style-file, without proper attribution.
f) Put mkgmap.jar, splitter.jar and the maps (country.osm.bz2 - don't unextract them) to c:\garmin\mkgmap\ - the openmtbmap.org style has to be extracted and the files placed into c:\garmin\mkgmap\openmtbmap_style\. If you change the folder you simply have to change the commands bellow to fit.
Easiest is to copy the whole output (*.img *.tdb *.mdx ) into a new folder, and then use Mapsettoolkit (version 1.75 beta or newer) to register it in Mapsource. You will also need to use a typfile. You can open the .prj files to compile .TYP-files with maptk. Read -with-mapsettoolkit/ to see the details on how to do it. If you create a map of Europe or another large map, the index might be broken and prevent mapsource from starting up if registered. If so trash *.mdr.img and *.mdx and reinstall the map. Alternatively you could install nsis, and use nsis to create an installer.