Compartilhar via


Inicializar um Modelo de Objeto XPS

Descreve como inicializar um Modelo de Objeto XPS, permitindo que um programa crie um documento XPS.

As interfaces da API do Documento XPS são criadas por uma interface IXpsOMObjectFactory. Para obter um ponteiro para um IXpsOMObjectFactory que possa ser utilizado em seu programa, chame CoCreateInstance.

Antes de usar os exemplos de código a seguir no seu programa, leia o aviso de isenção de responsabilidade em Tarefas Comuns de Programação do Documento XPS.

Exemplo de código

O exemplo a seguir cria o alocador de objetos que será utilizado para criar interfaces Modelo de Objeto XPS em outros exemplos.

    IXpsOMObjectFactory *xpsFactory;

    HRESULT hr = S_OK;

    // Init COM for this thread if it hasn't 
    //  been initialized, yet.
    hr = CoInitializeEx(0, COINIT_MULTITHREADED);

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

    if (SUCCEEDED(hr))
    {
        // Make sure that you got a pointer 
        //  to the interface.

        // Use object factory...

        // ... and release when done
        xpsFactory->Release();
    }

    // Uninitialize COM when finished
    CoUninitialize();

Práticas Recomendadas

Você pode tornar seu programa mais eficiente obtendo um ponteiro para uma interface IXpsOMObjectFactory na primeira vez que precisar chamar IXpsOMObjectFactory para criar uma interface e, em seguida, salvar o ponteiro para utilizar em outras áreas do programa. Quando o programa não precisar mais do alocador de objetos ou não precisar dele por algum tempo, o ponteiro poderá ser liberado.

Próximas Etapas 

Criar um Modelo de Objeto XPS em branco

Usado Nesta Seção

:IXpsOMObjectFactory

:CoCreateInstance

Para obter mais informações

Embalagem

Referência da API de Documentos XPS

XML Paper Specification