gpt4 book ai didi

python - 如何获取当前的Python DLL?

转载 作者:太空宇宙 更新时间:2023-11-03 18:52:44 24 4
gpt4 key购买 nike

我想通过 ctypes 加载当前的 Python DLL。我可以像 ctypes.windll.python33 一样加载它,但这取决于当前版本。我知道sys.dllhandle中有它的句柄,但我不知道如何转换ctypes DLL对象中的句柄。

最佳答案

也许 ctypes.pythonapi 更好?

来自ctypes/__init__.py的代码

if _os.name in ("nt", "ce"):
pythonapi = PyDLL("python dll", None, _sys.dllhandle)
elif _sys.platform == "cygwin":
pythonapi = PyDLL("libpython%d.%d.dll" % _sys.version_info[:2])
else:
pythonapi = PyDLL(None)

如果你想通过句柄加载库:

hndl = sys.dllhandle
pythondll = ctypes.CDLL('python dll', handle=hndl)

PyDLL 和 WinDll 是 CDll 的子类,并因 _func_flags_ 属性而异。

关于python - 如何获取当前的Python DLL?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/17930376/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com