Compartir a través de


IMAPIFolder::EmptyFolder

Hace referencia a: Outlook 2013 | Outlook 2016

Elimina todos los mensajes y subcarpetas de una carpeta sin eliminar la propia carpeta.

HRESULT EmptyFolder(
  ULONG_PTR ulUIParam,
  LPMAPIPROGRESS lpProgress,
  ULONG ulFlags
);

Parameters

ulUIParam

[in] Identificador de la ventana primaria del indicador de progreso. El parámetro ulUIParam se omite a menos que se establezca la marca FOLDER_DIALOG en el parámetro ulFlags .

lpProgress

[in] Puntero a un objeto de progreso que muestra un indicador de progreso. Si se pasa NULL en lpProgress, el proveedor del almacén de mensajes muestra un indicador de progreso mediante la implementación del objeto de progreso MAPI. El parámetro lpProgress se omite a menos que se establezca la marca FOLDER_DIALOG en el parámetro ulFlags .

ulFlags

[in] Máscara de bits de marcas que controla cómo se vacía la carpeta. Se pueden establecer las siguientes marcas:

DEL_ASSOCIATED

Elimina todas las subcarpetas, incluidas las subcarpetas que contienen mensajes con contenido asociado. La marca de DEL_ASSOCIATED solo tiene significado para la carpeta de nivel superior en la que actúa la llamada.

DELETE_HARD_DELETE

Quita permanentemente todos los mensajes, incluidos los eliminados temporalmente.

FOLDER_DIALOG

Muestra un indicador de progreso mientras continúa la operación.

Valor devuelto

S_OK

La carpeta se vació correctamente.

MAPI_W_PARTIAL_COMPLETION

La llamada se realizó correctamente, pero la carpeta no se vació por completo. Cuando se devuelve esta advertencia, la llamada debe controlarse correctamente. Para probar esta advertencia, use la macro HR_FAILED . Para obtener más información, vea Uso de macros para el control de errores.

Comentarios

El método IMAPIFolder::EmptyFolder elimina todo el contenido de una carpeta sin eliminar la propia carpeta.

Durante una llamada a EmptyFolder , los mensajes enviados no se eliminan.

El contenido asociado de una carpeta incluye mensajes que se usan para describir vistas, reglas, formularios personalizados y almacenamiento de soluciones personalizadas, y también pueden incluir definiciones de formulario.

Notas a los implementadores

No llame al método IMsgStore::AbortSubmit para los mensajes de la carpeta que se han enviado. Los mensajes enviados no se eliminan.

Notas para los llamadores

Espere estos valores devueltos en las condiciones siguientes.

Condition Valor devuelto
EmptyFolder ha vaciado correctamente la carpeta. S_OK
EmptyFolder no pudo vaciar completamente la carpeta. MAPI_W_PARTIAL_COMPLETION
EmptyFolder no se pudo completar. Cualquier valor de error

Cuando EmptyFolder no se puede completar, no suponga que no se ha realizado ningún trabajo. EmptyFolder podría haber podido eliminar parte del contenido de la carpeta antes de encontrar el error.

Referencia de MFCMAPI

Para obtener un ejemplo de código de MFCMAPI, vea la siguiente tabla.

Archivo Función Comment
MsgStoreDlg.cpp
CMsgStoreDlg::OnEmptyFolder
MFCMAPI usa el método IMAPIFolder::EmptyFolder para eliminar el contenido de la carpeta especificada.

Vea también

IMsgStore::AbortSubmit

IMAPIFolder : IMAPIContainer

MFCMAPI como un ejemplo de código

Uso de macros para el control de errores