Разница между параметром use_errno в ctypes и классами совместно используемых библиотек и прототипами функций? - PullRequest
1 голос
/ 20 октября 2011

Классы общей библиотеки CDLL, OleDLL, WinDLL каждый принимает параметр use_errno. Так же поступают прототипы функций , CFUNCTYPE, WINFUNCTYPE. Когда и в какую группу я передаю use_errno=True и почему?

1 Ответ

0 голосов
/ 23 октября 2011

Вот трекер ошибок для его включения:

Этот патч добавляет новые соглашения о вызовах к внешним функциям ctypes. передача 'errno = True' или 'GetLastError = True' в CDLL или WinDLL конструктор.

Если используется CDLL (..., errno = True) или WinDLL (..., errno = True), функциональные объекты, доступные в экземпляре CDLL или WinDLL, установят C global errno в ноль до фактического вызова, и присоедините C global значение errno после вызова в качестве атрибута 'errno' для функции объект. Этот атрибут хранится в локальном хранилище потока.

...