Hinweis
Für den Zugriff auf diese Seite ist eine Autorisierung erforderlich. Sie können versuchen, sich anzumelden oder das Verzeichnis zu wechseln.
Für den Zugriff auf diese Seite ist eine Autorisierung erforderlich. Sie können versuchen, das Verzeichnis zu wechseln.
Eine AddProperty-Direktive verweist auf einen oder mehrere INF-Dateiabschnitte, die die geräteeigenschaften ändern, die für eine Geräteinstanz, einen Gerätecontainer, eine Geräteeinrichtungsklasse, eine Geräteschnittstellenklasse oder eine Geräteschnittstelle festgelegt sind.
[DDInstall] |
[DDInstall.nt] |
[DDInstall.ntx86] |
[DDInstall.ntia64] |
[DDInstall.ntamd64] |
[DDInstall.ntarm] |
[DDInstall.ntarm64]
[ClassInstall32] |
[ClassInstall32.nt] |
[ClassInstall32.ntx86] |
[ClassInstall32.ntia64] | (Windows XP and later versions of Windows)
[ClassInstall32.ntamd64] | (Windows XP and later versions of Windows)
[ClassInstall32.ntarm] | (Windows 8 and later versions of Windows)
[ClassInstall32.ntarm64] | (Windows 10 version 1709 and later versions of Windows)
[interface-install-section] |
[interface-install-section.nt] |
[interface-install-section.ntx86] |
[interface-install-section.ntia64] | (Windows XP and later versions of Windows)
[interface-install-section.ntamd64] | (Windows XP and later versions of Windows) |
[interface-install-section.ntarm] | (Windows 8 and later versions of Windows) |
[interface-install-section.ntarm64] | (Windows 10 version 1709 and later versions of Windows)
[add-interface-section]
AddProperty=add-property-section[,add-property-section]... (Windows Vista and later versions of Windows)
...
Jeder Add-Property-Abschnitt kann Einträge enthalten, um Folgendes auszuführen:
Fügen Sie eine Geräteeigenschaft hinzu, und initialisieren Sie den Wert der Eigenschaft.
Ändern Sie den Wert einer vorhandenen Geräteeigenschaft.
Ein Add-Property-Abschnitt , auf den von einer AddProperty-Direktive verwiesen wird, weist das folgende Format auf:
[add-property-section]
(property-name, , , [flags], value) |
({property-category-guid}, property-pid, type, [flags], value)
...
Ein Add-Eigenschaftsabschnitt kann über eine beliebige Anzahl von Eigenschaftsnameneinträgen oder Eigenschafts-GUID-Einträgen verfügen, die jeweils in einer separaten Zeile enthalten sind.
Einträge
Eigenschaftsname
Einer der folgenden Eigenschaftennamen, die die Eigenschaften des Geräteinstanztreiberpakets darstellen:
DeviceModel
DeviceVendorWebsite
DeviceDetailedDescription
DeviceDocumentationLink
DeviceIcon
DeviceBrandingIcon
Weitere Informationen zum Hinzufügen von benutzerdefinierten Gerätesymbolen finden Sie unter Bereitstellen von Symbolen für ein Gerät.
Einer der folgenden Eigenschaftennamen, die Gerätecontainertreiberpaketeigenschaften darstellen.
ContainerModelName
ContainerManufacturer
ContainerCategories
ContainerIcon
Weitere Informationen zum Angeben der Informationen, die das physische Gerät beschreiben, finden Sie unter Driver Package Container Metadata
property-category-guid
Ein GUID-Wert, der die Eigenschaftskategorie identifiziert. Der GUID-Wert kann eine systemdefinierte GUID sein, die eine der Eigenschaftenkategorien für eine Geräteinstanz, eine Geräteeinrichtungsklasse, eine Geräteschnittstellenklasse oder eine Geräteschnittstelle identifiziert. Alle Eigenschaften mit demselben GUID-Wert sind Elemente derselben Kategorie. Diese Eigenschaftenkategorien werden in Devpkey.h definiert.
Der GUID-Wert kann auch ein benutzerdefinierter GUID-Wert sein, der eine benutzerdefinierte Eigenschaftskategorie identifiziert.
property-pid
Der Eigenschaftsbezeichner, der die spezifische Eigenschaft innerhalb der Eigenschaftskategorie angibt, die durch den Eigenschaftskategorie-GUID-Wert angegeben wird. Aus internen Systemgründen muss ein Eigenschaftsbezeichner größer oder gleich zwei sein.
Typ
Der numerische Wert im Dezimal- oder Hexadezimalformat des Eigenschaftendatentypbezeichners für die Eigenschaft, die durch den Wert der Eigenschaftskategorie-GUID und den Eigenschafts-Pid-Wert angegeben wird. Nur die folgenden Basisdatentypen werden unterstützt:
DEVPROP_TYPE_STRING
DEVPROP_TYPE_STRING_LIST
DEVPROP_TYPE_BINARY
DEVPROP_TYPE_BOOLEAN
DEVPROP_TYPE_UINT32
Der Dezimalwert des Datentyps DEVPROP_TYPE_STRING ist z. B. 18 (0x00000012) und der Dezimalwert des Datentyps DEVPROP_TYPE_STRING_LIST ist 8210 (0x00002012).
Kennzeichnungen
Ein optionaler Hexadezimalwert, der ein bitweiser ODER der folgenden Flags ist, die den Add-Vorgang steuern:
0x00000001 (FLG_ADDPROPERTY_NOCLOBBER)
Ein Flag, das verhindert, dass der Werteingabewert den vorhandenen Eigenschaftswert ersetzt. Wenn ein Treiberautor eine Eigenschaft über Include- und Needs-Direktiven außer Kraft setzen möchte, muss der Writer dieses Flag für diese Eigenschaft angeben. Dies liegt daran, dass Windows die INF-Abschnitte verarbeitet, auf die von Include - und Needs-Direktiven verwiesen wird, nachdem Windows alle anderen Direktiven innerhalb des INF-Abschnitts verarbeitet hat, der die Include - und Needs-Direktiven enthält.
0x00000002 (FLG_ADDPROPERTY_OVERWRITEONLY)
Ein Flag, das den Eigenschaftswert auf den Werteintragswert festlegt, nur, wenn die angegebene Eigenschaft bereits vorhanden ist.
0x00000004 (FLG_ADDPROPERTY_APPEND)
Ein Flag, das den Werteintragswert an die eines vorhandenen Eigenschaftszeichenfolgenwerts angibt. Dieses Kennzeichen ist nur gültig, wenn der Eigenschaftendatentyp DEVPROP_TYPE_STRING_LIST ist. Die angegebene Zeichenfolge wird nicht an einen vorhandenen Eigenschaftszeichenfolgenwert angefügt, wenn die angegebene Zeichenfolge bereits im vorhandenen Zeichenfolgenwert vorhanden ist.
0x00000008 (FLG_ADDPROPERTY_OR)
Ein Flag, das einen bitweisen OR des Werteintragswerts für den vorhandenen Eigenschaftswert ausführt. Dieses Flag ist nur gültig, wenn der Eigenschaftsdatentyp DEVPROP_TYPE_UINT32 ist.
0x00000010 (FLG_ADDPROPERTY_AND)
Ein Flag, das ein bitweises UND des Werteingabewerts für den vorhandenen Eigenschaftswert ausführt. Dieses Flag ist nur gültig, wenn der Eigenschaftsdatentyp DEVPROP_TYPE_UINT32 ist.
Für gerätecontainereigenschaften, die im Eigenschaftsnamen aufgeführt sind, sind flags nicht erforderlich und werden während der Analyse ignoriert.
Wert
Der Wert, den der Add-Vorgang zum Ändern eines Eigenschaftswerts verwendet, abhängig vom Eigenschaftendatentyp und dem Wert des Flags-Eintrags .
Bei einigen gerätecontainereigenschaften, die im Eigenschaftsnamen aufgeführt sind, kann der Wert ein %strkey% Token sein, das gebietsschemaspezifische Zeichenfolgen zulässt. In der folgenden Tabelle wird beschrieben, welche Werte für diese Eigenschaften angegeben werden können. Weitere Informationen zu gebietsschemaspezifischen Zeichenfolgen finden Sie im Abschnitt "INF-Zeichenfolgen".
| Objektname | Wert | Lokalisierbar über [Strings.LanguageID]-Abschnitte für %strkey%-Token |
|---|---|---|
| ContainerModelName | Eine Zeichenfolge oder ein %strkey%-Token | Ja |
| ContainerManufacturer | Eine Zeichenfolge oder ein %strkey%-Token | Ja |
| ContainerCategories | Eine Liste von Zeichenfolgen, durch Kommas getrennt, von DeviceCategory | Nein |
| ContainerIcon | Eine Zeichenfolge oder %strkey% Token, die den Pfad zur Symboldatei darstellt, die im Treiberpaket enthalten ist | Ja |
Bemerkungen
Die AddProperty-Direktive kann verwendet werden, um eine systemdefinierte Geräteeigenschaft oder eine benutzerdefinierte Geräteeigenschaft zu ändern. Diese Direktive kann unter einem der Abschnitte angegeben werden, die in der formalen Syntaxausweisung oben gezeigt werden.
Jeder Add-Property-Section-Name muss innerhalb einer INF-Datei eindeutig sein, der Abschnitt kann jedoch von mehreren AddProperty-Direktiven in derselben INF-Datei referenziert werden. Jeder Abschnittsname muss den allgemeinen Regeln zum Definieren von Abschnittsnamen entsprechen, die in allgemeinen Syntaxregeln für INF-Dateien beschrieben werden.
Weitere Informationen zur Verwendung der INF-AddProperty-Direktive finden Sie unter Verwenden der INF-AddProperty-Direktive und der INF DelProperty-Direktive.
Beispiele
Das folgende Beispiel für einen Abschnitt "Eigenschaft hinzufügen" enthält zwei Zeileneinträge: Der Eintrag der ersten Zeile legt die DeviceModel-Eigenschaft anhand des Namens fest, und der zweite Zeileneintrag legt eine benutzerdefinierte Geräteeigenschaft fest, indem eine benutzerdefinierte Eigenschaftenschlüssel-GUID angegeben wird.
Die erste Zeile enthält den Eigenschaftsnamen-Eintragswert "DeviceModel" und den Werteintragswert "Beispielgerätemodellname".
Der Eintrag in der zweiten Zeile legt eine benutzerdefinierte Eigenschaft in einer benutzerdefinierten Eigenschaftskategorie fest. Der Eintragswert "property-category-guid" lautet "c22189e4-8bf3-4e6d-8467-8dc6d95e2a7e" und der Eigenschaftsbezeichner-Eintragswert "2". Der Eintragswert für optionale Flags ist nicht vorhanden, und der Typeintragswert ist "18" (DEVPROP_TYPE_STRING). Der Werteintragswert lautet "Zeichenfolgenwert für Eigenschaft 1".
[SampleAddPropertySection]
DeviceModel,,,,"Sample Device Model Name"
{c22189e4-8bf3-4e6d-8467-8dc6d95e2a7e}, 2, 18,, "String value for property 1"