Compartilhar via


OLFI

Aplica-se a: Outlook 2013 | Outlook 2016

Fila de estruturas de ID de longo prazo usadas pelo provedor de armazenamento PST (arquivo de Pastas Pessoais) para atribuir uma ID de Entrada para uma nova mensagem ou pasta no modo offline.

Informações rápidas

typedef struct { 
    ULONG    ulVersion; 
    MAPIUID  muidReserved; 
    ULONG    ulReserved; 
    DWORD    dwAlloc; 
    DWORD    dwNextAlloc; 
    LTID     ltidAlloc; 
    LTID     ltidNextAlloc; 
} OLFI, *POLFI;

Members

ulVersion

  • Número da versão da estrutura.

muidReserved

  • Esse membro é reservado para o uso interno do Outlook e não tem suporte.

ulReserved

  • Esse membro é reservado para o uso interno do Outlook e não tem suporte.

dwAlloc

  • O número de entradas disponíveis para alocação. Essas entradas compartilham o mesmo GUID (identificador globalmente exclusivo).

dwNextAlloc

  • O número de entradas que estão disponíveis em seguida para alocação. Essas entradas compartilham o mesmo GUID.

ltidAlloc

  • A estrutura de ID de longo prazo, LTID, identificando a entrada atualmente disponível para alocação. A estrutura de ID de longo prazo contém um GUID e um índice que identifica um objeto no repositório. Juntos, o GUID e o índice podem formar uma ID de Entrada exclusiva para um objeto.

ltidNextAlloc

  • Estrutura de ID de longo prazo identificando a próxima entrada disponível.

Comentários

Uma ID de Entrada é um identificador de entrada MAPI de 4 bytes para uma pasta ou uma mensagem. Para obter mais informações, consulte ENTRYID.

Quando um provedor de repositório PST atribui uma ID de Entrada a um novo objeto, ele primeiro precisa de um GUID que identifique o servidor e um índice que identifique o objeto no repositório. Embora o GUID não seja exclusivo em todas as IDs de entrada, o GUID e o índice combinados fornecem uma entrada exclusiva. Esse par GUID e index é acompanhado por uma estrutura de ID de longo prazo, LTID, que faz parte da estrutura OLFI .

O provedor de repositório PST não mantém fisicamente no OLFI uma estrutura LTID para cada par de índice GUID. Ele mantém uma estrutura LTID , ltidAlloc, para o primeiro par guid-index disponível no momento; uma contagem, dwAlloc, do número de entradas disponíveis que compartilham esse mesmo GUID; e uma segunda estrutura LTID , ltidNextAlloc, para o próximo par guid-index disponível que tem um GUID diferente. O provedor de repositório PST usa a estrutura OLFI para acompanhar os GUIDs e índices que ele distribuiu. Em um nível virtual, o provedor mantém uma reserva de várias estruturas LTID prontas para serem alocadas. dwAlloc mantém uma contagem das estruturas LTID disponíveis.

As solicitações de IDs de Entrada vêm em blocos. Quando há uma solicitação de um bloco, o provedor da loja PST verifica se há reserva suficiente em mãos comparando o tamanho solicitado com dwAlloc. Se houver reserva suficiente, ele retornará o GUID e o índice em ltidAlloc para alocação. Em seguida, ele diminui dwAlloc pelo tamanho solicitado e incrementa o índice em ltidAlloc pelo tamanho solicitado. Isso prepara o provedor de repositório PST para alocar ltidAlloc na próxima solicitação para outro bloco de IDs de Entrada. Observe que o GUID permanece o mesmo para a próxima solicitação.

Se o tamanho de uma solicitação for maior que dwAlloc, o provedor de armazenamento PST tentará usar o que ele tem a seguir na reserva, conforme especificado por dwNextAlloc e ltidNextAlloc. Ele copia dwNextAlloc e ltidNextAlloc para dwAlloc e ltidAlloc , respectivamente, e define dwNextAlloc e ltidNextAlloc como NULL.

Um provedor que envolve o provedor de repositório PST deve marcar periodicamente ltidNextAlloc para ver se ele é NULL. Se for, o provedor deve preenchê-lo com um novo GUID e redefinir dwNextAlloc para que mais IDs de entrada possam ser alocadas.

Confira também

Sobre a API de Replicação sobre o LTIDdo Computador de Estado de Replicação