Acessando DLLs em Python com funcionalidade nativa
Em Python, o acesso a arquivos DLL pode ser facilitado por meio do módulo ctypes. Este módulo fornece uma abordagem direta para invocar diretamente a funcionalidade de DLLs sem a necessidade de código wrapper C adicional.
Para usar uma DLL do Python usando ctypes, siga estas etapas:
Carregue a DLL na memória:
hllDll = ctypes.WinDLL("c:\\PComm\\ehlapi32.dll")
Definir protótipo e parâmetros da função:
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
Configurar mapeamento de funções:
hllApi = hllApiProto(("HLLAPI", hllDll), hllApiParams)
Chame o Função 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))
Observe que o exemplo específico fornecido assume uma interface IBM EHLLAPI, que requer a passagem de quatro ponteiros vazios. Para outras DLLs, o protótipo da função e os parâmetros variam.
Ao utilizar ctypes, você pode acessar com eficiência a funcionalidade DLL do Python sem a necessidade de código wrapper externo ou bibliotecas de terceiros.
Isenção de responsabilidade: Todos os recursos fornecidos são parcialmente provenientes da Internet. Se houver qualquer violação de seus direitos autorais ou outros direitos e interesses, explique os motivos detalhados e forneça prova de direitos autorais ou direitos e interesses e envie-a para o e-mail: [email protected]. Nós cuidaremos disso para você o mais rápido possível.
Copyright© 2022 湘ICP备2022001581号-3