Observação
O acesso a essa página exige autorização. Você pode tentar entrar ou alterar diretórios.
O acesso a essa página exige autorização. Você pode tentar alterar os diretórios.
Este artigo detalha os problemas conhecidos relacionados ao WDK.
WDK para Windows 11, versão 26H1
Teste de driver com suporte do Visual Studio
Há suporte para testes de driver no Visual Studio a partir do Visual Studio 2022 versão 17.14.23 e posterior
WDK para Windows 11, versão 24H2
Desenvolvimento de Driver em Modo Kernel x86
A partir do Windows 11, versão 24H2, o WDK não dá mais suporte ao desenvolvimento de driver do modo kernel x86. Se você tiver uma necessidade empresarial de desenvolver drivers no modo kernel x86, use o WDK versão 23H2
Reiniciar após o provisionamento
Após o provisionamento e a implantação, a máquina destino não consegue reiniciar após as etapas de implantação.
Suporte a SxS do driver ARM64 WDK
Quando o kit do Windows 11, versão 24H2 e o kit do Windows 11, versão 22H2 estão instalados em uma máquina ARM64, a criação de um driver KMDF (Estrutura de driver de modo kernel) para ARM64 com TargetPlatformVersion definido como Windows 11, versão 22H2 falha com WdfDriverEntry.lib(stub.obj) : error LNK2001: unresolved external symbol.
Falha na instalação da extensão WDK
Se você estiver usando o Visual Studio versão 17.11.0 ou posterior, desmarque a caixa de seleção de extensão de instalação na instalação do WDK.
WDK para Windows 11, versão 22H2
Erro de serviço na inicialização
Se você instalou o Windows 11 original, versão 22H2 WDK entre maio e agosto de 2022 (versão 10.0.22621.1), poderá ver a seguinte mensagem de erro ao iniciar o Visual Studio com o WDK.
O Microsoft.Windows.Tools.WinIDE.Debugger.DebuggerPackage, DebuggerPackage, Version=10.0.0.0, Culture=neutral, PublicKeyToken=null pacote não foi carregado corretamente.
Esse problema foi corrigido no WDK versão 10.0.22621.382. Você pode desinstalar o WDK e, em seguida, reinstalar o mais recente usando as instruções em Baixar o Kit de Driver do Windows.
O depurador no Visual Studio não funciona
Não é possível depurar drivers na interface do Visual Studio ao usar o Visual Studio 2022 versão 17.2.0 e 17.3 com o Windows 11, versão 22H2 WDK (10.0.22621.382). Para solucionar o problema, execute uma das seguintes ações: atualizar o Visual Studio para 17.4.1 ou posterior, depurar com o WinDbg ou usar uma versão do Visual Studio anterior à 17.2.0. A seguinte mensagem de erro está relacionada a esse problema:
QueryBuildManagerBusyEx deve ser chamado na interface do usuário.
Os co-instaladores redistribuíveis do WDF (Windows Driver Framework) não funcionam
Os co-instaladores redistribuíveis do WDF não têm mais suporte. Isso causa problemas em computadores que têm o WDK do Windows 11, versão 22H2 e um WDK mais antigo instalados. Quando você tenta criar um driver WDF 1.11 em tal sistema, o msbuild falha. O build falha porque o msbuild não consegue localizar o co-instalador do WDF.
Para corrigir esse problema, antes de instalar o Windows 11, versão 22H2 WDK, faça backup da pasta \Program files (x86)\windows kit\10\redist\wdf e restaure-a depois. Como alternativa, se você instalou o Windows 11, versão 22H2 WDK, instale o arquivo MSI em componentes redistribuíveis do WDK 8 em um computador separado e copie a redist pasta para a \Program files (x86)\windows kit\10\redist\wdf pasta. Para obter mais informações, consulte Componentes da estrutura redistribuível
WDK para Windows 10, versão 2004
Problema nas funções ExAllocatePoolZero, ExAllocatePoolQuotaZero e ExAllocatePoolPriorityZero CORRIGIDO
Em maio de 2020, o OSR descobriu um problema com o novo suporte de nível inferior para zero automático de alocações de pool. O problema pode fazer com que uma alocação não seja inicializada com zeros em sistemas que executam o Windows 10, versão 1909. Isso foi corrigido com uma atualização de segurança do WDK para Windows 10, versão 2004 e do Enterprise WDK (EWDK) para Windows 10, versão 2004 em 16 de dezembro. A Microsoft aproveitou a atualização de segurança e atualizou o EWDK para incluir as ferramentas de compilação do Visual Studio 16.7. A Microsoft recomenda que todos os desenvolvedores de drivers desinstalem o SDK original e o WDK (versão 2004) e instalem o SDK de atualização e o WDK ou o EWDK.
Para garantir que houvesse uma solução de segurança completa em vigor, uma correção do sistema operacional foi lançada para o Windows 10, versão 1909 em novembro, portanto, se houvesse um driver criado com o problema de segurança, o sistema operacional estaria protegido contra ele.
Além de baixar o WDK/EWDK atualizado, a Microsoft recomenda que todos os drivers alternem todas as alocações do kernel para usar as novas DDIs de anulação do pool que retornam memória zerada por padrão. Isso aumenta a segurança e a confiabilidade do driver. Para ajudar nessa transição, a Microsoft criou uma regra do Verificador de Driver Estático, que está disponível nas versões prévias do WDK do Windows 10 20236 e posteriores. A regra identifica todas as instâncias no código-fonte de um driver em que os DDIs de alocação de pool antigos estão sendo usados e recomenda substituí-las pela nova DDI equivalente mais segura. A regra é aplicável a drivers baseados em WDM, WDF e NDIS.
A instalação do WDK não habilita mais as mitigações do Spectre para todos os projetos C++, como visto no WDK 1903
Embora a instalação do WDK habilite a mitigação do Spectre por padrão para todos os drivers, ele não os habilita mais para todos os projetos C++.
O erro "Um WDK correspondente ao destino '10.0.19041.0' não foi encontrado."
Ao selecionar [Versão do SDK do Windows] para '10.0 (versão mais recente instalada)' com o WDK 10.0.19041.0, ocorre o erro "Um WDK correspondente à versão de destino '10.0.19041.0' não foi encontrado", ainda que a versão do SDK esteja instalada.
Solução alternativa: na página de propriedades do projeto de driver (Propriedades de Configuração >Geral) defina Versão do SDK do Windows como $(LatestTargetPlatformVersion). Se essa opção não estiver disponível para seleção, escolha a opção herdar do pai ou padrão do projeto.
O EWDK e o SDV em execução no servidor têm requisitos do .NET
Executar o Verificador de Driver Estático do EWDK requer o .NET Framework 4.7.2. Dependendo da versão do Windows em seu sistema, o .NET pode estar instalado, pode ser instalado, mas precisa ser habilitado ou pode não estar instalado. Para obter mais informações sobre qual versão do .NET está instalada ou o estado da instalação do .NET, examine as versões e dependências do .NET Framework.
A geração de DVL falha com System.IO.FileNotFoundException
Ao tentar criar um DVL (Log de Verificação de Driver), o seguinte erro é apresentado:
Unhandled Exception: System.IO.FileNotFoundException.
Could not load file or assembl.
'System.Runtime, Version=4.2.1.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a.
or one of its dependencies.
The system cannot find the file specified.
Esse problema pode ocorrer nos ambientes de linha de comando e GUI. Esse problema é resolvido em uma versão futura do WDK e pode ser visto no Windows Insider Preview WDK. Infelizmente, não existe nenhuma solução alternativa para a versão atual.
O SDV falhará no EWDK se o VS não estiver instalado
O SDV tem uma dependência de VCRUNTIME140D.dll como parte do Visual Studio. Dessa forma, a execução do EWDK em um computador sem o VS instalado falha. Instale o Visual Studio no computador para contornar esse problema.
O Verificador de Driver não é habilitado/desabilitado ao usar o gerenciador de testes do WDK
O Verificador de Driver não é habilitado/desabilitado quando testes fundamentais do dispositivo são executados usando o Gerenciador de Testes do WDK.
Solução alternativa: No computador cliente, habilite/desabilite manualmente o verificador de driver de acordo com estas instruções.
Instalações lado a lado do WDK do Windows 10, versão 2004 e WDK Windows 10, versão 1903 ou versão 1803
Com ambas as versões de kits instaladas no mesmo computador, o recurso Implantar driver não funciona para a versão mais antiga.
Solução alternativa: Use 1803 em um computador separado se o recurso de Implantação de driver for necessário.
Os testes do WDTF (Windows Device Testing Framework) agora só são executados em sistemas com versões correspondentes do Windows 10 como o WDK
No WDK para Windows 10, versão 1809, foram feitas alterações no WDTF para oferecer suporte a esta versão do Windows 10, versão 1809. O efeito disso é que o WDTF não será mais executado no sistema operacional de nível inferior. A alteração continua com o WDK para Windows 10, versão 2004.
Alternativa para testes de nível inferior
Os testes do WDTF no WDK para Windows 10, versão 1803 podem ser executados em versões anteriores do Windows.
APIValidator
Em um computador de arco x86, o APIValidator não pode ser executado em binários x64. Se estiver criando drivers x64 em um computador x86, a APIValidator deverá ser desativada.
Solução alternativa:
Acesse a página de propriedades da solução de driver.
Selecione APIValidator, em seguida Geral e altere Executar ApiValidator de Sim para Não.
O WDK em execução em sistemas Windows 7 requer KB 3033929
Você deve instalar o Microsoft Security Advisory 3033929 (KB3033929) antes de instalar o WDK em sistemas que executam o Windows 7. É possível baixar o KB3033929 a partir do Central de Download da Microsoft.
A instalação do WDK gera um erro do Visual Studio informando que o componente do suplemento já está instalado
Essa mensagem de erro pode ser vista se o WDK foi desinstalado, mas a extensão de drivers do WDK para Visual Studio não foi desinstalada.
Resolução: No Visual Studio, vá para o menu suspenso Extensão , escolha Gerenciar Extensões, selecione o Kit de Driver do Windows e, em seguida, selecione Desinstalar.
perguntas frequentes
Como saber se as versões do WDK ou do EWDK que tenho contêm a correção para anulação das alocações de pool?
Em Configurações do Sistema acesse Adicionar ou Remover programas, procure Kit de Driver do Windows e anote a versão. O WDK original para Windows 10, versão 2004, tem uma versão 10.0.19041.1. A versão atualizada do WDK é 10.0.19041.685 Para o EWDK, depois que o ambiente EWDK é iniciado, examine o título da janela de comando. A versão atualizada contém vb_release_svc_prod1.19041.685. Além disso, ao examinar as variáveis de ambiente, a variável BuildLab deve exibir vb_release_svc_prod1.19041.685.
O SDK (Kit de Desenvolvimento de Software) do Windows também foi atualizado, isso é necessário?
Não, no entanto, o SDK (Windows Software Development Kit) atualizado contém uma correção para onecore.lib que pode ser bom ter. Além disso, geralmente é uma boa ideia manter o SDK e o WDK alinhados.
Se eu já tiver o WDK para Windows 10, versão 2004 instalado, preciso desinstalá-lo antes de instalar a versão atualizada?
Recomendamos que, se você tiver o SDK e o WDK originais de 2004, eles sejam desinstalados e o SDK de atualização de segurança e o WDK sejam instalados. Dito isso, se o WDK atualizado estiver instalado sobre o WDK original, a versão atualizada substituirá o original. Observação: neste cenário "Adicionar ou remover programas", ambas as versões são listadas.