Amostra de driver de leitor de listra magnética
O exemplo de driver de leitor de listras magnéticas demonstra como criar um driver universal para um leitor de listras magnéticas e destina-se a ser usado como modelo para criar um novo driver. O exemplo usa o User-Mode Driver Framework (UMDF) 2.0 e demonstra a funcionalidade básica, como reivindicar o dispositivo para acesso exclusivo. O driver de exemplo pode ser compilado e implantado nas plataformas x86, amd64 e Arm.
Requisitos
Windows 10
Microsoft Visual Studio (qualquer versão)
O Windows Software Development Kit (SDK) 10 também é necessário, mas isso é instalado como parte do Microsoft Visual Studio.
O driver de exemplo não requer nenhum hardware de leitor de tarja magnética para funcionar porque opera em um dispositivo de software. Se você tiver um dispositivo de hardware que deseja usar com o exemplo, ainda poderá usar o driver adicionando a ID de hardware do dispositivo ao arquivo INF.
Baixar e extrair o exemplo
Os exemplos de driver do Windows estão disponíveis no GitHub.
Baixe Windows-driver-samples-master.zip. Esse arquivo contém todos os exemplos do WDK (Windows Driver Kit).
Extraia Windows-driver-samples-master.zip para o local de sua escolha em seu computador de desenvolvimento. Esse local será conhecido como
<sample_root>
durante todo o restante deste artigo.
Abrir a solução de driver no Visual Studio
No Windows Explorer, navegue até a
<sample_root>\pos\drivers\MagneticStripeReader
pasta .Clique duas vezes no arquivo de solução MagneticStripeReader.sln para abrir a solução com o Visual Studio.
O arquivo zip do projeto foi baixado da Internet para que você possa ver um aviso de segurança ao abrir a solução. Se você fizer isso, clique em OK para concluir o carregamento do projeto.
No Visual Studio, localize Gerenciador de Soluções. Se isso ainda não estiver aberto, selecione Gerenciador de Soluções no menu Exibir. Em Gerenciador de Soluções, você pode ver o projeto e os arquivos de origem que ele contém.
Compilar o exemplo usando o Visual Studio
Na barra de ferramentas Standard no Visual Studio, selecione a Plataforma de Solução que corresponde à plataforma do sistema operacional. Por exemplo, se você estiver usando uma versão de 64 bits do Windows, selecione x64. Se estiver direcionando a plataforma Arm, você precisará usar o gerenciador de configurações para adicionar o Arm à sua lista de destinos.
Selecione Solução de compilação no menu Compilação.
Instalar o driver
Quando criado, o driver foi assinado com uma certificação de teste. Para instalar o driver para teste, você precisa alterar a configuração de inicialização para permitir que os drivers assinados com um certificado de teste carreguem. Para alterar a configuração, abra um prompt de comando com privilégios elevados e insira o comando :
bcdedit.exe /set TESTSIGNING on
Reinicialize o computador.
Observação
Se a assinatura de teste tiver sido habilitada anteriormente, uma reinicialização não será necessária.
Em um prompt de comandos com privilégios elevados, navegue até a pasta em que o projeto foi criado. Se você criou um build de depuração x64, essa pasta será
<project_root>\x64\Debug\SampleMagneticStripeReaderDrv
.Nessa pasta, você verá os seguintes arquivos:
Arquivo Descrição SampleMagneticStripeReaderDrv.dll O arquivo de driver. SampleMagneticStripeReaderDrv.inf Um arquivo INF que contém as informações necessárias para instalar o driver. samplemagneticstripereaderdrv.cat Um arquivo de catálogo assinado, que serve como a assinatura para todo o pacote. Identifique o caminho para o utilitário do Console de Dispositivo (devcon.exe) que corresponde ao sistema operacional e à plataforma de driver. Os locais padrão para a versão x64 são
C:\Program Files (x86)\Windows Kits\10\Tools\x64
.Digite o comando a seguir, substituindo <devcon_path> pelo caminho para o arquivo devcon.exe localizado na etapa anterior.
"<devcon_path>\devcon.exe" install SampleMagneticStripeReaderDrv.inf Root\SampleMagneticStripeReaderDrv
Você verá uma caixa de diálogo Segurança do Windows informando que o editor do driver não pode ser verificado. Isso ocorre porque o driver foi assinado com um certificado de teste. Clique em Instalar este software de driver de qualquer maneira. Em breve, você verá a confirmação de que o driver foi instalado corretamente.
Se o utilitário console do dispositivo não foi capaz de instalar o driver, confirme se você estava usando aquele que corresponde à plataforma atual do sistema operacional e à plataforma do driver.
Exibir o dispositivo no Gerenciador de Dispositivos
Abra o Gerenciador de Dispositivos. Isso pode ser feito de várias maneiras, mas se você ainda estiver em um prompt de comando, digite
devmgmt
.Em Gerenciador de Dispositivos, escolha Dispositivos por tipo no menu Exibir.
Seu dispositivo está listado no nó Exemplos .