none
Select Case SO sem o Build RRS feed

  • Pergunta

  • Ba galera

    Aprendi aqui com o grande amigo Jesiel, a realizar o select case do SO por Build conforme codigo abaixo, mais agora estou com um problema, quando executo o mesmo sobre windows 7 e windows 2008, o build é o mesmo e o que não era para executar no servidor esta sendo executado, existe alguma outra forma mais inteligente de realizar o select case de SO que nao use o Build.

    Codigo

    Select Case BldNum
    Case "2600"
    subXP
    Case "2195"
    subWin2000()
    End Select


    Sub subXP()
    wscript.echo "ESTA NA SUB XP"
    End sub


    subWIn2000()
    wscript.echo "ESTA NA SUB 2000"
    End sub
     
    valeu galera.

    quinta-feira, 22 de setembro de 2011 20:55

Respostas

  • Tente assim:

    Set dtmConvertedDate = CreateObject("WbemScripting.SWbemDateTime")

    Dim strSO

    strComputer = "."

    Set objWMIService = GetObject("winmgmts:" _

        & "{impersonationLevel=impersonate}!\\" & strComputer & "\root\cimv2")

     

    Set colOperatingSystems = objWMIService.ExecQuery _

        ("Select * from Win32_OperatingSystem")

     

    For Each objOperatingSystem in colOperatingSystems

        strSO = objOperatingSystem.Caption  

    Next

    If InStr(strSO,"7") Then

        WScript.Echo "Windows 7"

    End If

    If InStr(strSO,"2008 R2") Then

        WScript.Echo "Windows 2008 R2"

    End If

    If InStr(strSO,"XP") Then

        WScript.Echo "Windows XP"

    End If


    Gabriel Nascimento Enterprise Admin / CCNA http://gabrielnascimentoit.spaces.live.com -- Se for útil vote.
    • Marcado como Resposta Marcelo TI quinta-feira, 22 de setembro de 2011 21:55
    quinta-feira, 22 de setembro de 2011 21:38

Todas as Respostas

  • Tente assim:

    Set dtmConvertedDate = CreateObject("WbemScripting.SWbemDateTime")

    Dim strSO

    strComputer = "."

    Set objWMIService = GetObject("winmgmts:" _

        & "{impersonationLevel=impersonate}!\\" & strComputer & "\root\cimv2")

     

    Set colOperatingSystems = objWMIService.ExecQuery _

        ("Select * from Win32_OperatingSystem")

     

    For Each objOperatingSystem in colOperatingSystems

        strSO = objOperatingSystem.Caption  

    Next

    If InStr(strSO,"7") Then

        WScript.Echo "Windows 7"

    End If

    If InStr(strSO,"2008 R2") Then

        WScript.Echo "Windows 2008 R2"

    End If

    If InStr(strSO,"XP") Then

        WScript.Echo "Windows XP"

    End If


    Gabriel Nascimento Enterprise Admin / CCNA http://gabrielnascimentoit.spaces.live.com -- Se for útil vote.
    • Marcado como Resposta Marcelo TI quinta-feira, 22 de setembro de 2011 21:55
    quinta-feira, 22 de setembro de 2011 21:38
  • Valeu Gabriel funcionou tche.
    quinta-feira, 22 de setembro de 2011 21:55
  • Só não esqueça de acrescentar as versões de Windows que você tem no seu ambiente.

     

    Nesse caso coloquei só Windows 2008 R2, Windows 7 e Windows XP.

     

    Abraço.


    Gabriel Nascimento Enterprise Admin / CCNA http://gabrielnascimentoit.spaces.live.com -- Se for útil vote.
    quinta-feira, 22 de setembro de 2011 21:58