Freigeben über


IXpsOMObjectFactory::CreatePackageFromFile-Methode (xpsobjectmodel.h)

Öffnet eine XPS-Paketdatei und gibt eine instanziierte XPS-Dokumentobjektstruktur zurück.

Syntax

HRESULT CreatePackageFromFile(
  [in]          LPCWSTR       filename,
  [in]          BOOL          reuseObjects,
  [out, retval] IXpsOMPackage **package
);

Parameter

[in] filename

Der Name der XPS-Paketdatei.

[in] reuseObjects

Ein boolescher Wert, der angibt, ob die Software versucht, die Dokumentobjektstruktur zu optimieren, indem Objekte freigegeben werden, die in allen Eigenschaften und untergeordneten Elementen identisch sind.

Wert Bedeutung
STIMMT
Die Software versucht, die Objektstruktur zu optimieren.
FALSE
Die Software versucht nicht, die Objektstruktur zu optimieren.

[out, retval] package

Ein Zeiger auf die neue IXpsOMPackage-Schnittstelle , die die resultierende XPS-Dokumentobjektstruktur enthält.

Rückgabewert

Die Methode gibt ein HRESULT zurück. Mögliche Werte sind unter anderem diejenigen in der folgenden Tabelle. Informationen zu Rückgabewerten der XPS-Dokument-API, die in dieser Tabelle nicht aufgeführt sind, finden Sie unter XPS-Dokumentfehler.

Rückgabecode BESCHREIBUNG
S_OK
Die Methode wurde erfolgreich ausgeführt.
E_POINTER
Der Dateiname oder das Paket ist NULL.
 

Diese Methode ruft die Paketerstellungs-API auf. Informationen zu den Rückgabewerten der Verpackungs-API finden Sie unter Paketfehler.

Hinweise

Diese Methode überprüft nicht den Inhalt von streambasierten Ressourcen, die aus dem Stream in die Objekte des XPS OM geladen werden. Stattdessen muss die Anwendung diese Ressourcen überprüfen, bevor sie sie verwendet.

Diese Methode deserialisiert die Dokumentseiten nicht. Das XPS-Paket wird nur bis zu den Seitenverweisteilen deserialisiert. Die tatsächlichen Seiten können nach Bedarf deserialisiert werden, indem die IXpsOMPageReference::GetPage-Methode aufgerufen wird. Da die Seiten beim Aufrufen von GetPage nicht deserialisiert werden, kann diese Methode S_OK zurückgeben oder, wenn versucht wird, eine problematische Seite in ein XPS-Paket zu laden, einen Fehler zurückgibt.

Wenn Sie unmittelbar nach dem Lesen eines XPS-Pakets ein XPS-Om schreiben, gehen möglicherweise einige der ursprünglichen Inhalte verloren oder werden geändert.

Einige der Änderungen, die in einem solchen Fall auftreten können, sind in der folgenden Tabelle aufgeführt:

Dokumentfeature Aktion
Digitale Signaturen Aus Dokument entfernt
DiscardControl-Teil Aus Dokument entfernt
Fremddokumentteile Aus Dokument entfernt
FixedPage-Markup Vom Original geändert
Ressourcenwörterbuchmarkup Vom Original geändert, wenn das Optimierungsflag festgelegt ist
 

Informationen zur Verwendung der IXpsOMPackage-Schnittstelle in einem Programm finden Sie unter Erstellen eines leeren XPS-OM.

Anforderungen

Anforderung Wert
Unterstützte Mindestversion (Client) Windows 7, Windows Vista mit SP2 und Plattformupdate für Windows Vista [Desktop-Apps | UWP-Apps]
Unterstützte Mindestversion (Server) Windows Server 2008 R2, Windows Server 2008 mit SP2 und Plattformupdate für Windows Server 2008 [Desktop-Apps | UWP-Apps]
Zielplattform Windows
Kopfzeile xpsobjectmodel.h

Weitere Informationen

Erstellen eines leeren XPS-OM

IXpsOMObjectFactory

IXpsOMPackage

IXpsOMPageReference::GetPage

Paketerstellungsfehler

XML Paper Specification

XPS-Dokumentfehler