Arbeiten mit IXpsOMDocumentSequence-Schnittstellen
In diesem Thema wird beschrieben, wie Sie die Schnittstellen verwenden, die den Zugriff auf FixedDocumentSequence ermöglichen, die oberste Ebene der Dokumenthierarchie in einem XPS-OM.
Schnittstellenname | Logische untergeordnete Schnittstellen | BESCHREIBUNG |
---|---|---|
IXpsOMDocumentSequence |
IXpsOMDocument |
Gruppiert eine Gruppe von FixedDocuments in einer sortierten Liste. |
IXpsOMDocumentCollection |
Keine |
Die Auflistung von FixedDocuments in einer XPS-Dokumentsequenz. |
Codebeispiel
Im folgenden Codebeispiel wird ein Zeiger auf die IXpsOMDocumentSequence-Schnittstelle abgerufen, die die Dokumentsequenz des XPS-OM enthält, das von xpsPackage dargestellt wird. Im Beispiel werden dann die Dokumente in der Auflistung aufgelistet.
HRESULT hr = S_OK;
IXpsOMDocumentSequence *docSeq;
IXpsOMDocumentCollection *docs;
IXpsOMDocument *doc;
UINT32 numDocs = 0;
UINT32 thisDoc = 0;
// get the fixed document sequence of the package
hr = xpsPackage->GetDocumentSequence(&docSeq);
// get the collection of fixed documents in
// the fixed document sequence
hr = docSeq->GetDocuments(&docs);
// walk the collection of documents;
hr = docs->GetCount(&numDocs);
thisDoc = 0;
while (thisDoc < numDocs) {
hr = docs->GetAt(thisDoc, &doc);
// use this doc for something
// release this doc and then go to the next one
doc->Release();
thisDoc++;
}
// release the document collection and
// the document sequence
docs->Release();
docSeq->Release();