Can 32-bit FireAPI applications run on x64 Windows?

1 view
Skip to first unread message

BruteForce

unread,
Nov 30, 2006, 3:47:59 AM11/30/06
to FireAPI
The short answer is NO, you can't run your 32-bit FireAPI application
on an x64 edition of Windows

The long answer is:
1. If you check this link
(http://msdn.microsoft.com/library/default.asp?url=/library/en-us/win64/win64/running_32_bit_applications.asp)
you will see that 32-bit processes cannot load 64-bit DLLs and 64-bit
processes cannot load 32-bit DLLs. There is no thunking layer of any
sort.
2. If you run your 32-bit application with a local copy of the x86
UB1394.DLL, the application will start and initialize with the 1394
stack but all calls to the 1394 device drivers will fail. This happens
because each request sent from the 32-bit UB1394.DLL to the drivers
passes a buffer that usually contains pointers. Pointers are double the
size in the x64 drivers, so the driver expects different buffer sizes
than those provided by the x86 version of UB1394.DLL, so the
buffer-size checking code in the drivers fails the request. It
doesn't crash the application, the calls simply fail.

Dimitris Staikos
Unibrain

Reply all
Reply to author
Forward
0 new messages