In my project, I use a Delphi application that dynamically loads a DLL wrapper (exports C-Style functions), which, in turn, statically links to a bunch of third-party DLLs.
It works fine on my test machines, but on my client computer it failed to initialize the error message "Could not find entry point _somefunction @ 4AKKZ in TMYlibrary.dll".
After some research with the sysinternal process monitor, I realized that Windows will first look for DLL files in windows / sytem32, so if a DLL like my DLL is present in system32, windows will select it and try to find my entry point function in it - what does not work out.
Do you know that it is possible to change DLL DLLs in search of behavior?
Additional Information
- [ Refresh ]. The EXE file is located at the top level of the application folder tree.
- Wrapper and third-party DLL files located in the "Subfolder / bin" folder of my applications
- The dev platform is Windows XP / 7 using VS2008 for dlll and Delphi 2010 for the application.
source share