Trabajando con Propiedades de Protección con Contraseña de PST

Comprobar Protección con Contraseña

El MapiPropertyTag.PR_PST_PASSWORD valor del MapiPropertyTag clase se usa para comprobar si un archivo está protegido con contraseña.

El hash CRC-32 de la cadena de contraseña se almacena en la propiedad PidTagPstPassword (etiqueta = 0x67ff0003) en el MessageStore. Si esta propiedad existe y es distinta de cero, entonces el PST está protegido con contraseña.

El siguiente fragmento de código muestra cómo comprobar si un archivo PST está protegido con contraseña y si la cadena proporcionada es una contraseña válida para ese PST.

El fragmento de código a continuación muestra dos funciones, la primera verifica si el PST está protegido con contraseña, y la segunda muestra cómo comprobar si una contraseña proporcionada es correcta o no.

Eliminar/Reestablecer la Propiedad PR_PST_PASSWORD

Eliminación del PR_PST_PASSWORD la propiedad no puede ser lograda ya que otras propiedades son eliminadas de un almacén de mensajes. En su lugar, necesitamos establecer su valor a cero (0) para eliminarla. La propiedad "Store" de la clase PST permite acceder a las propiedades de almacenamiento del PST en lugar de MessageStoreProperties del PST en este caso.

Establecer/Cambiar Contraseña del PST

El siguiente fragmento de código muestra cómo establecer una contraseña en archivos PST.

Verificación de Contraseña para Archivos PST Protegidos con Contraseña

Aspose.Email permite a los desarrolladores comprobar si el archivo PST está protegido con contraseña y verificar si la contraseña dada es correcta o no. Para ello, la API proporciona el PersonalStorage.Store.IsPasswordProtected propiedad y PersonalStorage.Store.IsPasswordValid() método. El PersonalStorage.Store.IsPasswordProtected la propiedad devuelve true si el archivo PST está protegido con contraseña y false si no lo está. La PersonalStorage.Store.IsPasswordValid() método que toma la cadena de contraseña como parámetro y devuelve true si la contraseña es correcta y false si es incorrecta.

El siguiente fragmento de código demuestra el uso de PersonalStorage.Store.IsPasswordProtected propiedad y PersonalStorage.Store.IsPasswordValid() método.

Código de Ejemplo

Salida de Consola

El almacenamiento está protegido con contraseña - True La contraseña es válida - True