Problemas de função CreateWindowEx para aplicativos de 32 bits no Windows 10

Em alguns casos, após uma atualização para uma versão mais recente, o Windows 10 causa falhas ou outros problemas ao chamar a função CreateWindowEx do (CreateWindowEx)msctf.dll quando as janelas são criadas em alguns aplicativos de 32 bits. Neste post, vamos entender o que é a  função CreateWindowEx – explorar as possíveis causas desse erro de função e, em seguida, fornecer a solução recomendada para mitigar o problema.

Entendendo a função CreateWindowEx

Função CreateWindowEx

Aplicativos do Windows(Windows) , incluindo aplicativos .NET que usam Windows Forms ou Windows Presentation Foundation ( WPF ), criam suas janelas chamando as funções CreateWindowExA ou CreateWindowExW .

Ambas as funções chamam internamente uma função USER32 comum que executará alguma validação de parâmetro, como os estilos de janela e os identificadores especificados na chamada, lidando com a criação de uma janela filho MDI se o estilo de janela estendida (MDI)WS_EX_MDICHILD for especificado e processa o contexto de ativação atual para a chamada fio. Se tudo estiver bem no lado USER32(USER32-side) da chamada CreateWindowEx , ele chamará a implementação do modo kernel ( (CreateWindowEx)WIN32K ) de CreateWindowEx .

CreateWindowEx executará as seguintes tarefas ao tentar criar um novo objeto de janela:

  • Determine se a criação de um identificador para o novo objeto de janela excederá o  limite de cota de identificador de usuário para o processo de chamada.(User)
  • Aloca memória para o novo objeto de janela do heap da área de trabalho.
  • Inicializa a memória para o novo objeto de janela.
  • Cria um identificador para o novo objeto de janela na tabela de identificadores de usuário .(User)

Causas de falhas do CreateWindowEx

Algumas condições que podem acionar o problema da função CreateWindowEx são enumeradas da seguinte forma:

  • A classe de janela especificada não existe.
  • Usando estilos de janela inválidos ou estilos de janela estendidos.
  • Usando alças de usuário(User) inválidas , como alças de janela e alças de menu.
  • Tentativa de criar uma janela filho sem especificar uma janela pai.
  • A tentativa de criar uma janela filho ou uma janela de propriedade e o pai/proprietário especificado pertence a uma área de trabalho diferente do thread de chamada.
  • A criação de uma janela filha ou de propriedade excederá o limite de janelas aninhadas.
  • A criação de um novo objeto de janela excederá a cota de tratamento para o processo de chamada.
  • Não há heap suficiente disponível no heap da área de trabalho para alocar memória para o novo objeto de janela.
  • Não há entradas disponíveis na tabela User handle.(User)

Corrigir(Fix CreateWindowEx) problemas de função CreateWindowEx para aplicativos de 32 bits no Windows 10

A Microsoft(Microsoft) forneceu uma solução alternativa para os problemas de função CreateWindowEx .

Para contornar esse problema, você precisará reverter a instalação do Windows 10 para a versão anterior.

A opção de reversão no Windows 10 está disponível por 10 dias(10 days) (na maioria dos casos) após a atualização da instalação do Windows 10.

Essa operação mantém seus arquivos pessoais, mas remove aplicativos e drivers que foram instalados após a atualização e também reverte quaisquer alterações feitas nas configurações.

Se a opção de reversão não estiver disponível – faça backup de seus arquivos pessoais , você poderá entrar em contato com o suporte de TI ou o suporte técnico ou o Suporte da Microsoft(Microsoft Support) para obter ajuda para restaurar seu dispositivo para a versão anterior do Windows 10(Window 10) .

That’s it!

PS : A Microsoft está trabalhando em uma resolução e fornecerá uma atualização na próxima versão do Windows 10 .



About the author

Sou um desenvolvedor web com experiência em trabalhar com Windows 11 e 10. Também sou usuário do Firefox há muitos anos e me tornei bastante proficiente no uso do novo console de jogos Xbox One. Meus principais interesses estão no desenvolvimento de software, especificamente no desenvolvimento web e móvel, bem como na ciência de dados. Tenho muito conhecimento sobre vários sistemas de computador e seu uso, por isso posso fornecer feedback imparcial sobre vários programas ou serviços que você pode usar.



Related posts