Skip to content

Incorrect winmode in load_shared_library #1993

New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Open
LucaBenini opened this issue Apr 8, 2025 · 0 comments
Open

Incorrect winmode in load_shared_library #1993

LucaBenini opened this issue Apr 8, 2025 · 0 comments

Comments

@LucaBenini
Copy link

LucaBenini commented Apr 8, 2025

In the method load_shared_library the winmode specification is incorrect.

The actual code is:

cdll_args["winmode"] = ctypes.RTLD_GLOBAL

ctypes.RTLD_GLOBAL is not a value for winmode but only for mode argument.
The documentation is correct at https://docs.python.org/3/library/ctypes.html but confusing.

The winmode parameter is used on Windows to specify how the library is loaded (since mode is ignored). It takes any value that is valid for the Win32 API LoadLibraryEx flags parameter

The correct value should be None to use the default dll searching by ctype

Specifiy RTLD_GLOBAL (that is 0) will make the LoadLibraryEx search the dlls as the normal LoadLibrary function, behaving incorrectly and eventually not finding the dependencies.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

1 participant