T-31: Windows API Code Pack

Gastposting von Oliver Scheer , Developer Evangelist - Windows, Silverlight und UI-Technologien bei der Microsoft Deutschland GmbH.

31_0Nur noch 31 Tage bis zum Windows 7 Launch.

Das Windows API Code Pack for Microsoft .NET Framework ist eine .NET-Bibliothek für die Nutzung einiger der neuen Windows 7-Features sowie Funktionen aus älteren Betriebssystemen. Diese Bibliothek beinhaltet Funktionen, die so heute noch in keinem .NET Framework enthalten sind. Die nächste Version des .NET Framework wird große Teile dieser Bibliothek übernehmen, allerdings dauert das noch eine Weile. Leider kann aber wegen des Open Source-Charakters momentan keine hundertprozentige Gewährleistung gegeben werden, dass die Bibliotheken im .NET Framework genauso aussehen werden, wie im Code Pack.

Das tolle an diesen Bibliotheken ist, dass sie im Quellcode vorliegen und so von jedem erweitert werden können. Dadurch erhält man die Sicherheit, dass die eigenen Anwendungen auch noch mit späteren Versionen des .NET Framework funktionieren werden.

Wo bekommt man das Code Pack her?

Alle notwendigen Ressourcen können in einer einzelnen Datei heruntergeladen werden. Der Download ist hier verfügbar: https://code.msdn.microsoft.com/WindowsAPICodePack

image

Das Code Pack gibt es derzeit in der Version 1 und enthält die folgenden Bestandteile:

  • Windows 7 Taskbar Sprunglisten, Symboloverlays, Fortschrittsbalken, Tabbed Thumbnails und Thumbnail Toolbars.
  • Windows 7-Bibliotheken, bekannte Ordner, Nicht-Filesystem-Container.
  • Windows Shell Search API Support, eine Vielzahl von Shell-Funktionen inkl. Drag und Drop für Shell-Objekte (z.B. Dateien).
  • Explorer Browser Control.
  • Shell-Eigenschaften.
  • Windows Vista- und Windows 7-Dateidialoge, einschließlich benutzerdefinierter Steuerelemente.
  • Windows Vista und Windows 7 Task-Dialoge.
  • Direct3D 11.0, Direct3D 10.1/10.0, DXGI 1.0/1.1, Direct2D 1.0, DirectWrite, Windows Imaging Component (WIC) APIs. (DirectWrite und WIC sind derzeit nur teilweise unterstützt)
  • Sensor Platform APIs
  • Extended Linguistic Services APIs
  • Power Management APIs
  • Application Restart and Recovery APIs
  • Network List Manager APIs
  • Command Link Steuerelement und System-Symbole.
  • Shell Search API support.
  • Support für Direct3D- und Direct2D-Interoperabilität.
  • Support von Typographie und Schriftarten für DirectWrite APIs.

Die Anforderungen des Code Pack

  • .NET Framework 3.5 SP1 Ist mindestens erforderlich
  • Diese Bibliothek adressiert Windows 7 RTM (bereits verfügbar für alle MSDN Subscriber), einige Features funktionieren allerdings auch auf älteren Windows Betriebssystemen.
  • DirectX Features benötigen das Windows SDK für Windows 7 RTM. Zusätzlich benötigen einige Direct3D-Beispiele das DirectX SDK (Version August 2009).

Erstellen und Verwenden der Bibliothek

Um die Bibliothek zu erstellen (ausgenommen die DirectX betreffenden Features), benötigt man Visual Studio 2008. Der gesamte Inhalt des Pakets „WindowsAPICodePack.zip“ sollte dafür in einen neuen Ordner entpackt werden. Darin enthalten ist die Datei „WindowsAPICodePack.sln“, die die gesamte Lösung beinhaltet.

Für das Erstellen der DirectX-Features wird“DirectX.sln“ innerhalb des DirectX-Verzeichnisses benötigt. Eine genauere Beschreibung der Anforderungen ist in der einer Hilfedatei im selben Ordner beschrieben

Welche Beispiele sind im Code Pack enthalten?

Das Code Pack beinhaltet neben den Bibliotheken auch einige Beispielanwendungen, die sofort lauffähig sind, um die Verwendung erfolgreich zu demonstrieren. Jedes Beispiel ist sowohl in C# also auch in Visual Basic .NET verfügbar.

Konkret enthalten sind Beispiele für Explorer-, Netzwerk-, Ribbon-, Startleiste-, Sensor- und Dialog-Bibliotheken.

image