[pyar] Biometrica en Python con ctypes
Ramiro Morales
cramm0 en gmail.com
Jue Nov 18 18:04:59 ART 2010
2010/11/18 Luis A. Garcia <lagsistemas en gmail.com>:
> Hola gente:
> Pido mil disculpas por esta pregunta porque se que es muy de novato pero
> los únicos que me pueden ayudar son Uds
>
> Tengo la siguiente documentacion:
> File Name Description
> WisSensorNLib.dll COM object for Fingerprint Algorithem and the
> sensor control
> WisSensorNLib.tlb Type library of COM object
>
> SDK Functions
> Class Descriptions WisSensorN Main class in COM object
> Methods Descriptions
> Open Class open
> Close Class close
> StartEnroll Start enroll process
> IdentifyCapture Start capture for identification
> Identify Do identify
> VerifyCapture Start capture for verification
> Verify Do verify
> StopCapture Stop capture of identification or verification
> SetDisplay Set fingerprint image display
> Events Descriptions
> DataEvent Event process for enrollment, capture for identification,and
> capture for verification
>
> Hago esto:
> a = ctypes.CDLL ("lib\WisSensorNLib.dll",ctypes.RTLD_GLOBAL)
>
> y levanta la librería perfectamente
>
> Mi pregunta es? como hago para ejecutar los eventos, porque no son
> funciones, es una clase con sus eventos
> La verdad es que me cuesta mucho el tema de las clases/herencias etc.
>
> perdón por la pregunta pero no se a quien acudir. (hace unos messe que
> comencé a programar en Python)
>
Esa liberia usa COM no te conviene usar ctypes porque lo que vas a poder
es introspeccionar son y por otra parte tiene todo el mangling de nombre
que hace
Te conviene usar las facilidades com de pywin32 A grandes rasgos
(esto lo hice hace casi ocho años):
* Instalar pywin32.
* Registrar en el sistema, a nivel COM, si no lo has hecho ya, la libreria .DLL
* A partir de ese momento ya podes hacer que el código de win32com
introspeccione las interfaces y los objetos COM por vos analizando el
,TLB o la .DLL y generando el código wrappers Python. Esto creo que se
podía hacer en runtime o una sola vez usando un scrip make_py que te
genera uns .py bastante voluminosos cuyo nombre es el UUID
del componente COM.
* Una vez que tengas eso, podes instanciar objetos, llamar metodos,
etc. con sintaxis idéntica a la de si fueran clases nativas.
Aca seguro encontras mas info.
http://timgolden.me.uk/pywin32-docs/html/com/win32com/HTML/docindex.html
Suerte,
--
Ramiro Morales
More information about the pyar
mailing list