python使用ctypes调用DLL时无法退出程序

问题描述 投票:0回答:1

我正在使用 ctypes 调用 C DLL,一切正常。但是当我的程序结束时,python 无法按预期退出,似乎程序在那一刻挂起。

from ctypes import *

mydll = CDLL(C_DLL)

 DO SOMETHINF HERE

print("Complete the operation")

我可以得到字符串“完成操作”,并且 DLL 中的函数也运行良好。但pycharm没有提到“进程已完成,退出代码-1”。而且代码似乎仍在运行。

我尝试在代码末尾添加释放操作。但它们都不起作用。

  • windll.kernel32.FreeLibrary(mydll._handle)
  • 删除 mydll

有人面临此类问题吗?顺便说一句,我使用的是 python 3.12.2 32 位,dll 也是 32 位。非常感谢!

尝试了以下两种方法来释放dll,但都不起作用

  • windll.kernel32.FreeLibrary(mydll._handle)
  • 删除 mydll
python dll ctypes
1个回答
0
投票

试试这个:

import sys
sys.exit(0)
© www.soinside.com 2019 - 2024. All rights reserved.