Subject | RE: [firebird-support] Unable to load 64bit fbclient.dll |
---|---|
Author | Mark Rotteveel |
Post date | 2014-03-13T21:30:41Z |
On Thu, 13 Mar 2014 20:58:41 +0000, "Leyne, Sean"
<Sean@...> wrote:
%WINDIR%\SysWoW64 does. \bin contains the 64 bit one.
Proof using the dumpbin utility from Visual Studio (with /headers):
For \bin\fbclient.dll:
Dump of file C:\Program Files\Firebird\Firebird_2_5\bin\fbclient.dll
PE signature found
File Type: DLL
FILE HEADER VALUES
8664 machine (x64)
....
For \WoW64\fbclient.dll:
Dump of file C:\Program Files\Firebird\Firebird_2_5\WOW64\fbclient.dll
PE signature found
File Type: DLL
FILE HEADER VALUES
14C machine (x86)
however should never have done what they did with putting the 64 bit files
in System32 and the 64 bit in SysWoW64.
Delphi application. Or Delphi uses a 64 bit wrapper for what is actually a
32 bit application.
Mark
<Sean@...> wrote:
>> Apologies if this is a double post. My first time using Yahoo'sUnless your windows is 32 bit, then processes don't have that marker.
>> Firebird support
>> group.
>>
>> Platform: Windows 2008 Server R2
>>
>> I have Firebird 64 bit installed from the file:
>>
>> Firebird-2.5.2.26540_0_x64.exe
>>
>> The config is "Super Classic".
>>
>> I examine fb_inet_server.exe in Windows Task Manager and see no "*32"
>> beside the "Image Name" so I know it is running as a 64 bit process.
>>
>> I have made a Delphi XE3 .exe that connects to Firebird. I examine the
>> Delphi
>> .exe in Task Manager, and again, see no *32 beside it, so I know it is
>> running
>> as a 64 bit process.
>> When I try to connect to FB using the 854KB 64b fbclient at:No it doesn't. The WoW64 folder contains the 32 bit DLLs, just like the
>>
>> C:\Program Files\Firebird\Firebird_2_5\bin\fbclient.dll
>>
>> I get the error message "unable to load..."
>>
>> But when I load the 540KB 32bit fbclient.dll at
>>
>> C:\Program Files\Firebird\Firebird_2_5\WOW64\fbclient.dll
>>
>> it loads normally.
>>
>> What am I missing here that is preventing the 64b fbclient.dll from
>> loading?
>
> Actually, the WOW64 folder contains the x64 binaries (not the 32 bit)
%WINDIR%\SysWoW64 does. \bin contains the 64 bit one.
Proof using the dumpbin utility from Visual Studio (with /headers):
For \bin\fbclient.dll:
Dump of file C:\Program Files\Firebird\Firebird_2_5\bin\fbclient.dll
PE signature found
File Type: DLL
FILE HEADER VALUES
8664 machine (x64)
....
For \WoW64\fbclient.dll:
Dump of file C:\Program Files\Firebird\Firebird_2_5\WOW64\fbclient.dll
PE signature found
File Type: DLL
FILE HEADER VALUES
14C machine (x86)
> The folder should really be renamed "x64"No it shouldn't it is named correctly for what it contains. Microsoft
however should never have done what they did with putting the 64 bit files
in System32 and the 64 bit in SysWoW64.
> There is a open tracker case to have the "bitness" of the binaries addedMore likely the OP is using a 64 bit IDE to compile and run a 32 bit
> as a string to the Windows file information, to allow user/developers to
> confirm whether they are looking at 32 or 64 bit files/binaries.
Delphi application. Or Delphi uses a 64 bit wrapper for what is actually a
32 bit application.
Mark