PrjWritePlaceholderInfo2-Funktion (projectedfslib.h)
Sendet Datei- oder Verzeichnismetadaten an ProjFS und ermöglicht es dem Aufrufer, erweiterte Informationen anzugeben.
Syntax
HRESULT PrjWritePlaceholderInfo2(
[in] PRJ_NAMESPACE_VIRTUALIZATION_CONTEXT namespaceVirtualizationContext,
[in] PCWSTR destinationFileName,
[in] const PRJ_PLACEHOLDER_INFO *placeholderInfo,
[in] UINT32 placeholderInfoSize,
const PRJ_EXTENDED_INFO *ExtendedInfo
);
Parameter
[in] namespaceVirtualizationContext
Undurchsichtiges Handle für die Virtualisierung instance. Dies muss der Wert aus dem VirtualizationInstanceHandle-Member des callbackData-Elements sein, das im PRJ_GET_PLACEHOLDER_INFO_CB Rückruf an den Anbieter übergeben wird.
[in] destinationFileName
Eine mit NULL endende Unicode-Zeichenfolge, die den Pfad relativ zum Virtualisierungsstamm zu der Datei oder dem Verzeichnis angibt, für die bzw. das ein Platzhalter erstellt werden soll.
Dies muss eine Übereinstimmung mit dem FilePathName-Member des callbackData-Parameters sein, der im PRJ_GET_PLACEHOLDER_INFO_CB Rückruf an den Anbieter übergeben wird. Der Anbieter sollte die PrjFileNameCompare-Funktion verwenden, um zu bestimmen, ob die beiden Namen übereinstimmen.
Wenn der PRJ_GET_PLACEHOLDER_INFO_CB Rückruf beispielsweise "dir1\dir1\FILE.TXT" in callbackData-FilePathName> angibt und der Sicherungsspeicher des Anbieters eine Datei namens "File.txt" im Verzeichnis dir1\dir2 enthält und PrjFileNameCompare beim Vergleich der Namen "FILE.TXT" und "File.txt" 0 zurückgibt, gibt der Anbieter "dir1\dir2\File.txt" als Wert dieses Parameters an.
[in] placeholderInfo
Ein Zeiger auf die Metadaten für die Datei oder das Verzeichnis.
[in] placeholderInfoSize
Größe des Puffers in Byte, auf den von placeholderInfo verwiesen wird.
ExtendedInfo
Ein Zeiger auf eine PRJ_EXTENDED_INFO Struktur, die erweiterte Informationen zum zu erstellenden Platzhalter angibt.
Rückgabewert
Wenn diese Funktion erfolgreich ist, wird S_OK zurückgegeben. Andernfalls wird ein Fehlercode HRESULT zurückgegeben.
Hinweise
Der Anbieter verwendet diese Routine, um die beim Aufruf seines PRJ_GET_PLACEHOLDER_INFO_CB Rückrufs angeforderten Daten bereitzustellen, oder er kann sie verwenden, um proaktiv einen Platzhalter festzulegen.
Die Mitglieder EaInformation, SecurityInformation und StreamsInformation von PRJ_PLACEHOLDER_INFO sind optional. Wenn der Anbieter keine erweiterten Attribute, benutzerdefinierten Sicherheitsbeschreibungen oder alternativen Datenströme bereitstellen möchte, muss er diese Felder auf 0 festlegen.
Symbolische Links
Um anzugeben, dass dieser Platzhalter eine symbolische Verknüpfung sein soll, formatiert der Anbieter einen Puffer mit einer einzelnen PRJ_EXTENDED_INFO Struktur und übergibt im extendedInfo
Parameter einen Zeiger darauf. Der Anbieter legt die Felder der Struktur wie folgt fest:
extendedInfo.InfoType = PRJ_EXT_INFO_TYPE_SYMLINK
extendedInfo.NextInfoOffset = 0
extendedInfo.Symlink.TargetName = <path to the target of the symbolic link>
Anforderungen
Anforderung | Wert |
---|---|
Unterstützte Mindestversion (Client) | Windows 10, Version 2004 (10.0; Build 19041) |
Unterstützte Mindestversion (Server) | Windows Server, Version 2004 (10.0; Build 19041) |
Zielplattform | Windows |
Kopfzeile | projectedfslib.h |