On Windows system wide discid.dll seems to be preferred over local version
Closed this issue · 5 comments
This causes issues, as e.g. Picard might end up using a version of discid.dll not shiped with Picard.
In my case I had an older discid.dll in C:\bin (which is in my path), and in the Picard installation folder is the newer discid.dll version 0.6.1 shipped with the installer.
Is this a general ctypes issue or can this be influenced? Especially on Windows a local version should be preferred.
Hm, that is weird. That was already implemented a while ago (35ed421) I thought. (code now in libdiscid.py
Possibly the Picard installation has the discid.dll in a folder where it isn't expected? Although that would mean it wouldn't work at all without an installed libdiscid.
Maybe the dll has an unexpected name? python-discid searchs for: discid.dll
(default VS etc.), libdiscid.dll
and libdiscid-0.dll
(MinGW and Cygwin compilations I think). Although all pre-compiled libdiscid packages ship discid.dll
.
Possibly a problem in how py2exe works (similar to #42).
Anyways, right now (with that info) I can't say more than "This shouldn't be the case".
Another possibility: What is sys.platform
for you? I do remember that was win32
even for 64 bit Windows, but I might be mistaken or it changed (possibly only when it is a 64 bit Python on a 64 bit Windows).
(see for example http://stackoverflow.com/a/2145582)
Yes, sys.platform
is always win32
for both 32 and 64 bit (I haven't checked it now, but I have checked that so often I can say for sure).
First I had a file libdiscid.dll
in C:\bin
and discid.dll
in C:\Program Files (x86)\MusicBrainz Picard
and I thought it was due to the name. But even if I rename the file in C:\bin
to discid.dll
that is preferred. If I remove it from C:\bin
the one in Picards installation directory gets used.
I have found the issue, it is actually a Picard installer bug :)
The shortcut created for Picard in the start menu does set the run folder to C:\Program Files (x86)\MusicBrainz Picard\locale
. I will have a look why it does that (but I just did a reinstall to confirm)..
Sorry for creating useless tickets at the wrong place :(
Sorry for creating useless tickets at the wrong place :(
No problem. It is difficult to track down where the actual problem is sometimes.