IMAPIProgress::Progress
Aplica-se a: Outlook 2013 | Outlook 2016
Atualizações o indicador de progresso com uma exibição do progresso conforme ele é feito para a conclusão da operação.
HRESULT Progress(
ULONG ulValue,
ULONG ulCount,
ULONG ulTotal
);
Parâmetros
ulValue
[in] Um número que indica o nível atual de progresso (calculado a partir dos parâmetros ulCount e ulTotal ou dos parâmetros lpulMin e lpulMax do método IMAPIProgress::SetLimits ) entre o limite inferior global e o limite superior global.
ulCount
[in] Um número que indica o item processado atualmente em relação ao total.
ulTotal
[in] O número total de itens a serem processados durante a operação.
Valor de retorno
S_OK
O indicador de progresso foi atualizado com êxito.
Observações para implementadores
O parâmetro ulValue será igual ao valor mínimo global somente no início da operação e ao valor máximo global somente na conclusão da operação.
Use os parâmetros ulCount e ulTotal , se disponíveis, para exibir uma mensagem opcional, como "5 itens concluídos em 10". Se ulCount e ulTotal estiverem definidos como 0, decida se devem alterar visualmente o indicador de progresso. Alguns provedores de serviço definem esses parâmetros como 0 para indicar que estão processando um subobjeto cujo progresso é monitorado em relação a um objeto pai. Nessa situação, faz sentido alterar a exibição somente quando o objeto pai relata o progresso. Alguns provedores de serviços passam 0 para esses parâmetros sempre.
Para obter mais informações sobre como implementar o Progresso e os outros métodos IMAPIProgress , consulte Implementando um Indicador de Progresso.
Notas para chamadores
Nem todos os três parâmetros para IMAPIProgress::P rogress são necessários . O único parâmetro necessário é ulValue, um número que indica o percentual de progresso. Se o sinalizador MAPI_TOP_LEVEL estiver definido, você também poderá passar uma contagem de objetos e um total de objetos. Algumas implementações usam esses valores para exibir uma frase como "5 itens concluídos em 10" com o indicador de progresso.
Se você estiver copiando todas as mensagens em uma única pasta, defina ulTotal como o número total de mensagens que estão sendo copiadas. Se você estiver copiando uma pasta, defina ulTotal como o número de subpastas na pasta. Se a pasta a ser copiada não contiver subpastas e somente mensagens, defina ulTotal como 1.
Para saber mais sobre como e quando fazer chamadas para um objeto de progresso, confira o tópico Exibir um indicador de progresso.
Referência do MFCMAPI
Para ver códigos de exemplo do MFCMAPI, confira a tabela a seguir.
Arquivo | Função | Comentário |
---|---|---|
MAPIProgress.cpp |
CMAPIProgress::P rogress |
O MFCMAPI usa o método IMAPIProgress::P rogress para atualizar a barra de status MFCMAPI com o percentual atual de progresso, calculado a partir de uValue e os valores máximos e mínimos atuais. |
Confira também
MFCMAPI como exemplo de código