none
Script VBS - Affichage IP, nom de la machine, OS.

    Discussion générale

  • Bonjour,

    Je suis apprenti dans le service informatique de mon entreprise, et nous avons à disposition un fichier .exe qui lorsque l'on le lance, affiche dans une boîte de dialogue :

    Nom de la machine : X
    Adresse IP : X.X.X.X
    OS : Windows XP Service Pack 1

    Le but de cette application est de pouvoir prendre rapidement la main sur les machines à distance en demandant à l'utilisateur d'ouvrir l'application afin de nous transmettre son adresse IP et se connecter à distance.

    Une amélioration doit être effectuée au niveau de l'OS.
    Comme vous l'aurez remarqué dans la ligne OS, j'ai mis Windows XP car celui reste figé alors que notre parc informatique est sur du Windows 7 :)

    J'ai trouvé un script .VBS que j'ai converti en .EXE permettant d'afficher l'adresse IP et le nom de la machine, mais pas l'OS.

    Auriez-vous une solution s'il vous plaît, merci.

    Bien cordialement.

    mardi 14 novembre 2017 06:13

Toutes les réponses

  • Set dtmConvertedDate = CreateObject("WbemScripting.SWbemDateTime")
    strComputer = "."
    Set objWMIService = GetObject("winmgmts:{impersonationLevel=impersonate}!\\" & strComputer & "\root\cimv2")
    Set oss = objWMIService.ExecQuery ("Select * from Win32_OperatingSystem")
    
    For Each os in oss
        Wscript.Echo "Boot Device: " & os.BootDevice
        Wscript.Echo "Build Number: " & os.BuildNumber
        Wscript.Echo "Build Type: " & os.BuildType
        Wscript.Echo "Caption: " & os.Caption
        Wscript.Echo "Code Set: " & os.CodeSet
        Wscript.Echo "Country Code: " & os.CountryCode
        Wscript.Echo "Debug: " & os.Debug
        Wscript.Echo "Encryption Level: " & os.EncryptionLevel
        dtmConvertedDate.Value = os.InstallDate
        dtmInstallDate = dtmConvertedDate.GetVarDate
        Wscript.Echo "Install Date: " & dtmInstallDate 
        Wscript.Echo "Licensed Users: " & os.NumberOfLicensedUsers
        Wscript.Echo "Organization: " & os.Organization
        Wscript.Echo "OS Language: " & os.OSLanguage
        Wscript.Echo "OS Product Suite: " & os.OSProductSuite
        Wscript.Echo "OS Type: " & os.OSType
        Wscript.Echo "Primary: " & os.Primary
        Wscript.Echo "Registered User: " & os.RegisteredUser
        Wscript.Echo "Serial Number: " & os.SerialNumber
        Wscript.Echo "Version: " & os.Version
    Next

    mardi 14 novembre 2017 07:56
  • Merci pour votre proposition, mais n'ayant quasiment aucune notion en terme de VBScript, j'aimerai pouvoir combiner ces trois éléments dans la même boîte de dialogue :

    Adresse IP : X.X.X.X
    Nom de la machine : XXXX
    OS : Windows X

    Actuellement, le script que je possède affiche :

    Adresse IP : X.X.X.X
    Nom de la machine : XXXX

    Il me manque donc la troisième ligne concernant la version de l'OS installé sur la machine.


    SCRIPT ACTUEL à compléter avec l'OS :

    dim NIC1, Nic, StrIP, CompName
    
    Set NIC1 = GetObject("winmgmts:").InstancesOf("Win32_NetworkAdapterConfiguration")
    
    For Each Nic in NIC1
    
    if Nic.IPEnabled then
    
    StrIP = Nic.IPAddress(i)
    
    Set WshNetwork = WScript.CreateObject("WScript.Network")
    
    CompName = WshNetwork.Computername
    
    Dim WMI, Configs, Config, Adapters, Adapter
    
    Set WMI = GetObject("winmgmts:{impersonationlevel=impersonate}root/cimv2")
    
    ' BEGIN CALLOUT A
    Set Configs = WMI.ExecQuery("Select * From Win32_NetworkAdapterConfiguration Where IPEnabled=True")
    ' END CALLOUT A
    
    For Each Config In Configs
    ' BEGIN CALLOUT B
      Set Adapters = WMI.AssociatorsOf("Win32_NetworkAdapterConfiguration.Index=" & Config.Index, "Win32_NetworkAdapterSetting")
    ' END CALLOUT B
      For Each Adapter In Adapters
        'If Left(Adapter.Description, 14) = "Cisco AnyConnect VPN Virtual Miniport Adapter for Windows" Then
          VPNIP = Config.IPAddress(0)
    
        'End If
      Next
    Next
    
    MsgBox "Adresse IP:  "&StrIP & vbNewLine _
    & "Nom de la machine:  "&CompName ,4160,"Adresse IP"
    
    wscript.quit
    
    end if
    
    next
    


    jeudi 16 novembre 2017 05:49
  • Je possède également un script me permettant d'afficher l'OS.

    Si j'arrive à combiner ces deux scripts dans une même boîte de dialogue, ça serait super :)

    Set dtmConvertedDate = CreateObject("WbemScripting.SWbemDateTime")
    strComputer = "."
    strResultat=""
    Set objWMIService = GetObject("winmgmts:" _
        & "{impersonationLevel=impersonate}!\\" & strComputer & "\root\cimv2")
    Set colOperatingSystems = objWMIService.ExecQuery _
        ("Select * from Win32_OperatingSystem")
    For Each objOperatingSystem in colOperatingSystems
        strResultat=strResultat &  objOperatingSystem.Caption & vbCR
        strResultat=strResultat & "Version: " & objOperatingSystem.Version & vbCR
        strResultat=strResultat & "Utilisateur enregistré: " & objOperatingSystem.RegisteredUser & vbCR
    Next
    MsgBox strResultat,64,"OSLang"


    jeudi 16 novembre 2017 05:52
  • L'affiche se fait avec wscript.echo 
    jeudi 16 novembre 2017 13:46