SO WIRD'S GEMACHT: Bestimmen der Version von Windows mit Visual C# .NET

SPRACHE AUSWÄHLEN SPRACHE AUSWÄHLEN
Artikel-ID: 304283 - Produkte anzeigen, auf die sich dieser Artikel bezieht
Dieser Artikel wurde zuvor veröffentlicht unter D304283
Dieser Artikel ist eine Übersetzung des folgenden englischsprachigen Artikels der Microsoft Knowledge Base:
304283 HOW TO: Determine Windows Version Using Visual C# .NET
Bitte beachten Sie: Bei diesem Artikel handelt es sich um eine Übersetzung aus dem Englischen. Es ist möglich, dass nachträgliche Änderungen bzw. Ergänzungen im englischen Originalartikel in dieser Übersetzung nicht berücksichtigt sind. Die in diesem Artikel enthaltenen Informationen basieren auf der/den englischsprachigen Produktversion(en). Die Richtigkeit dieser Informationen in Zusammenhang mit anderssprachigen Produktversionen wurde im Rahmen dieser Übersetzung nicht getestet. Microsoft stellt diese Informationen ohne Gewähr für Richtigkeit bzw. Funktionalität zur Verfügung und übernimmt auch keine Gewährleistung bezüglich der Vollständigkeit oder Richtigkeit der Übersetzung.
Alles erweitern | Alles schließen

Auf dieser Seite

Zusammenfassung

Dieser Artikel mit schrittweiser Anleitung beschreibt, wie Sie bestimmen können, auf welchem Betriebssystem Ihre Anwendung ausgeführt wird. Dieser Artikel enthält unterschiedliche Verfahrensweisen für Microsoft Windows 95, Microsoft Windows 98, Microsoft Windows 98 Second Edition, Microsoft Windows Millennium Edition (Me), Microsoft Windows NT 3.51, Microsoft Windows NT 4.0, Microsoft Windows 2000 und Microsoft Windows XP.

Voraussetzungen

  • Microsoft Visual C# .NET
  • Fortgeschrittene Kenntnisse in der Programmierung mit Visual C#

Abrufen der Windows-Versionsinformationen

Wenn Sie das auf dem System ausgeführte Betriebssystem bestimmen möchten, müssen Sie die folgenden Daten abrufen:

Tabelle minimierenTabelle vergrößern
Windows 95Windows 98Windows MeWindows NT 4.0Windows 2000Windows XP
Plattform-ID 1 1 1 2 2 2
Hauptversion 4 4 4 4 5 5
Nebenversion 0 10 90 0 0 1

HINWEIS: Der Code in diesem Artikel untersucht das System zwar auf alle 32-Bit-Versionen von Windows, jedoch werden Microsoft Visual Studio .NET bzw. Common Language Runtime nicht von Windows 95 und Windows NT 3.51 unterstützt.

Abrufen der Betriebssysteminformationen

Der Namespace System enthält eine Klasse namens OperatingSystem. Die Eigenschaften der Klasse OperatingSystem stellen die notwendigen Informationen zum verwendeten Betriebssystem bereit. Die Eigenschaft OSVersion der Klasse System.Environment gibt das Objekt OperatingSystem zurück.
    System.OperatingSystem osInfo = System.Environment.OSVersion;

Bestimmen der Plattform

Der erste Schritt bei der logischen Bewertung der OperatingSystem-Informationen besteht darin, die verwendete Plattform zu bestimmen. Sie können anhand der Eigenschaft PlatformID der Klasse OperatingSystem die verwendete Plattform bestimmen.

Beispielsweise gibt der aufgezählte Wert der Eigenschaft Win32Windows eines der folgenden Betriebssysteme an:
  • Windows 95
  • Windows 98
  • Windows 98 Second Edition
  • Windows Me
In ähnlicher Weise gibt die Eigenschaft WinNT eines der folgenden Betriebssysteme an:
  • Windows NT 3.51
  • Windows NT 4.0
  • Windows 2000
  • Windows XP
    switch(osInfo.Platform)
        {
            case System.PlatformID.Win32Windows:         
                {
                 //Code to determine specific version of Windows 95, 
                 //Windows 98, Windows 98 Second Edition, or Windows Me.
                }

           case System.PlatformID.Win32NT:
               {
                  //Code to determine specific version of Windows NT 3.51, 
                  //Windows NT 4.0, Windows 2000, or Windows XP.
               }
           
         }

Bestimmen der Haupt- und Nebenversion

Bestimmen der Version von Windows 95, Windows 98, Windows 98 Second Edition oder Windows Me

Wenn Sie feststellen, dass es sich bei der Plattform um Windows 95, Windows 98, Windows 98 Second Edition oder Windows Me handelt, können Sie die Haupt- oder Nebenversion analysieren, um die jeweilige Version zu bestimmen.
    //Platform is Windows 95, Windows 98, Windows 98 Second Edition, or Windows Me.
    case System.PlatformID.Win32Windows:
         
    switch (osInfo.Version.Minor)
        {
            case 0:
                Console.WriteLine ("Windows 95");
                break;
            case 10:
                if(osInfo.Version.Revision.ToString()=="2222A")
                    Console.WriteLine("Windows 98 Second Edition");
                else
                     Console.WriteLine("Windows 98");
                     break;
            case  90:
                     Console.WriteLine("Windows Me");
                     break;
         }break;

Bestimmen der Version von Windows NT, Windows 2000 oder Windows XP

Wenn Sie feststellen, dass es sich bei der Plattform um Windows NT 3.51, Windows NT 4.0, Windows 2000 oder Windows XP handelt, können Sie die Haupt- oder Nebenversion analysieren, um die jeweilige Version zu bestimmen.
    //Platform is Windows NT 3.51, Windows NT 4.0, Windows 2000, or Windows XP.
    case System.PlatformID.Win32NT:

    switch(osInfo.Version.Major)
        {
            case 3:
                Console.WriteLine("Windows NT 3.51");
                break;
            case 4:
                Console.WriteLine("Windows NT 4.0");
                break;
            case 5:
                if (osInfo.Version.Minor==0) 
                    Console.WriteLine("Windows 2000");
                else
                    Console.WriteLine("Windows XP");
                    break;
         }break;

Erstellen des Beispiels

Anhand der folgenden Schritte können Sie ein Testszenario erstellen, das diese Funktionalität veranschaulicht:
  1. Öffnen Sie eine neue C#-Konsolenanwendung in Visual Studio .NET. Das Code-Fenster für Class1.cs wird standardmäßig geöffnet.
  2. Ersetzen Sie den gesamten Code im Code-Editorfenster Class1.cs durch den folgenden Code:
    using System;
    
    namespace determineOS_CS
    {  
    class Class1
       {
          static void Main(string[] args)
          {
             //Get OperatingSystem information from the system namespace.
             System.OperatingSystem osInfo =System.Environment.OSVersion;
             
             //Determine the platform.
             switch(osInfo.Platform)
             {
                //Platform is Windows 95, Windows 98, Windows 98 Second Edition, 
                //or Windows Me.
                case System.PlatformID.Win32Windows:
             
                   switch (osInfo.Version.Minor)
                   {
                      case 0:
                         Console.WriteLine ("Windows 95");
                         break;
                      case 10:
                         if(osInfo.Version.Revision.ToString()=="2222A")
                            Console.WriteLine("Windows 98 Second Edition");
                         else
                            Console.WriteLine("Windows 98");
                         break;
                      case  90:
                         Console.WriteLine("Windows Me");
                         break;
                   }
                   break;
             
                //Platform is Windows NT 3.51, Windows NT 4.0, Windows 2000, or Windows XP.
                case System.PlatformID.Win32NT:
    
                   switch(osInfo.Version.Major)
    
                   {
                      case 3:
                         Console.WriteLine("Windows NT 3.51");
                         break;
                      case 4:
                         Console.WriteLine("Windows NT 4.0");
                         break;
                      case 5:
                         if (osInfo.Version.Minor==0) 
                            Console.WriteLine("Windows 2000");
                         else
                            Console.WriteLine("Windows XP");
                         break;
                   }break;
             }
          }
       }
    }
  3. Drücken Sie die Tastenkombination [STRG]+[F5], um die Anwendung auszuführen. Beachten Sie, dass die Windows-Versionsangabe im Konsolenfenster angezeigt wird.

Eigenschaften

Artikel-ID: 304283 - Geändert am: Donnerstag, 13. März 2003 - Version: 1.0
Die Informationen in diesem Artikel beziehen sich auf:
  • Microsoft Visual C# .NET 2002 Standard Edition
Keywords: 
kbhowto kbhowtomaster kbprod2web KB304283
Microsoft stellt Ihnen die in der Knowledge Base angebotenen Artikel und Informationen als Service-Leistung zur Verfügung. Microsoft übernimmt keinerlei Gewährleistung dafür, dass die angebotenen Artikel und Informationen auch in Ihrer Einsatzumgebung die erwünschten Ergebnisse erzielen. Die Entscheidung darüber, ob und in welcher Form Sie die angebotenen Artikel und Informationen nutzen, liegt daher allein bei Ihnen. Mit Ausnahme der gesetzlichen Haftung für Vorsatz ist jede Haftung von Microsoft im Zusammenhang mit Ihrer Nutzung dieser Artikel oder Informationen ausgeschlossen.

Ihr Feedback an uns

 

Contact us for more help

Contact us for more help
Connect with Answer Desk for expert help.
Get more support from smallbusiness.support.microsoft.com