XP-Variante.

5 11 2008

Ich stand vor der Aufgabe in einem C#-Programm zwischen Windows XP Home und Windows XP Professional unterscheiden zu können. Für die Unterscheidung unterschiedlicher Windows Versionen nützliche Systemvariablen lassen sich leider nicht nutzen und auf eine Funktion der „kernel32.dll“ wollte ich nicht zurück greifen sondern so weit es geht innerhalb des .Net-Frameworks bleiben.

Doch auch hier gibt es Hilfe. Einfach die Referenz zu System.Management erstellen und eine neue Using-Zeile einfügen:

using System.Management;

Nun kann man auf die benötigten Daten zugreifen. Die folgende Funktion gibt einen String zurück, der bei XP Home „Windows XP Home“ und bei Prof. „Windows XP Professional“ heißt.

string getOS_Caption()
{
   string tmp;
   ManagementObjectSearcher searcher = new ManagementObjectSearcher("SELECT caption FROM Win32_OperatingSystem");
   tmp = "";
   foreach (ManagementObject obj in searcher.Get())
     tmp = obj["caption"].ToString();
   return tmp;
}

Diese Funktion ist nur ein Ansatz. Jegliche Prüfung ob es überhaupt ein Windows XP ist, werden nicht durchgeführt, das müsst ihr selbst machen 🙂

Advertisements

Aktionen

Information

Kommentar verfassen

Trage deine Daten unten ein oder klicke ein Icon um dich einzuloggen:

WordPress.com-Logo

Du kommentierst mit Deinem WordPress.com-Konto. Abmelden / Ändern )

Twitter-Bild

Du kommentierst mit Deinem Twitter-Konto. Abmelden / Ändern )

Facebook-Foto

Du kommentierst mit Deinem Facebook-Konto. Abmelden / Ändern )

Google+ Foto

Du kommentierst mit Deinem Google+-Konto. Abmelden / Ändern )

Verbinde mit %s




%d Bloggern gefällt das: