Jump to content

OS Version auslesen mit Batch


Der letzte Beitrag zu diesem Thema ist mehr als 180 Tage alt. Bitte erstelle einen neuen Beitrag zu Deiner Anfrage!

Empfohlene Beiträge

'VB2008-code, getestet unter XP/ win7

 

Imports System.Management

'Verweis auf System.Management einrichten

Module Module1

Sub Main()

Dim objQuery As New ObjectQuery("SELECT * FROM Win32_operatingsystem")

Dim searcher As New ManagementObjectSearcher(objQuery)

Dim caption As String = ""

Dim osa As String = ""

Dim spmv As String = ""

 

Try

For Each mem As ManagementObject In searcher.Get

caption = mem("Caption").ToString()

spmv = mem("ServicePackMajorVersion").ToString()

osa = mem("OSArchitecture").ToString() 'erst ab vista

Next

Catch

End Try

 

Console.WriteLine(caption & " " & osa + " SP" & spmv)

End Sub

 

End Module

 

Gibt sonst Compilerfehler. ;)

Link zu diesem Kommentar

Dim objQuery As New ObjectQuery("SELECT * FROM Win32_operatingsystem")
       Dim searcher As New ManagementObjectSearcher(objQuery)
       Dim caption As String = ""
       Dim osa As String = ""
       Dim spmv As String = ""

       Try
           For Each mem As ManagementObject In searcher.Get
               caption = mem("Caption").ToString()
               spmv = mem("ServicePackMajorVersion").ToString()

               [b]osa = Runtime.InteropServices.Marshal.SizeOf(GetType(IntPtr)) * 8 & "-Bit"[/b]
           Next
       Catch
       End Try

       'Console.WriteLine("Caption: " + My.Computer.Info.OSFullName)
       'Console.WriteLine("ServicePackMajorVersion: " + spmv)
       'Console.WriteLine("OSArchitecture: " + osa)
       'Console.WriteLine()

       Console.WriteLine(caption + " " + osa + " SP" + spmv)
       Console.Read()
       'Console.WriteLine(caption & " " & osa + " SP" & spmv)

 

 

Das funktioniert besser! :)

Link zu diesem Kommentar
Der IntPtr-Typ ist als ganzzahliger Typ mit plattformabhängiger Größe konzipiert. Das heißt, dass es sich bei 32-Bit-Hardware und 32-Bit-Betriebssystemen i. d. R. um eine 32-Bit-Instanz dieses Typ handelt und bei 64-Bit-Hardware und 64-Bit-Betriebssystemen um eine 64-Bit-Instanz des Typs.

 

Ich hohle mir halt damit die Größe des Datentyps IntPtr ( Byte ) und renche sie in Bit um.. somit habe ich die Architektur vom OS.

Link zu diesem Kommentar
Der letzte Beitrag zu diesem Thema ist mehr als 180 Tage alt. Bitte erstelle einen neuen Beitrag zu Deiner Anfrage!

Schreibe einen Kommentar

Du kannst jetzt antworten und Dich später registrieren. Falls Du bereits ein Mitglied bist, logge Dich jetzt ein.

Gast
Auf dieses Thema antworten...

×   Du hast formatierten Text eingefügt.   Formatierung jetzt entfernen

  Only 75 emoji are allowed.

×   Dein Link wurde automatisch eingebettet.   Einbetten rückgängig machen und als Link darstellen

×   Dein vorheriger Inhalt wurde wiederhergestellt.   Editor-Fenster leeren

×   Du kannst Bilder nicht direkt einfügen. Lade Bilder hoch oder lade sie von einer URL.

×
×
  • Neu erstellen...