ScRelocProps
Aplica-se a: Outlook 2013 | Outlook 2016
Ajusta os ponteiros em uma matriz SPropValue depois que a matriz e seus dados foram copiados ou movidos para um novo local.
Propriedade | Valor |
---|---|
Arquivo de cabeçalho: |
Mapidefs.h |
Implementado por: |
MAPI |
Chamado por: |
Aplicativos cliente e provedores de serviços |
SCODE ScRelocProps(
int cprop,
LPSPropValue rgprop,
LPVOID pvBaseOld,
LPVOID pvBaseNew,
ULONG FAR * pcb
);
Parâmetros
cprop
[in] Contagem de propriedades na matriz apontada pelo parâmetro rgprop .
rgprop
[in] Ponteiro para uma matriz de estruturas SPropValue para as quais os ponteiros devem ser ajustados.
pvBaseOld
[in] Ponteiro para o endereço base original da matriz apontada pelo parâmetro rgprop .
pvBaseNew
[in] Ponteiro para o novo endereço base da matriz apontada pelo parâmetro rgprop .
Pcb
[in, out] Ponteiro opcional para o tamanho, em bytes, da matriz indicada pelo parâmetro pvBaseNew . Se não for NULL, o parâmetro pcb será definido como o número de bytes armazenados no parâmetro pvD .
Valor de retorno
S_OK
Os ponteiros foram ajustados com êxito.
MAPI_E_INVALID_PARAMETER
Um ou ambos os parâmetros eram inválidos ou um tipo de propriedade desconhecido foi encontrado.
Comentários
A função ScRelocProps opera na suposição de que a matriz de valor da propriedade para a qual os ponteiros são ajustados foi originalmente alocada em uma única chamada semelhante a uma chamada para a função ScCopyProps . Se um aplicativo cliente ou provedor de serviços estiver trabalhando com um valor de propriedade criado a partir de blocos de memória desarticulados, ele deverá usar ScCopyProps para copiar propriedades.
ScRelocProps é usado para manter a validade de ponteiros em uma matriz SPropValue . Para manter a validade dos ponteiros ao escrever tal matriz e lê-la de um disco, execute as seguintes operações:
Antes de escrever a matriz e os dados em um disco, chame ScRelocProps na matriz com o parâmetro pvBaseNew apontando para algum valor padrão zero, por exemplo.
Depois de ler a matriz e os dados de um disco, chame ScRelocProps na matriz com o parâmetro pvBaseOld igual ao mesmo valor padrão usado na Etapa 1. A matriz e os dados devem ser lidos em um buffer criado com uma única alocação.
O parâmetro pcb para ScRelocProps é opcional.