[PD-dev] removing pd/bin/msvr*.dll from Pd/win

IOhannes m zmölnig zmoelnig at iem.at
Wed Jan 23 00:42:33 CET 2019


On 1/23/19 12:37 AM, IOhannes m zmölnig wrote:
> On 1/22/19 11:36 PM, Miller Puckette wrote:
>> Would this mean that anyone shipping a binary external for Windows would
>> have to put it in a separate directory with its own msvcrt.dll/msvcr90.dll?
>> Sounds like a nightmare to me.
> but i think that's really the only sane way.
> unless you can guarantee that Pd and all externals are built with the
> same compiler.
> 

although on re-reading [1],i have serious doubts whether there is any
safe way:
> If a DLL with the same module name is already loaded in memory, the
> system checks only for redirection and a manifest before resolving to
> the loaded DLL, no matter which directory it is in. The system does
> not search for the DLL.

which i translate to: if any external happens to load a library (e.g.
"msvcrt.dll"), then all externals loaded afterwards and depending on a
library of the same name are doomed to use the first "msvcrt.dll".

which is of course similar on unix...but there we typically have
soversions encoded in the filename which will help resolve this issue.

fgmrdsa
IOhannes



[1]
https://docs.microsoft.com/en-us/windows/desktop/dlls/dynamic-link-library-search-order#factors-that-affect-searching

-------------- next part --------------
A non-text attachment was scrubbed...
Name: signature.asc
Type: application/pgp-signature
Size: 833 bytes
Desc: OpenPGP digital signature
URL: <http://lists.puredata.info/pipermail/pd-dev/attachments/20190123/5dd7e11f/attachment.sig>


More information about the Pd-dev mailing list