64bit Restrictions

TomAndersonTomAnderson Posts: 11
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.

Comments

  • Brian DonahueBrian Donahue Posts: 6,590 New member
    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.
  • Thank you, it works great now. We can finally remove our x86 restrictions :)
  • 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 ?
  • Brian DonahueBrian Donahue Posts: 6,590 New member
    The backup reader dll is still 32-bit. Everything else is "any CPU". Sorry for the confusion.
  • 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.
  • Brian DonahueBrian Donahue Posts: 6,590 New member
    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.
  • 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
Sign In or Register to comment.