Accès aux DLL en Python avec des fonctionnalités natives
En Python, l'accès aux fichiers DLL peut être facilité via le module ctypes. Ce module fournit une approche simple pour appeler directement les fonctionnalités des DLL sans nécessiter de code wrapper C supplémentaire.
Pour utiliser une DLL de Python à l'aide de ctypes, suivez ces étapes :
Charger la DLL en mémoire :
hllDll = ctypes.WinDLL("c:\\PComm\\ehlapi32.dll")
Définir le prototype et les paramètres de fonction :
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
Configurer le mappage de fonctions :
hllApi = hllApiProto(("HLLAPI", hllDll), hllApiParams)
Appeler le Fonction 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))
Notez que l'exemple spécifique fourni suppose une interface IBM EHLLAPI, qui nécessite de passer quatre pointeurs vides. Pour les autres DLL, le prototype de fonction et les paramètres varient.
En utilisant les ctypes, vous pouvez accéder efficacement aux fonctionnalités DLL à partir de Python sans avoir besoin de code wrapper externe ou de bibliothèques tierces.
Clause de non-responsabilité: Toutes les ressources fournies proviennent en partie d'Internet. En cas de violation de vos droits d'auteur ou d'autres droits et intérêts, veuillez expliquer les raisons détaillées et fournir une preuve du droit d'auteur ou des droits et intérêts, puis l'envoyer à l'adresse e-mail : [email protected]. Nous nous en occuperons pour vous dans les plus brefs délais.
Copyright© 2022 湘ICP备2022001581号-3