Die V_NET_ROOT-Struktur
Die V_NET_ROOT-Struktur bietet einen Mechanismus für die Zuordnung zu einer Freigabe (z. B. eine Benutzerlaufwerkzuordnung, die unter den Stamm des zugeordneten Freigabepunkts zeigt). Der V_NET_ROOT Name kann in einem der folgenden Formate vorliegen:
\server\share\d1\d2
\;m:\server\share\d1\d2
Das Format des Namens hängt davon ab, ob dieser V_NET_ROOT-Struktur ein lokales Gerät ("z. B. X:" ) zugeordnet ist. Bei einer zuordnung des lokalen Laufwerks (z. B. d1\d2) wird der Zuordnung des lokalen Laufwerks jedem CreateFile-Element , das in dieser V_NET_ROOT-Struktur geöffnet wird, ein Präfix für die Zuordnung des lokalen Laufwerks angezeigt.
V_NET_ROOT Strukturen werden auch verwendet, um alternative Anmeldeinformationen anzugeben. Der Zweck für diese Art einer V_NET_ROOT-Struktur besteht darin, die alternativen Anmeldeinformationen als Standard an die NET_ROOT zu verteilen. Damit dies funktioniert, darf es keine weiteren Verweise geben.
Eine Liste der V_NET_ROOT-Strukturen wird von RDBSS für jede NET_ROOT verwaltet. Jede V_NET_ROOT-Struktur hat einige Elemente, die mit anderen RDBSS-Strukturen gemeinsam sind, sowie Elemente, die für eine V_NET_ROOT-Struktur eindeutig sind. Die RDBSS-Routinen, die V_NET_ROOT Strukturen verwalten, ändern nur die folgenden Elemente:
Signatur- und Verweisanzahl
Ein Zeiger auf die zugeordnete NET_ROOT Struktur und Links
Namensinformationen für Tabellensuche (Präfix)
Name für ein Präfix, das dem Namen hinzugefügt werden soll, den der Benutzer sieht (dies dient zum Simulieren einer NET_ROOT Struktur, die nicht am Stamm der tatsächlichen NET_ROOT-Struktur zugeordnet ist).
Die Fertigstellung einer V_NET_ROOT-Struktur besteht aus zwei Teilen:
Zerstören der Zuordnung mit allen SRV_OPEN Strukturen
Freigeben des Arbeitsspeichers
Zwischen diesen beiden Aktionen kann es zu einer Verzögerung kommen, und ein Feld in der V_NET_ROOT-Struktur verhindert, dass der erste Schritt dupliziert wird.