ThinkGeo.com    |     Documentation    |     Premium Support

Merge Module Problem for Rasters?

Hi,

I’ve created an installer for my product. The installed product works fine on the work machine I have installed ThinkGeo, but on other computers I have some problems.

On the other machines, whenever I try and load a raster layer, the program crashes. The same operation on my work machine works fine, so I am guessing I am missing some merge module or other dependency from my installer. Other functionality seems to work fine (i.e. load shapefile, etc.)

I got the merge modules from the Shared Developer Reference of the ThinkGeo installation directory.

In my installer, I referenced Microsoft_VC100_CRT, MicrosoftSqlServerSpatial, MapSuiteProj4, MapSuitePrjHelper, MapSuiteGeoRasterProjection and MapSuiteGeoTiff.

I’ve even tried installing the Map Suite Unmanaged Dependencies 9.0.569.0.msi on one of the other machines and still get the same crash.

Any ideas?

Thanks,
Damian

Hi Damian,

  1. Please view your event viewer in your crash machine and see whether you can get further information
  2. Your merge module should missed the Microsoft_VC100_DebugCRT
  3. Please make sure your msvcp100d.dll in target syswow64 folder
  4. The Unmanaged Dependencies 9.0.569.0.msi is our very new version, if that still cannot solved this crash, please sent us a sample contains test data, so we can reproduce that and try to find the reason.

Regards,

Don

Hi Don,

From the event viewer, it appears that the offending item is GeoRasterProjectionWrapperX64.dll and the stack trace (attached) claims the issue is regards to getting the bounding box.

Faulting module name: GeoRasterProjectionWrapperX64.dll, version: 0.0.0.0, time stamp:
Faulting module path: C:\Windows\SysWOW64\Map Suite 9.0\GeoRasterProjectionX64\GeoRasterProjectionWrapperX64.dll

I noticed that after I install my program using the supplied merge modules that there is a big difference in the time stamp of the merge module and that which is installed with the unmanaged dependencies installer. For note, if I install the unmanaged dependencies after I install my program, the unmanaged dependencies overwrite the merge module and my software will work. See below images.

The problem that I have now is that I need a merge module that will work. I previously downloaded the latest update (9.0.13.0) off the wiki.

Can you please also tell me which merge modules install which extensions? I need to know for example what merge module contains the GeoRasterX64 library as it does not get installed when I use the MapSuiteGeoRasterProjection.msm. Do I even need GeoRasterX64? The name seems to indicate I would need it for raster data. It does not appear to be in the 9.0.13.0 merge module download I mentioned above.

I’m using version 9.0.632.0 desktop edition if that helps.

From the merge module (which says it is version 9)

From the unmanaged dependencies (this works)

StackTrace.txt (3.0 KB)

Thanks,
Damian

Hi Damian,

We will build a special merge module contains the latest dlls you require, please wait my update here.

Regards,

Don

Thanks Don,

Looking forward to your reply.

Hi Damian,

Please download the updated merge module here and try whether it’s helpful for your problem.

https://ap.thinkgeo.com:5001/sharing/N4ucMZSYb

Regards,

Don

Hi Don,

I can confirm it works now.

It would appear that I don’t need the GeoRasterX64 library. What is this library for and why is it distributed with the unmanaged dependencies, but not in any merge module?

Thanks,
Damian

Hi Damian,

Do you means you hadn’t download the package but it works, or you download this then make your application works?

We hadn’t updated merge module unless user require about that, if you want to get the latest unmanaged dlls, you can get that from our setupUnmanagedDependencies.msi.

Regards,

Don

Hi Don,

After I include the new merge module, everything works.

My observation though is that unmanaged dependencies installer includes a library called GeoRasterX64 and that I don’t see any merge module for this library. I would just like to know what this libraries purpose is and if I should be including it in my distribution since I am working with rasters. If I should include it, you’ll need to make a merge module for it.

Regards,
Damian

Damian,

I am having this same issue as your original one.

How are you building your installer? Our’s is a WiX installer, and every time I try to rebuild it with the MapSuiteGeoRasterProjection as a part of it, I get an error about the language of the merge module not being supported. Did you encounter this?

Thanks,
Dib

Quick update:

I changed the Language parameter of the Merge element to “1033”, which eliminated the error, and allowed the installer to be built. There is still a problem, but that is being addressed in another thread. Just wanted to put in a fix for the WiX error we had been seeing.

Hi Dib,

Thanks for the comment. I am building using InstallShield LE. I didn’t get any problems.

Don,

Can you please check on the question I have on the usage of GeoRasterX64 lib?

Thanks,
Damian

Hi Damian,

In fact we don’t have a library named GeoRasterX64, that’s only the folder name. The dll in this folder is contained in the merge module MapSuiteGeoRasterProjection.msm, you can see the list in our wiki here: http://wiki.thinkgeo.com/wiki/map_suite_desktop_edition_deployment_guide

Regards,

Don

Hi Don,

I’m sorry, but that can’t be correct. Here is an image of the Map Suite 9.0 folder on a machine where I used my installer with your updated merge module (i.e. unmanaged dependencies has not been installed). This machine has no prior Map Suite products installed on it.

As you can see, there is no GeoRasterX64 directory, yet everything in my program is working just fine with respect to raster images.

I think this matter of merge modules needs more investigation. I can’t deploy software when I don’t know what libraries are really required for which functionality.

Regards,
Damian

Hi Damian,

From your above information, I found that there aren’t “GeoRasterX86” and “GeoRasterX64” in your Map Suite 9.0 folder.

I guess “MapSuiteEcw.msm” and “MapSuiteMrsid.msm” are required in your setup application.

Please package both of two merge modules (MapSuiteEcw.msm and MapSuiteMrsid.msm) into your application.

Thanks,