LoadFromMappedFile

Dokumentverwaltung, Performance, Dateieingabe

Beschreibung

Lädt und wählt ein lokales PDF über eine begrenzte schreibgeschützte gemappte Ansicht, sodass große verzögerte Objekt- und Streamlesungen Betriebssystem-Dateiseiten wiederverwenden können, ohne die vollständige Quelle im Speicher vorzuhalten

Syntax

Delphi

Function TPDFlib.LoadFromMappedFile(Const FileName, Password: WideString;
  WindowSize: Int64= 0; Options: Integer= 0): Integer;

Parameter

FileNameDer Pfad des lokalen PDF
PasswordDas zum Öffnen des PDF verwendete Passwort oder ein leerer String für ein unverschlüsseltes Dokument
WindowSizeDie angeforderte Größe der gemappten Ansicht in Byte; null wählt 64 MiB, Werte unter der Betriebssystem-Allokationsgranularität werden auf diese Granularität angehoben und Werte über 1 GiB begrenzt
OptionsNull erlaubt einen schreibgeschützten Dateistream-Fallback, während PDF_MAPPED_FILE_REQUIRE_MAPPING fehlschlägt, sofern keine gemappte Ansicht aktiv ist

Rückgabewerte

0Die Argumente waren ungültig, die Datei konnte nicht geöffnet werden, die geforderte Zuordnung war nicht verfügbar, oder das PDF konnte nicht geladen werden; prüfen Sie LastErrorCode
1Das Dokument wurde geladen und ausgewählt

Anmerkungen

Windows-Builds behalten eine schreibgeschützte Sicht und remappen sie bei Bedarf an Zuordnungsgranularitätsgrenzen; andere Plattformen und Mapping-Fehler verwenden denselben absoluten Lesevertrag über einen normalen schreibgeschützten Dateistream, sofern kein Mapping erforderlich ist

Die Standard-64-MiB-Ansicht begrenzt die Adressraumnutzung unabhängig von der Quellgröße und eignet sich für spärlichen Zugriff auf große lokale Dateien; eine kleinere Ansicht kann residenten Adressraum auf Kosten von mehr Remappings reduzieren

Absolute Objektscheiben-Lesungen kopieren direkt aus der aktuellen Sicht in parser-eigenen Speicher, ohne den positionalen Stream-Cursor zu ändern; dies ist keine dauerhafte Zero-Copy-Zeiger-API, da Remapping Sichtadressen ungültig macht

Die Quelle bleibt geöffnet, bis das geladene Dokument entfernt wird, und Speichern oder verzögerte Extraktion können weiter daraus lesen

OnPassword zugewiesen ist, erhält jeder abgelehnte Passwort-Versuch einen frischen gemappten Stream und ParserzustandVerwenden Sie

GetMappedFileInfo, um zu bestätigen, ob die Zuordnung aktiv ist, und aktuelle Ansichts- und Lesestatistiken zu inspizieren