64bit Restrictions

Automate and integrate using the SQL comparison API

Moderator: Chris Auckland

64bit Restrictions

Postby TomAnderson » Sun Jan 18, 2009 12:49 am

It has been a while since we have updated our SQL Compare version, and before upgrading I would like to find out if the 64 bit restrictions have been removed, or if we still need to compile our applications in 32 bit only.

Thanks in advance.
TomAnderson
 
Posts: 8
Joined: Wed Nov 15, 2006 8:12 pm

Postby Brian Donahue » Mon Jan 19, 2009 11:30 am

Hi Tom,

The assemblies in the version 7.1 SDK and up compile for "any CPU", so the SDk will run as 64-bit native on a 64-bit system. There are some dlls that are confined to 32-bit, I believe the backup reader is for technical reasons, so if you don't reference that dll you can compile the SDK application as "Any CPU" as well.

You can use microsoft's corflags utility to check the 32-bit flag on the Red Gate dlls to make absolutely sure that the dll you want to reference is 64-bit compatible.
Brian Donahue
 
Posts: 6670
Joined: Mon Aug 23, 2004 10:48 am

Postby TomAnderson » Thu Jan 22, 2009 4:14 am

Thank you, it works great now. We can finally remove our x86 restrictions :)
TomAnderson
 
Posts: 8
Joined: Wed Nov 15, 2006 8:12 pm

BackupReader

Postby FredMorin » Wed Jan 28, 2009 10:02 pm

Regarding the BackUpReader.

I use it in an application and it turns out some clients use Vista 64.

Sure enough, it doesnt work.

What it the solution ?
FredMorin
 
Posts: 7
Joined: Wed Nov 26, 2008 11:21 pm

Postby Brian Donahue » Thu Jan 29, 2009 10:23 am

The backup reader dll is still 32-bit. Everything else is "any CPU". Sorry for the confusion.
Brian Donahue
 
Posts: 6670
Joined: Mon Aug 23, 2004 10:48 am

Postby FredMorin » Thu Jan 29, 2009 12:59 pm

Sorry if I sound confused, but is there anyway to make the 32bit DLL which is reference in my .NET application to work in Vista 64.

I was never told by the client he needed support for vista 64 and now he realizes that we need it.
FredMorin
 
Posts: 7
Joined: Wed Nov 26, 2008 11:21 pm

Postby Brian Donahue » Thu Jan 29, 2009 3:19 pm

When you build your application, compile it as 32-bit. This will also run on 64-bit systems because these editions of Windows have a 32-bit emulation which will run the program (WOW).

In Visual Studio, the project properties panel contains this setting. For a C# project, it's the "Platform target" dropdown. Changing this to "x86" will set the flag in the assembly output that will cause the application to load the 32-bit .NET Runtime. This should solve your problem across the board.
Brian Donahue
 
Posts: 6670
Joined: Mon Aug 23, 2004 10:48 am

Postby ilya » Wed Dec 22, 2010 11:17 am

Hi Brian, we have the same problem with BackupReader.
We wrapp the data compare functionality we need in a dll, which will be used our asp.net application.
The dll using SDK is compiled for x86, with recommended options for the pree and post-build events (http://www.red-gate.com/supportcenter/C ... wledgebase\\all_SQL_products\\KB200806000268.htm&p=SQL%20Comparison%20SDK).
With the SQL Toolkit 6.0 we had no problems with backup reader dll and the above scenario.
Now with Comparison SDK 8.1 we have an exception "Cannot load Backup Reader dll!" on the code line:
IList<IBackupSet> backupSets = backupDB.GetBackupSets(files, passwords);
It doesn't help also to compile our asp.net application for x86.

Have you any ideas, how to get off of the exception?

Thanx
ilya
 
Posts: 13
Joined: Wed Jul 30, 2008 9:28 am


Return to SQL Comparison SDK Previous Versions

Who is online

Users browsing this forum: No registered users and 0 guests