views:

174

answers:

2

I'm working on a project that is using a DLL written in C that has both 32bit and 64bit compiles of the DLL for multiple reasons. The main application is written in Visual Basic 6. The component that brings in the functionality of the C DLL is a class within Visual Basic 6 that contains a module full of Public Declare Functions to the DLL object and the class is a wrapper to these functions in the module. So there are no references in the Visual Basic 6 project itself. So far I've finished coding the 32bit version fully and am happy with it. Should there be any concerns about just changing the file name in the module to point at the 64bit DLL that I'm not aware of. Since the 64bit DLL will be called to from a 32bit DLL within a 32bit application written in Visual Basic 6? Please don't hate me for still working in such an old language. It's a current project that I'm working on updating.

+2  A: 

You can't call 64 bit code from 32 bit. The only way to do this run the 64 bit code in a 64 bit process and use some sort of inter-process communication to talk to them.

shf301
+2  A: 

Raymond "The Old New Thing" has a nice article that explains why it is not possible to thunk from 32-bit to 64-bit.

Mark Wilkins
Thanks for the info. Interesting read at least...
Jeff