Freigeben über


IXpsOMObjectFactory::CreateImageResource-Methode (xpsobjectmodel.h)

Erstellt eine IXpsOMImageResource-Schnittstelle , die für den Zugriff auf einen Bildressourcenstream verwendet wird.

Syntax

HRESULT CreateImageResource(
  [in]          IStream             *acquiredStream,
  [in]          XPS_IMAGE_TYPE      contentType,
  [in]          IOpcPartUri         *partUri,
  [out, retval] IXpsOMImageResource **imageResource
);

Parameter

[in] acquiredStream

Der schreibgeschützte Stream, der dieser Ressource zugeordnet werden soll. Dieser Parameter darf nicht NULL sein.

Wichtig Behandeln Sie diesen Stream als Single-Threaded Apartment-Objekt (STA). geben Sie ihn nicht erneut ein.
 

[in] contentType

Der XPS_IMAGE_TYPE Wert, der den Bildtyp des Datenstroms beschreibt, auf den von acquiredStream verwiesen wird.

[in] partUri

Die IOpcPartUri-Schnittstelle , die den Teilnamen enthält, der dieser Ressource zugewiesen werden soll. Dieser Parameter darf nicht NULL sein.

[out, retval] imageResource

Ein Zeiger auf die neue IXpsOMImageResource-Schnittstelle .

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_INVALIDARG
contentType war kein gültiger XPS_IMAGE_TYPE Wert.
E_POINTER
acquiredStream, partUri oder imageResource ist NULL.

Hinweise

Im folgenden Codebeispiel wird veranschaulicht, wie diese Methode zum Erstellen einer neuen Schnittstelle verwendet wird.


IXpsOMImageResource    *newInterface;
// The following values are defined outside of 
// this example.
//  IStream            *acquiredStream;
//  XPS_IMAGE_TYPE     contentType;
//  IOpcPartUri        *partUri;
    
// Note the implicit requirement that CoInitializeEx 
//  has previously been called from this thread.

hr = CoCreateInstance(
    __uuidof(XpsOMObjectFactory),
    NULL,
    CLSCTX_INPROC_SERVER,
    _uuidof(IXpsOMObjectFactory),
    reinterpret_cast<LPVOID*>(&xpsFactory)
    );

if (SUCCEEDED(hr))
{
    // The partUriString and acquiredStream variables 
    //   are defined outside of this example.
    hr = xpsFactory->CreatePartUri(partUriString, &partUri);
    if (SUCCEEDED(hr))
    {
        hr = xpsFactory->CreateImageResource (
            acquiredStream,
            contentType,
            partUri,
            &newInterface);
        if (SUCCEEDED(hr))
        {
            // use newInterface

            newInterface->Release();
        }
        partUri->Release();
    }
    xpsFactory->Release();
}
else
{
    // evaluate HRESULT error returned in hr
}

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

IOpcPartUri

IXpsOMImageResource

IXpsOMObjectFactory

XML Paper Specification

XPS-Dokumentfehler

XPS_IMAGE_TYPE