IXpsOMObjectFactory::CreatePackage method (xpsobjectmodel.h)

Creates an IXpsOMPackage interface that serves as the root node of an XPS object model document tree.

Syntax

HRESULT CreatePackage(
  [out, retval] IXpsOMPackage **package
);

Parameters

[out, retval] package

A pointer to the new IXpsOMPackage interface.

Return value

The method returns an HRESULT. Possible values include, but are not limited to, those in the table that follows. For information about XPS document API return values that are not listed in this table, see XPS Document Errors.

Return code Description
S_OK
The method succeeded.
E_POINTER
package is NULL.

Remarks

The code example that follows illustrates how this method is used to create a new interface.


IXpsOMPackage    *newInterface;

// 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))
{
    hr = xpsFactory->CreatePackage (&newInterface);
    if (SUCCEEDED(hr))
    {
        // use newInterface

        newInterface->Release();
    }

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

For information about using IXpsOMPackage interface in a program, see Create a Blank XPS OM.

Requirements

Requirement Value
Minimum supported client Windows 7, Windows Vista with SP2 and Platform Update for Windows Vista [desktop apps | UWP apps]
Minimum supported server Windows Server 2008 R2, Windows Server 2008 with SP2 and Platform Update for Windows Server 2008 [desktop apps | UWP apps]
Target Platform Windows
Header xpsobjectmodel.h

See also

Create a Blank XPS OM

IXpsOMObjectFactory

IXpsOMPackage

XML Paper Specification

XPS Document Errors