Subject Re: [firebird-support] v2.5 64-bit DLL analog
Author Helen Borrie
At 08:00 a.m. 7/11/2013, lucas wrote:

>ok, yes, stefan, but what if i am using a 64-bit application under windows 7 or 8 64-bit? is there a comparable fdclient.dll but compiled in a 64-bit dll? if so, what is its name and default location, and if not,

>is it proper to have a 32-bit dll running under a 64-bit os and application?

No. A 64-bit app has to load the 64-bit client components. A 32-bit app has to load the 32-bit components. It's your responsibility to ensure that your application loads the bitness-correct client library.

You'll find a copy of the 32-bit fbclient.dll and also the 32-bit instclient.exe in the \WOW64 subdir of your 64-bit Firebird server installation. You can put the client library and any required bitness-compliant dependencies anywhere, just as long as you inform your application where to find it. That could be in the application code or by putting the location of the Firebird client components at the front of the client computer's PATH environment variable.

If you need other dependent 32-bit libraries (\intl\fbintl.dll, \bin\icu*.dll and/or UDF libs) you'll need to extract them from the 32-bit zip kit and PATH them, too. Actually, placing fbclient.dll (and firebird.msg, if needed) in a directory called something like d:\Firebird_2_5_32_bit, PATHing that, and placing the other libs under it in a \bin and an \intl directory should obviate the need to create separate PATH entries for each. (d: here is whatever local disk you decide to put them on.) I say SHOULD because I haven't got such a setup combination to test myself right now.

NB, as ^^list moderator^^, I request that you refrain from top-posting and excessive requoting.

Helen Borrie, Support Consultant, IBPhoenix (Pacific)
Author of "The Firebird Book" and "The Firebird Book Second Edition"