INF ProfileItems Direktive
Achtung
Ab Windows 11 Version 22H2 ist ein Treiberpaket, das diese Direktive verwendet, nicht mehr für eine Signatur vom Hardware Developer Center geeignet.
Universelle Treiberpakete und Windows-Treiber können diese Direktive nicht verwenden.
Eine ProfileItems-Direktive wird in einem INF DDInstall-Abschnitt verwendet, um einen oder mehrere Profile-Items-Abschnitte aufzulisten, die Elemente oder Gruppen enthalten, die dem Startmenü hinzugefügt oder daraus entfernt werden sollen.
[DDInstall]
ProfileItems=profile-items-section[,profile-items-section]...
...
Jeder benannte Abschnitt, der von einer ProfileItems-Direktive referenziert wird, hat die folgende Form:
[profile-items-section]
Name=link-name[,name-attributes]
CmdLine=dirid,[subdir],filename
[SubDir=path]
[WorkingDir=wd-dirid,wd-subdir]
[IconPath=icon-dirid,[icon-subdir],icon-filename]
[IconIndex=index-value]
[HotKey=hotkey-value]
[Infotip=info-tip]
[DisplayResource="ResDllPath\ResDll",ResID]
Diese Direktive wird in Windows XP und späteren Versionen von Windows unterstützt.
Entries
Name=link-name[,name-attributes]
Der link-name gibt den Namen des Links für den Menüpunkt oder die Gruppe an, ohne die .lnk Erweiterung. Dieser Wert kann eine Zeichenfolge oder ein %strkey% Token sein, das in einem Strings-Abschnitt der INF-Datei definiert ist. Wenn kein DisplayResource-Eintrag angegeben ist, ist link-name ebenfalls die Zeichenfolge für die Anzeige.
Der optionale Wert name-attribute gibt ein oder mehrere Flags an, die den Vorgang auf dem Menüpunkt beeinflussen. Dieser Wert wird als eine OD-verknüpfte Bitmaske von systemdefinierten Flag-Werten ausgedrückt. Mögliche Flags sind die folgenden:
0x00000001 (FLG_PROFITEM_CURRENTUSER)
Weist Windows an, einen Eintrag des Startmenüs im Profil des aktuellen Benutzers zu erstellen oder zu löschen. Wenn dieses Flag nicht angegeben wird, verarbeitet Windows den Eintrag für alle Benutzer*innen.
0x00000002 (FLG_PROFITEM_DELETE)
Weist Windows an, den Menüpunkt zu löschen. Wenn dieses Flag nicht angegeben ist, wird der Eintrag erstellt.
0x00000004 (FLG_PROFITEM_GROUP)
Weist Windows an, eine Startmenügruppe unter Start\Programme zu erstellen oder zu löschen. Wenn dieses Flag nicht angegeben ist, erstellt oder löscht Windows einen Menüpunkt, keine Menügruppe.
Wenn kein Flag angegeben wird, erstellt Windows einen Menüpunkt für alle Benutzer*innen.
CmdLine=dirid,[subdir],filename
Die dirid gibt einen Wert an, der das Verzeichnis identifiziert, in dem sich das Befehlsprogramm befindet. Ein dirid von 11 gibt beispielsweise das Systemverzeichnis an. Die möglichen dirid-Werte sind in der Beschreibung des dirid-Wertes im Abschnitt DestinationDirs aufgeführt.
Wenn eine Zeichenfolge subdir vorhanden ist, befindet sich das Befehlsprogramm in einem Unterverzeichnis des Verzeichnisses, auf das dirid verweist. Das subdir gibt das Unterverzeichnis an. Wenn kein subdir angegeben ist, befindet sich das Programm in dem Verzeichnis, auf das dirid verweist.
Der filename gibt den Namen des Programms an, das mit dem Menüpunkt verbunden ist.
SubDir=path
Dieser optionale Eintrag gibt ein Unterverzeichnis (Untermenü) unter Start\Programme an, in dem sich der Menüpunkt befindet. Wenn dieser Eintrag weggelassen wird, wird der Pfad standardmäßig auf Start\Programs gesetzt.
Wenn z. B. der profile-items-section den Eintrag „Subdir=Accessories\Games“ hat, dann wird der Menüpunkt im Untermenü Start\Programs\Accessories\Games erstellt oder gelöscht.
Hinweis
Wenn FLG_PROFITEM_GROUP für name-attributes angegeben ist, wird der Eintrag SubDir ignoriert.
WorkingDir=wd-dirid[,wd-subdir]
Dieser optionale Eintrag gibt ein Arbeitsverzeichnis für das Befehlsprogramm an. Wenn dieser Eintrag weggelassen wird, wird als Arbeitsverzeichnis standardmäßig das Verzeichnis verwendet, in dem sich das Befehlsprogramm befindet.
Der Wert wd-dirid identifiziert das Arbeitsverzeichnis. Eine Liste der möglichen dirid-Werte finden Sie unter Verwendung von Dirids.
Die Zeichenfolge wd-subdir, falls vorhanden, gibt ein Unterverzeichnis von wd-dirid als Arbeitsverzeichnis an. Verwenden Sie diesen Parameter, um ein Verzeichnis anzugeben, für das es keine systemdefinierte dirid gibt. Wenn dieser Parameter weggelassen wird, gibt der Wert wd-dirid allein das Arbeitsverzeichnis an.
IconPath=icon-dirid,[icon-subdir],icon-filename
Dieser optionale Eintrag gibt den Speicherort einer Datei an, die ein Symbol für den Menüpunkt enthält.
Die Zeichenfolge icon-dirid gibt das Verzeichnis für die DLL an, die das Symbol enthält. Eine Liste der möglichen dirid-Werte finden Sie unter Verwendung von Dirids.
Der Wert icon-subdir, falls vorhanden, gibt an, dass sich die DLL in einem Unterverzeichnis von icon-dirid befindet. Der Wert icon-subdir gibt das Unterverzeichnis an.
Der Wert icon-filename gibt die DLL an, die das Symbol enthält.
Wenn dieser Eintrag weggelassen wird, sucht Windows nach einem Symbol in der Datei, die im Eintrag CmdLine angegeben ist.
IconIndex=index-value
Dieser optionale Eintrag gibt an, welches Symbol in einer DLL für den Menüpunkt verwendet werden soll. Informationen darüber, wie Sie die Symbole in einer DLL indizieren, finden Sie in der Microsoft Windows SDK-Dokumentation.
Wenn ein IconPath-Eintrag angegeben ist, indexiert der index-value in diese DLL. Andernfalls indexiert dieser Wert in die im Eintrag CmdLine angegebene Datei.
HotKey=hotkey-value
Dieser optionale Eintrag gibt einen Tastaturkürzel für den Menüpunkt an.
Weitere Informationen über Tastenkombinationen finden Sie in der Windows SDK-Dokumentation.
Infotip=info-tip
Dieser optionale Eintrag gibt einen Informationshinweis für den Menüpunkt an.
Dieser Wert kann eine Zeichenfolge oder ein %strkey% Token sein, das in einem Strings-Abschnitt der INF-Datei definiert ist.
Der Wert info-tip kann auch als „@ResDllPath\ResDll,-ResID“ angegeben werden, wobei ResDllPath und ResDll den Pfad und Dateinamen einer Ressourcen-DLL angeben und -resID ein negativer Wert ist, der eine Ressourcen-ID darstellt.
Verwenden Sie dieses Format, um die mehrsprachige Benutzeroberfläche von Windows (MUI) zu unterstützen. Beispiel:
InfoTip = "@%11%\shell32.dll,-22531"
DisplayResource="ResDllPath\ResDll",ResID
Dieser optionale Eintrag gibt eine Zeichenfolge an, die eine lokalisierbare Zeichenfolge identifiziert, die im Startmenü als Anzeigename für eine Verknüpfung oder Gruppe verwendet werden soll.
ResDllPath und ResDll geben den Pfad und Dateinamen einer Ressourcen-DLL an und resID ist ein positiver Wert, der eine Ressourcen-ID darstellt. Beispiel:
DisplayResource="%11%\shell32.dll",22019
Verwenden Sie diesen Eintrag, um die mehrsprachige Benutzeroberfläche von Windows (MUI) zu unterstützen. Wenn dieser Eintrag nicht verwendet wird, wird die Zeichenfolge angezeigt, die durch den Eintrag Name angegeben wird.
Hinweise
Ein gegebener profile-items-section-Name muss innerhalb der INF-Datei eindeutig sein und den allgemeinen Regeln für die Definition von Sektionsnamen entsprechen. Weitere Informationen zu diesen Regeln finden Sie unter Allgemeine Syntaxregeln für INF-Dateien.
Jede profile-items-section enthält detaillierte Informationen zum Erstellen oder Entfernen eines Startmenüeintrags oder einer Gruppe. Wenn Sie mehr als einen Menüpunkt oder eine Gruppe aus einer INF-Datei bearbeiten möchten, erstellen Sie mehr als einen profile-items-section und listen die Sektionen in der Direktive ProfileItems auf.
Jeder der in den profile-items-section Einträgen angegebenen Zeichenfolgen-Parameter kann mit einem %strkey% Token angegeben werden, wie in Allgemeine Syntaxregeln für INF-Dateien beschrieben.
Beispiele
Der folgende Auszug aus der INF-Datei zeigt, wie Sie die profile-items-section verwenden, um den Rechner in das Startmenü aufzunehmen.
[CalcInstallItems]
Name = %Calc_DESC%
CmdLine = 11,, calc.exe
SubDir = %Access_GROUP%
WorkingDir = 11
InfoTip = %Calc_TIP%
:
:
[Strings]
AccessGroup = "Accessories"
Calc_DESC = "Calculator"
Calc_TIP = "Performs basic arithmetic tasks with an on-screen calculator"
Der folgende Auszug aus der INF-Datei zeigt, wie Sie dieselbe Software installieren, indem Sie den Eintrag DisplayResource verwenden, um lokalisierte Menüpunkte zu erstellen.
[CalcInstallItems]
Name = %Calc_DESC%
CmdLine = 11,, calc.exe
SubDir = %Access_GROUP%
WorkingDir = 11
InfoTip = "@%11%\shell32.dll,-22531"
DisplayResource="%11%\shell32.dll",22019
:
:
[Strings]
Access_GROUP = "Accessories"
Calc_DESC = "Calculator"