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.
Viele der Verzeichnisse, die in INF-Dateien angezeigt werden, können mithilfe von Verzeichnisbezeichnern (Dirids) ausgedrückt werden, bei denen es sich um Zahlen handelt, die bestimmte Verzeichnisse identifizieren. Anwendungen können verwenden, aber die vom System definierten Verzeichnisse, die dirids zugeordnet sind, die von -1 bis 32767 stammen, nicht neu zuweisen.
Verwenden Sie zum Erstellen von Dirids mit benutzerdefinierten Werten von 32768 bis 65534 oder 65536 und höher die SetupSetDirectoryId-Funktion (in der Microsoft Windows SDK-Dokumentation beschrieben).
Beachten Sie, dass eine Dirid mit einem Wert von 65535 als Synonym für eine Dirid mit dem Wert -1 betrachtet wird, obwohl letzteres (dirid -1) bevorzugt wird.
Wenn Sie dirids in Ihrer INF-Datei verwenden möchten, beachten Sie die folgenden beiden Richtlinien:
Wenn die Syntax für einen INF-Dateieintrag explizit einen Dirid-Wert (z. B. der ABSCHNITT INF DestinationDirs) angibt, wird dieser Wert als Zahl ausgedrückt.
Das folgende Beispiel veranschaulicht diese Syntax:
[DestinationDirs] DefaultDestDir = 11 ; \system32 directory on Windows 2000 and later versionsWenn die Syntax für einen INF-Dateieintrag einen Dateipfad angibt, können Sie eine vom System bereitgestellte Zeichenfolgenersetzung verwenden, um einen Teil oder den gesamten Pfad darzustellen. Diese Ersetzung hat die folgende Form:
% dirid%
Dieses Formular besteht aus einem Prozentzeichen (%), gefolgt von der Dirid für das Verzeichnis, das Sie angeben möchten, gefolgt von einem anderen Prozentzeichen (%). Ein abschließender Backslash () trennt diesen Ausdruck von einem folgenden Dateinamen oder zusätzlichen Verzeichnissen im Pfad.
Das folgende Beispiel veranschaulicht diese Syntax:
[aic78xx_Service_Inst] ServiceBinary = %12%\aic78xx.sysBei vollständiger Erweiterung wird der im vorherigen Beispiel gezeigte Pfad zu c:\windows\system32-Treibern\\aic78xx.sys (vorausgesetzt, dass Windows im Verzeichnis c:\windows installiert wurde). Beachten Sie, dass die Zeichenfolgenersetzung oder die Form %dirid% an einer beliebigen Stelle verwendet werden kann, mit Ausnahme des Abschnitts „INF Strings“ der INF-Datei.
Die beiden folgenden Beispiele zeigen, wie die Zeichenfolgenersetzung nicht verwendet werden soll.
[DestinationDirs] DefaultDestDir = %11% ; Error! - number expected [aic78xx_Service_Inst] ServiceBinary = 12\aic78xx.sys ; Error! - unknown directory nameIm ersten Beispiel erfordert die Syntax für den DefaultDestDir-Eintrag, dass sein Wert eine Zahl ist. Der %11% Ausdruck wird jedoch auf eine Zeichenfolge erweitert. Im zweiten Beispiel beabsichtigte der INF Writer offenbar, den Wert für den ServiceBinary-Eintrag auf eine Datei im Verzeichnis festzulegen, das Treiber enthält (weitere Informationen finden Sie in der folgenden Tabelle). Der Fehler tritt auf, da Windows die angegebene Datei in einem Verzeichnis namens "12" sucht, das wahrscheinlich nicht auf dem Computer vorhanden ist.
Die folgende Tabelle enthält mehrere häufig verwendete Dirids und die Verzeichnisse, die sie darstellen. Die am häufigsten durch Geräte-INF-Dateien und Treiber-INF-Dateien angegebenen Werte werden oben in der Tabelle aufgelistet.
Im Rahmen der Anforderungen an die Treiberpaketisolation muss ein Treiber Run from Driver Store und DIRID 13 verwenden, um den Speicherort für Treiberpaketdateien bei der Installation anzugeben. Ab Windows 11, Version 24H2 sind einige der häufig verwendeten Dirids beim Übermitteln Ihrer INF für eine WHQL-Signatur veraltet. Weitere Informationen finden Sie unter InfVerif /h.
| Wert | Zielverzeichnis | Version als veraltet markieren |
|---|---|---|
01 |
SourceDrive:\pathname (das Verzeichnis, von dem aus die INF-Datei installiert wurde) |
Windows 11 24H2 |
10 |
Windows-Verzeichnis. Dies entspricht %SystemRoot%. |
|
11 |
Systemverzeichnis. Dies entspricht %SystemRoot%\system32 für Windows 2000 und spätere Versionen von Windows.. |
|
12 |
Treiberverzeichnis. Dies entspricht %SystemRoot%\system32\drivers für Windows 2000 und spätere Versionen von Windows. |
|
13 |
Treiberpakets Driver Store-Verzeichnis. Gibt für Windows 8.1 und neuere Windows-Versionen den Pfad zum Driver Store-Verzeichnis an, in das das Treiberpaket importiert wurde. Verwenden Sie DelFiles nicht für eine Datei, für die in DestinationDirsdirid 13 angegeben ist. Das optionale Unterverzeichnis im Abschnitt "SourceDiskFiles" für eine Datei muss mit dem Unterverzeichnis im Abschnitt "DestinationDirs" für den Eintrag übereinstimmen, der auf diese Datei zutrifft. Verwenden Sie CopyFiles nicht, um eine Datei umzubenennen, für die in DestinationDirsdirid 13 angegeben ist. Weitere Informationen zur Verwendung von dirid 13 finden Sie unter Ausführen aus dem Treiberspeicher. |
|
17 |
INF-Dateiverzeichnis |
Windows 11 24H2 |
18 |
Hilfeverzeichnis |
Windows 11 24H2 |
20 |
Schriftartenverzeichnis |
Windows 11 24H2 |
21 |
Viewer-Verzeichnis |
Windows 11 24H2 |
23 |
Farbverzeichnis (ICM) (wird nicht für die Installation von Druckertreibern verwendet) |
|
24 |
Stammverzeichnis des Systemdatenträgers. Dies ist das Stammverzeichnis des Datenträgers, auf dem Windows Dateien installiert sind. Wenn dirid 10 beispielsweise "C:\winnt" lautet, lautet dirid 24 "C:\". |
Windows 11 24H2 |
25 |
Freigegebenes Verzeichnis |
Windows 11 24H2 |
30 |
Stammverzeichnis des Startdatenträgers, auch bekannt als "ARC-Systempartition". (Dies kann dasselbe Verzeichnis sein oder auch nicht wie das Verzeichnis, das durch dirid 24 dargestellt wird.) |
Windows 11 24H2 |
50 |
Systemverzeichnis Dies entspricht %SystemRoot%\System. |
Windows 11 24H2 |
51 |
Spoolverzeichnis (nicht für die Installation von Druckertreibern verwendet − siehe Printer Dirids) |
|
52 |
Spooltreiberverzeichnis (nicht für die Installation von Druckertreibern verwendet) |
|
53 |
Benutzerprofilverzeichnis |
Windows 11 24H2 |
54 |
Verzeichnis, in dem Ntldr.exe und Osloader.exe sich befinden |
Windows 11 24H2 |
55 |
Druckerprozessorverzeichnis (nicht zum Installieren von Druckertreibern verwendet) |
|
-1 |
Absoluter Pfad |
Windows 11 24H2 |
Dirid-Werte von 16384 bis 32767 sind für spezielle Shellordner reserviert. In der folgenden Tabelle sind dirid-Werte für diese Ordner aufgeführt.
| Wert | Shell-Spezialordner | Release veraltet |
|---|---|---|
16406 |
Alle Benutzer\Startmenü |
Windows 11 24H2 |
16407 |
Alle Benutzer\Startmenü\Programme |
Windows 11 24H2 |
16408 |
Alle Benutzer\Startmenü\Programme\Autostart |
Windows 11 24H2 |
16409 |
Alle Benutzer\Desktop |
Windows 11 24H2 |
16415 |
Alle Benutzer\Favoriten |
Windows 11 24H2 |
16419 |
Alle Benutzer\Anwendungsdaten |
Windows 11 24H2 |
16422 |
Program Files |
|
16425 |
%SystemRoot%\SysWOW64 |
|
16426 |
%ProgramFiles(x86)% |
|
16427 |
Program Files\Common |
|
16428 |
%ProgramFiles(x86)%\Common |
|
16429 |
Alle Benutzer\Vorlagen |
Windows 11 24H2 |
16430 |
All Users\Dokumente |
Windows 11 24H2 |
Zusätzlich zu den Werten in dieser Tabelle, die in Setupapi.h definiert sind, können Sie alle CSIDL_Xxx-Werte verwenden, die in Shlobj.h definiert sind. Um einen Dirid-Wert für einen Ordner zu definieren, der nicht in dieser Tabelle aufgeführt ist, fügen Sie dem wert CSIDL_Xxx 16384 (0x4000) hinzu. Weitere Informationen zu CSIDL_Xxx-Werten finden Sie in der Windows SDK-Dokumentation.