Freigeben über


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();