Muestra del controlador lector de bandas magnéticas
El ejemplo de controlador lector de bandas magnéticas muestra cómo crear un controlador universal para un lector de bandas magnéticas y está pensado para usarse como plantilla para crear un nuevo controlador. En el ejemplo se usa User-Mode Driver Framework (UMDF) 2.0 y se muestra la funcionalidad básica, como reclamar el dispositivo para el acceso exclusivo. El controlador de ejemplo se puede compilar e implementar en plataformas x86, amd64 y Arm.
Requisitos
Windows 10
Microsoft Visual Studio (cualquier versión)
El Kit de desarrollo de software (SDK) 10 de Windows también es necesario, pero esto se instala como parte de Microsoft Visual Studio.
El controlador de ejemplo no requiere ningún hardware de lector de bandas magnéticas para funcionar porque funciona en un dispositivo de software. Si tiene un dispositivo de hardware que desea usar con el ejemplo, puede seguir usando el controlador agregando el identificador de hardware del dispositivo al archivo INF.
Descarga y extracción del ejemplo
Los ejemplos de controladores de Windows están disponibles en GitHub.
Descargue Windows-driver-samples-master.zip. Este archivo contiene todos los ejemplos del Kit de controladores de Windows (WDK).
Extraiga Windows-driver-samples-master.zip a la ubicación que prefiera en la máquina de desarrollo. En el resto de este artículo se hará referencia a
<sample_root>
esta ubicación.
Apertura de la solución de controlador en Visual Studio
En el Explorador de Windows, vaya a la
<sample_root>\pos\drivers\MagneticStripeReader
carpeta .Haga doble clic en el archivo de solución , MagneticStripeReader.sln para abrir la solución con Visual Studio.
El archivo ZIP del proyecto se descargó de Internet para que pueda ver una advertencia de seguridad al abrir la solución. Si lo hace, haga clic en Aceptar para terminar de cargar el proyecto.
En Visual Studio, busque Explorador de soluciones. Si aún no está abierto, seleccione Explorador de soluciones en el menú Ver. En Explorador de soluciones, puede ver el proyecto y los archivos de origen que contiene.
Compilación del ejemplo mediante Visual Studio
En la barra de herramientas Estándar de Visual Studio, seleccione la Plataforma de soluciones que coincida con la plataforma del sistema operativo. Por ejemplo, si usa una versión de 64 bits de Windows, seleccione x64. Si el destino es la plataforma Arm, deberá usar el administrador de configuración para agregar Arm a la lista de destinos.
En el menú Compilar, seleccione Compilar solución.
Instalación del controlador
Cuando se creó, el controlador se firmó con una certificación de prueba. Para instalar el controlador para las pruebas, debe cambiar la configuración de arranque para permitir que los controladores firmados con un certificado de prueba se carguen. Para cambiar la configuración, abra un símbolo del sistema con privilegios elevados y escriba el comando:
bcdedit.exe /set TESTSIGNING on
Reinicie la máquina.
Nota
Si la firma de prueba se había habilitado anteriormente, no es necesario reiniciar.
Desde un símbolo del sistema con privilegios elevados, vaya a la carpeta donde se compiló el proyecto. Si ha creado una compilación de depuración x64, esta carpeta será
<project_root>\x64\Debug\SampleMagneticStripeReaderDrv
.En esa carpeta, verá los siguientes archivos:
Archivo Descripción SampleMagneticStripeReaderDrv.dll El archivo del controlador. SampleMagneticStripeReaderDrv.inf Un archivo INF que contiene información necesaria para instalar el controlador. samplemagneticstripereaderdrv.cat Un archivo de catálogo firmado, que actúa como firma para todo el paquete. Identifique la ruta de acceso a la utilidad de consola de dispositivo (devcon.exe) que coincida con la plataforma del sistema operativo y del controlador. Las ubicaciones predeterminadas de la versión x64 son
C:\Program Files (x86)\Windows Kits\10\Tools\x64
.Escriba el siguiente comando, reemplazando <devcon_path> por la ruta de acceso al archivo devcon.exe que se encuentra en el paso anterior.
"<devcon_path>\devcon.exe" install SampleMagneticStripeReaderDrv.inf Root\SampleMagneticStripeReaderDrv
Verá un cuadro de diálogo de Seguridad de Windows que le informa de que el publicador del controlador no se puede comprobar. Esto se debe a que el controlador se firmó con un certificado de prueba. Haga clic en Instalar este software de controlador de todos modos. En un momento, verá la confirmación de que el controlador se instaló correctamente.
Si la utilidad Consola de dispositivos no pudo instalar el controlador, confirme que estaba usando la que coincide con la plataforma actual del sistema operativo y la plataforma del controlador.
Visualización del dispositivo en Administrador de dispositivos
Abra el Administrador de dispositivos. Esto se puede hacer de muchas maneras, pero si todavía está en un símbolo del sistema, escriba
devmgmt
.En Administrador de dispositivos, elija Dispositivos por tipo en el menú Ver.
El dispositivo aparece en el nodo Ejemplos .