Branding Systemsteuerung mit Bitmaps oder Symbolen
In Windows XP und höheren Versionen von Windows unterstützt die Soundanwendung in Systemsteuerung das Branding von Audiogerätesteuerelementen von Drittanbietern. Unabhängige Hardwareanbieter (Independent Hardware Vendors, IHVs) können die folgenden Elemente neben den Steuerelementen für ihre Audiogeräte anzeigen:
Firmenlogo
Proprietärer Gerätename
Die INF-Datei, die den Gerätetreiber installiert, lädt auch die Systemsteuerung Anpassungsdaten in die Registrierung. Bitmapbilder von Firmenlogos sind in den installierten Treiberdateien enthalten.
In Windows XP sind Brandinginformationen für Benutzer an den folgenden Programmspeicherorten sichtbar:
Seite "Lautstärke" der Anwendung "Sounds und Audiogeräte" in Systemsteuerung (Mmsys.cpl)
Das SndVol32-Programm (Sndvol32.exe)
In Windows Vista sind Brandinginformationen für Benutzer auf den Seiten Wiedergabe und Aufzeichnung der Sound-Anwendung in Systemsteuerung (Mmsys.cpl) sichtbar.
Die Brandinginformationen werden in der Registrierung in einem Branding-Unterschlüssel unter dem Stammschlüssel des Audiogeräts gespeichert, der sich unter dem Medienklassenschlüssel befindet. Der Unterschlüssel Branding kann mindestens einen der REG_SZ-Werte enthalten, die in der folgenden Tabelle angezeigt werden.
Wertname | Bedeutung |
---|---|
icon |
Name der Datei, die das Symbol enthält, das vom SndVol32-Steuerelementmenü verwendet wird. |
Bitmap |
Name der Datei, die die Bitmap 32 x 32 enthält, die auf der Seite Volume der Anwendung Sound and Audio Devices in Systemsteuerung angezeigt wird. |
Diese Werte werden der Registrierung durch Anweisungen im Abschnitt add-registry-section (siehe INF AddReg-Direktive) der INF-Datei hinzugefügt, die den Gerätetreiber installiert. Systemsteuerung verwendet Standardwerte für alle Werte, die im Unterschlüssel Branding fehlen.
Das Bitmap-Logo wird links neben dem proprietären Gerätenamen oben auf der Seite Volume angezeigt. Das Symbollogo wird in der oberen linken Ecke des SndVol32-Steuerelementmenüs angezeigt.
Der proprietäre Gerätename, der auf den zuvor genannten Seiten angezeigt wird, ist der Anzeigename des Geräts. Dieser Anzeigename wird von einer Anweisung im Abschnitt add-registry-der INF-Datei angegeben, die das Gerät installiert. Diese Direktive enthält die Schlüsselwort (keyword) "FriendlyName", wie im Beispiel in der INF AddReg-Direktive gezeigt. In Windows XP zeigen die Seite Volume und SndVol32 nur die ersten 31 Zeichen der Namenszeichenfolge an. Längere Zeichenfolgen werden abgeschnitten. In Windows Vista und höheren Versionen von Windows wird diese 31-stellige Einschränkung entfernt, wenn der Gerätename in Systemsteuerung angezeigt wird. Wenn Sie APIs verwenden, die in Versionen von Windows vor Windows Vista unterstützt wurden, z. B. MCI_GetDevCaps, gilt der Grenzwert von 31 Zeichen weiterhin für den Gerätenamen, den Sie für die API angeben.
Wichtig In Windows Vista und höheren Versionen von Windows wird die Verwendung von Bitmapbildern für das Branding von Drittanbietern nicht mehr unterstützt. Entwickler von Drittanbietern für Audiotreiber, die ihre Audiogerätesteuerelemente brandmarken möchten, müssen Symbole verwenden. Die unterstützten Pixeldimensionen für diese Symbole sind 32x32 oder 48x48.
Beispiel 1
Das folgende Beispiel zeigt einige Anweisungen aus dem Add-Registry-Abschnitt der INF-Datei eines Anbieters:
[XYZ-Audio-Device.AddReg]
HKR,Branding,icon,,"foo.sys,102"
HKR,Branding,bitmap,,"c:\mydir\myimage.bmp"
Diese Anweisungen fügen der Registrierung Informationen zum Steuerelementbereichbranding hinzu. HKR stellt den Stammschlüssel des Audiogeräts in der Registrierung dar. Der Branding-Unterschlüssel wird relativ zum Pfadnamen für den Stammschlüssel angegeben. Der Zeichenfolgenwert für den Symbol - oder Bitmapschlüssel kann in einem von zwei Formaten angegeben werden: "file", "resourceid" oder "imagefile". Die erste Direktive im vorherigen Beispiel verwendet das Format "file,resourceid". Die Direktive weist dem Symbolschlüssel einen Zeichenfolgenwert zu, der einen Dateinamen, foo.sys und eine Ressourcen-ID von 102 enthält. Der Dateiname und die Ressourcen-ID werden durch ein Komma (ohne Leerzeichen) getrennt. Die Datei foo.sys enthält die Symbolressource. Die zweite Direktive im vorherigen Beispiel weist dem Bitmapschlüssel eine formatierte Zeichenfolge zu. die Zeichenfolge enthält den vollständigen Pfadnamen einer .bmp-Datei, die die Bitmap enthält.
Die Beispieldirektive für den Symbolwert kann geändert werden, um das Format "imagefile" zu verwenden, aber in diesem Fall sollte der Zeichenfolgenwert den Pfadnamen einer Datei mit der Dateinamenerweiterung .ico enthalten.
Im Fall des Formats "file,resourceid" durchsucht die Systemsteuerungssoftware dieselbe Liste der Suchpfade wie die LoadLibrary-Funktion (die in der Microsoft Windows SDK-Dokumentation beschrieben wird). Wenn diese Pfadliste die Datei nicht enthält, durchsucht die Software auch das Treiberverzeichnis (siehe ABSCHNITT INF DestinationDirs). Dieses Format ermöglicht es, die Bilder einfach in der Treiberdatei selbst zu speichern, ohne dass absolute Pfadnamen in der INF-Datei angegeben werden müssen.
Beispiel 2
Das folgende Beispiel gilt für Windows Vista und höhere Versionen von Windows. Dieses Beispiel zeigt eine Anweisung aus dem Add-Registry-Abschnitt der INF-Datei eines Anbieters. In diesem Beispiel wird das Format "imagefile" verwendet:
[ABC-Audio-Device.AddReg]
HKR,Branding,icon,,"c:\mydir\myicon.ico"