ThinkGeo.com    |     Documentation    |     Premium Support

Problems with building x86, Any CPU Platforms

Our program structure is as follows;


MW11.EXE (Any CPU)

BASECLASS.DLL (Any CPU)

and...


MW11x86.EXE (x86)  (Same as MW11.EXE with just different platform)


The map program we've built (inside of BASECLASS.DLL) works fine when run from MW11.EXE, but on "some" PCs it blows up with the MW11x86.EXE.  We need to have this version so we can also integrate with the 32 bit version of Outlook.


The error we receive on "some" PCs is: 


"An attempt was made to load a program with an incorrect format". 


I'm guessing that it might be referring to SqlServerSpatial110.dll, but that file is located in the \Windows\System32 folder and also in the \Windows\SysWOW64 folder for good measure... 


Or, it could be the C++ libraries have also been installed, but I'm wondering if you have to do either a 32 bit version or a 64 bit version and you can't have both?  When I try to install the 32 bit version on these 64 bit Windows 7 machines it says that there are blocking issues..


Are there any other dependencies that I haven't considered??  Remember it DOES work when I run it from the EXE that was built as an "Any CPU", AND... it DOES work on other PCs... with the x86 EXE...so what can be different on the one's it's not working on?


Thanks!!  bob



Hi Bob, 
  
 What layers are you using in the map? And also could you please provide the stack trace of the exception? 
  
 Thanks, 
 Edgar

The layers I am using on the map are:


WorldMapKitWmsDesktopOverlay

InMemoryFeatureLayer 

LegendAdornmentLayer 

LegendPrinterLayer 

 


Here is the picture of the Stack Trace.



Thanks!! Bob



I think the version of SqlServerSpatial110.dll in X86 machine’s System32 folder is wrong, are you putting the X64 version (751kb) into the folder? If so please change it to the X86 version which is 510kb. 
  
 Regards, 
 Edgar

Can you tell me where I can find the different versions of SqlServerSpatial110.dll ? 
  
 Thanks. Bob

Hi Bob,  
  
 You can find the two versions of this dll at C:\Program Files (x86)\ThinkGeo\Map Suite Desktop Evaluation Edition 6.0\Developer Reference\Desktop Edition.  
  
 You should see a SqlServerTypes_X64 and a SqlServerTypes_x86 folder that contain the respective dlls.

Hmmmm. Thank you. But, they are not there... Just to be sure, I re-downloaded the Eval (although I do have a licensed copy) and the files you mention are not in any of the folders. 



Ideas? Thanks. 



bob



I found them.  Not where you said, but I searched my development PC and found one in the \System32 folder and the other in the \SysWOW64 folder.  Now my question is do I have the latest version?  They are both dated 8/29/2012.  If not, then where do I find the latest version? 
  
 Thanks.  Bob

Bob, there is only one version of this dll at this time so you should have the latest. :)

Perfect.  We are in FAT City. 
  
 Have a great day…thanks for your help. 
  
 bob

Thank you for your feed back, please let us know if you have any questions. 
  
 Regards, 
 Edgar