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