Доступ к DLL-файлам в Python с помощью встроенной функциональности
В Python доступ к DLL-файлам можно упростить с помощью модуля ctypes. Этот модуль предоставляет простой подход для прямого вызова функций DLL без необходимости дополнительного кода-оболочки C.
Чтобы использовать DLL из Python с использованием ctypes, выполните следующие действия:
Загрузите DLL в память:
hllDll = ctypes.WinDLL("c:\\PComm\\ehlapi32.dll")
Определить прототип функции и параметры:
hllApiProto = ctypes.WINFUNCTYPE(
ctypes.c_int, # Return type
ctypes.c_void_p, # Parameters ...
ctypes.c_void_p,
ctypes.c_void_p,
ctypes.c_void_p) # ... thru 4
Настройка сопоставления функций:
hllApi = hllApiProto(("HLLAPI", hllDll), hllApiParams)
Вызов функции DLL:
p1 = ctypes.c_int(1)
p2 = ctypes.c_char_p(sessionVar)
p3 = ctypes.c_int(1)
p4 = ctypes.c_int(0)
hllApi(ctypes.byref(p1), p2, ctypes.byref(p3), ctypes.byref(p4))
Обратите внимание, что в конкретном примере предполагается интерфейс IBM EHLLAPI, который требует передачи четырех указателей void. Для других DLL прототип функции и параметры будут отличаться.
Используя ctypes, вы можете эффективно получать доступ к функциям DLL из Python без необходимости использования внешнего кода-оболочки или сторонних библиотек.
Отказ от ответственности: Все предоставленные ресурсы частично взяты из Интернета. В случае нарушения ваших авторских прав или других прав и интересов, пожалуйста, объясните подробные причины и предоставьте доказательства авторских прав или прав и интересов, а затем отправьте их по электронной почте: [email protected]. Мы сделаем это за вас как можно скорее.
Copyright© 2022 湘ICP备2022001581号-3