Am Mittwoch, 16. April 2008 16:43:13 schrieb Rhys McGuckin:
There are two possible ways currently that I can think of, which would potentially solve this problem: 1. Have symbolic links within the system directory (I find this to be bad method, for multiple reasons) 2. Have some interception of the searching for files located within the system32, to include all of built-in dlls.
Many applications behave that way, and we create fake .DLL files in system32. They are real PE files from their file header, but they do not contain the implementation. When an app tries to LoadLibrary this DLL we load the builtin one instead
So we just have to add the needed DLLs to the fake DLL list. We don't add one there without an application requiring it, because it makes it harder to install MS library packages. E.g. the IE6 installer fails unless the user deletes a bunch of those faked DLLs first