On Thu Sep 19 17:22:53 2024 +0000, Paul Gofman wrote:
Signature check is probably extreme, but there is publisher in version info, maybe that could be checked in theory, although it probably still rather ad-hoc solution. In a generic case there might be some non-MS libs we want to prefer builtin for, like GPU vendor libs. But upstream Wine currently doesn't have such, so maybe that is not a concern.
That sounds to me like the purpose of builtin DLLs is not to replace only Microsoft DLLs; it exists to replace whatever well-known DLLs we want to reimplement (e.g., wpcap) in order to provide a functional wineprefix.
Then the current strategy of identifying DLLs solely by its basename is probably *wrong* to begin with; maybe we should check the full `(basename, publishername)` tuple or something. Like WinSxS assembly identifiers, but maybe simpler.
Again, I'm probably not the most knowledgeable person here and I have possibly missed something here. (If so, sorry about that!) But the oscillation of "native vs. builtin" has been a lingering problem since the millennium, and I can only see this debacle continue until we get rid of this dichotomy in favor of a more expressible DLL-override system.