避免将DLL放入当前工作目录

2 投票
1 回答
572 浏览
提问于 2025-04-17 07:13

有没有办法让DLL文件不需要和使用它们的脚本放在同一个文件夹里呢?

我希望能把DLL文件放在一个地方,然后任何脚本都能找到它。

ctypes.CDLL()好像只能在当前工作目录(CWD)里找到DLL文件。把它放在sys.path里的某个地方,或者放在System32文件夹里都不行。

具体来说,我想让UniCurses能够找到pdcurses.dll,而不需要它在当前工作目录里。

1 个回答

2

试试这个:

pdcurses_path = ctypes.util.find_library('pdcurses.dll')
if pdcurses_path:
    pdcurses = ctypes.CDLL(pdcurses_path)
else:
    raise ImportError("could not locate pdcurses.dll library")

撰写回答