Versão do sistema operacional
As funções auxiliares da API de versão são usadas para determinar a versão do sistema operacional que está em execução no momento. Para obter mais informações, consulte Obtendo a versão do sistema.
A tabela a seguir resume os números de versão mais recentes do sistema operacional.
Sistema operacional | Número de versão |
---|---|
Windows 11 | 10.0* |
Windows 10 | 10.0* |
Windows Server 2022 | 10.0* |
Windows Server 2019 | 10.0* |
Windows Server 2016 | 10.0* |
Windows 8.1 | 6.3* |
Windows Server 2012 R2 | 6.3* |
Windows 8 | 6.2 |
Windows Server 2012 | 6.2 |
Windows 7 | 6.1 |
Windows Server 2008 R2 | 6.1 |
Windows Server 2008 | 6,0 |
Windows Vista | 6,0 |
Windows Server 2003 R2 | 5.2 |
Windows Server 2003 | 5.2 |
Windows XP 64-Bit Edition | 5.2 |
Windows XP | 5.1 |
Windows 2000 | 5,0 |
*Para aplicativos que foram manifestados para Windows 8.1 ou Windows 10. Os aplicativos não manifestados para Windows 8.1 ou Windows 10 retornarão o valor de versão do sistema operacional Windows 8 (6.2). Para manifestar seus aplicativos para Windows 8.1 ou Windows 10, consulte Direcionando seu aplicativo para Windows.
Identificar o sistema operacional atual geralmente não é a melhor maneira de determinar se um recurso específico do sistema operacional está presente. Isso ocorre porque o sistema operacional pode ter adicionado novos recursos em uma DLL redistribuível. Em vez de usar as funções auxiliares da API de versão para determinar a plataforma do sistema operacional ou o número de versão, teste a presença do próprio recurso.
Para determinar a melhor maneira de testar um recurso, consulte a documentação do recurso de interesse. A lista a seguir discute algumas técnicas comuns para detecção de recursos:
- Você pode testar a presença das funções associadas a um recurso. Para testar a presença de uma função em uma DLL do sistema, chame a função LoadLibrary para carregar a DLL. Em seguida, chame a função GetProcAddress para determinar se a função de interesse está presente na DLL. Use o ponteiro retornado por GetProcAddress para chamar a função. Observe que, mesmo que a função esteja presente, pode ser um stub que retorna apenas um código de erro, como ERROR_CALL_NOT_IMPLEMENTED.
- Você pode determinar a presença de alguns recursos usando a função GetSystemMetrics . Por exemplo, você pode detectar vários monitores de exibição chamando GetSystemMetrics(SM_CMONITORS).
- Há várias versões das DLLs redistribuíveis que implementam recursos de shell e controle comum. Para obter informações sobre como determinar quais versões estão presentes no sistema em que seu aplicativo está sendo executado, consulte o tópico Shell e Common Controls Versions.
Se você precisar de um sistema operacional específico, use-o como uma versão mínima com suporte, em vez de projetar o teste para o sistema operacional. Dessa forma, o código de detecção continuará funcionando em versões futuras do Windows.
Observe que um aplicativo de 32 bits pode detectar se ele está em execução em WOW64 chamando a função IsWow64Process . Ele pode obter informações adicionais do processador chamando a função GetNativeSystemInfo .
Para obter mais informações, consulte Windows 10 informações sobre a versão e a folha de fatos do ciclo de vida do Windows.