Running on Server Enterprise 64bit

Topics: General
Jul 13, 2010 at 9:08 PM

Hi,

I have a "Presentation" solution that's running on a vista 32 bit machine using VS 2008.

I then copy the entire solution over to a Windows Server Enterprise (64 bit OS), and convert the solution to VS 2010.

Upon running the WPF app again in this new environment I'm greeted with the following message:

Error 1 Unable to load the metadata for assembly 'GMap.NET.WindowsPresentation'. This assembly may have been downloaded from the web.  See http://go.microsoft.com/fwlink/?LinkId=179545.  The following error was encountered during load: Could not load file or assembly 'GMap.NET.WindowsPresentation, Version=1.0.0.0, Culture=neutral, PublicKeyToken=b85b9027b614afef' or one of its dependencies. Operation is not supported. (Exception from HRESULT: 0x80131515) C:\adCenter\src\CoverTrees\MapProject\Window1.xaml 1 1 MapProject

From what Iunderstand it's not able to load the assembly. Someone said that WPF should work fine in 64 bit so I gave it a try.

Any ideas?

Thanks!

Jul 13, 2010 at 9:26 PM

or one of its dependencies -> means, you can't use AnyCPU target in x64 system, because of sqlite ;}

Jul 13, 2010 at 9:46 PM

Thanks! So I set to x86 and that worked. I'm still confused about the SQLite. Should I use X86 version or not?  Right now I'm using the standard version, and that runs.

Jul 13, 2010 at 10:02 PM

Actually, now I'm in a situation where it compiles and runs, but the Designer won't load...

Jul 13, 2010 at 10:04 PM
Edited Jul 13, 2010 at 10:06 PM

sqlite provider for .net is in mixed mode with native code, so it simply can't be targeted to AnyCPU, you must use different dll for different target, usual stuff in native coding ;}

p.s. in latest versions there was temporary bug using designer, fixed in last changeset

May 11, 2011 at 1:05 AM

Absolutely love this product.  Does this mean that we have to create two applications, each with a different SQLite?  Is there a better solution?  I have some machines that are running a 64 bit operating system and some running a 32 bit system.  Thanks

May 11, 2011 at 10:58 AM

no, the latest version loads sqlite dynamically, just build targeting AnyCPU, provide two folders(x86 and x64) as content with appropriate sqlite dll, and it runs on every OS, check the demos how it's done

May 12, 2011 at 1:32 AM

Where in the demos?

May 12, 2011 at 7:16 AM

All demos use the same idea as i've explained

May 16, 2011 at 8:36 PM

I'm going to document this just in case someone else runs into the same difficulties I had.  In order to get sqllite to load dynamically and switch between x86 and x64 I had to change the following file/assembly properties.

The System.Data.SQLite assembly in References had Aliases=global, Copy Local=false and Specific Version=false.

The System.Data.SQLite.DLL files in the x64 and x86 folders had Build Action=None and Copy to Output Directory=Copy always.

 

May 16, 2011 at 9:19 PM

i've find the way to embed dll in resources, so folders will be unnecessary, but for now Yes, thx