2

a few years ago I was a Windows application developer. In the last years I am dealing with kernel and system software. Now: I have a customer who tells me that he has a 64bit C/C++ application with specific functionality. This functionality is a dongle request and comes from an external 32bit dll. He says that this functionality is given although I can not see the DLL in memory. If I delete the DLL, the 64bit application is still loaded.

That means the 32bit DLL is somehow a static part of the 64bit application.

Can that be true nowadays?

And if so how can I achieve that with Visual Studio?

Best regards Burkhardt

  • I don't believe what you are describing is possible in a direct sense. Our product (when running 64 bit) uses a 32 bit executable to perform 32 bit operations when they're required. It communicates via named pipe with the 64 bit client DLL when required. – Benj Feb 10 '12 at 15:05
  • 1
    That is an architectural solution, but: you'll find the 32bit dll in memory. But I can load the application so it is not a statical link(!) to the 32 bit dll, and I can not find it in memory so it is not dynamically ( LodLibrary..( ) ) reloaded. – user1202262 Feb 13 '12 at 11:39

1 Answers1

0

Based on what I have found on StackOverflow.com it is not possible to load a 32-bit DLL from a 64-bit application (or vice versa) dynamically or statically. There are however a few workarounds.

See the following:

Community
  • 1
  • 1
cdiggins
  • 17,602
  • 7
  • 105
  • 102