Originally posted by oiaohm
View Post
Originally posted by oiaohm
View Post
With a KnownDLL, you can't load another DLL with the same name.
With global namespace for symbols, you can't load another SYMBOL with the same name.
With a KnownDLL, you can import the symbol called HeapAlloc from any other library and it won't conflict with kernel32.dll's HeapAlloc, as they are separate symbols. What you can't do, though, is load a DLL name kernel32.dll, which is a completely different thing.
I blame ELF not because you can't load two libs with same name (that's useless), but because you can't load libfoo's HeapAlloc at the same time as kernel32's HeapAlloc (note libfoo is called libfoo, not kernel32, i.e. different names).
Once again, we're talking in circles. For the love of whatever is holy, please make the difference between the NAME of the module and the SYMBOL.
If you still can't grasp this I'm afraid I'm really done with this cause it's getting tiresome repeating it over and over again.
Originally posted by oiaohm
View Post
Comment