COMO IDENTIFICAR WINDOWS 95,98,NT,XP

USUARIO.EXCLUIDOS 10/12/2003 17:04:28
#588
ola pessoal.

como eu posso identificar através de codigo em VB , qual o windows que esta sendo utilizado ??

USUARIO.EXCLUIDOS 10/12/2003 22:08:56
#636
Resposta escolhida
Novamente, o exemplo vem de KPDTeam, adaptado.
Não está 100%, pois dependendo da versão, você pode ter as variações 2K,ME e XP. Mas é fácil de corregir.
O código abaixo irá lhe retornar um messagebox com a versão do Windows.
Cole tudo em um Form e ao carregá-lo o processo é disparado.

Private Declare Function GetVersionEx Lib "kernel32" Alias "GetVersionExA" (lpVersionInformation As OSVERSIONINFO) As Long
Private Type OSVERSIONINFO
dwOSVersionInfoSize As Long
dwMajorVersion As Long
dwMinorVersion As Long
dwBuildNumber As Long
dwPlatformId As Long
szCSDVersion As String * 128
End Type
Private Sub Form_Load()
Dim OSInfo As OSVERSIONINFO
Dim PId As String
Dim sSTR As String
Me.AutoRedraw = True
OSInfo.dwOSVersionInfoSize = Len(OSInfo)
Ret& = GetVersionEx(OSInfo)
If Ret& = 0 Then MsgBox "Error Getting Version Information": Exit Sub
Select Case OSInfo.dwPlatformId
Case 0: PId = "Windows 32s "
Case 1: PId = "Windows 95/98"
Case 2:
If sTR$(OSInfo.dwMajorVersion) 5 Then
PId = "Windows NT "
Else
PId = "Windows XP "
End If
End Select
sSTR = sSTR & "OS: " + PId & vbCrLf
sSTR = sSTR & "Win version:" + sTR$(OSInfo.dwMajorVersion) + "." + LTrim(sTR(OSInfo.dwMinorVersion)) & vbCrLf
sSTR = sSTR & "Build: " + sTR(OSInfo.dwBuildNumber) & vbCrLf
MsgBox sSTR
sSTR = Empty
End Sub

Há uma versão mais simples, usando o Getersion ao invés do GetVersionEx, mas eu optei por esta por lhe dar mais informações.

Valeu?
Tópico encerrado , respostas não são mais permitidas