Email 处理控件Aspose.Email 教程(20):使用 C# .NET 处理受密码保护的 PST 文件

翻译|使用教程|编辑:胡涛|2023-02-02 10:10:37.413|阅读 107 次

概述:本文介绍如何使用 C# .NET 处理受密码保护的 PST 文件,欢迎查阅。

# 聚惠初夏 ·DevExpress、Aspose、MyEclipse等知名产品 送技术支持/VIP资源/无门槛优惠券 >>

相关链接:

Aspose API支持流行文件格式处理,并允许将各类文档导出或转换为固定布局文件格式和最常用的图像/多媒体格式。

Aspose.Email 是用于轻松的开发 email 功能的应用程序的一组控件,基于  ASP.NET 的Web应用、Web服务和Windows 应用。支持 Outlook PST, EML, MSG, and MHT 格式. 允许开发者直接与 SMTP, POP, FTP, 和 MS Exchange 服务器进行工作。支持邮件合并、行事历、定制邮件标题和内容、嵌入文件等

个人文件夹文件 (.pst)是一种Outlook 数据文件,用于在您的计算机上存储您的邮件和其他项目。这是保存 Outlook 信息的最常见文件。您可以使用 Outlook 本身导出、备份、还原和密码保护 PST 文件。一些 Outlook 用户喜欢对他们的 PST 文件进行密码保护,以确保窥探的可能性为零。可以保护 Outlook 中的任何 PST 文件:

Aspose.Email 最新下载

  1. 打开 Outlook 并转到File> Account Settings> Account Settings。
  2. 在Account Settings窗口中,选择要设置密码的 PST 文件。然后点击Settings。
  3. 在 中Outlook Data File window,单击Change Password按钮。

在本文中,我们将学习如何在 C# .NET 中使用密码保护的 pst 文件。

  • 它在内部是如何运作的?
  • 用于处理受密码保护的 PST 文件的 C# .NET API
  • 读取受密码保护的 PST 文件
  • 检查 PST 文件是否受密码保护
  • 在受密码保护的 PST 中验证密码
  • 添加、更改或删除 PST 文件的密码
(一) 它在内部是如何运作的?

关于受密码保护的 Outlook PST 文件的一件有趣的事情是,保护实际上只在 Outlook 中实施;数据流根本没有加密。并且它可以使用某些 API 来重置密码或在不知道密码的情况下使用Aspose.Email for .NET等 API 提取电子邮件。

(二) 用于处理受密码保护的 PST 文件的 C# .NET API

Aspose.Email for .NET是一个强大的 API,它提供了一系列功能来实现电子邮件应用程序。此外,它还允许读取和修改 pst 和 ost 文件以及其他邮件存储格式,例如 MBOX、OLM。您可以通过NuGet安装库或下载其 DLL。

PM> Install-Package Aspose.Email
(三) 读取受密码保护的 PST 文件

使用Aspose.Email,您可以像阅读普通的未受保护的pst 文件一样阅读受密码保护的文件。

using var pst = PersonalStorage.FromFile(fileName);
foreach (var folder in pst.RootFolder.GetSubFolders())
{
foreach (var msg in folder.EnumerateMessages())
{

}
}
(四) 在受密码保护的 PST 中验证密码

API 提供PersonalStorage.Store.IsPasswordProtected属性。PersonalStorage.Store.IsPasswordProtected属性返回truePST 文件是否受密码保护,如果false不是。

要检查文件是否受密码保护,请按照下列步骤操作:

  • 首先,从文件或流中加载 PST
  • 然后检查IsPasswordProtected属性
using var pst = PersonalStorage.FromFile("passwordprotectedPST.pst");
Console.WriteLine($"The storage is password protected - {pst.Store.IsPasswordProtected}");
(五) 检查 PST 文件是否受密码保护

PersonalStorage.Store.IsPasswordValid()方法将字符串密码作为参数,true如果密码正确则返回,false如果不正确则返回。

要验证密码,请执行以下步骤:

  • 首先,从文件或流中加载 PST
  • 然后将要检查的密码字符串作为参数传递给PersonalStorage.Store.IsPasswordValid()方法。
using var pst = PersonalStorage.FromFile("passwordprotectedPST.pst");
Console.WriteLine($"Password is valid - {pst.Store.IsPasswordValid("Password1")}");
(六) 添加、更改或删除 PST 文件的密码

PersonalStorage.Store.ChangePassword()方法用于添加、更改或删除密码。

为此,请按照下列步骤操作:

  • 首先,从文件或流中加载 PST 。
  • 然后调用PersonalStorage.Store.ChangePassword方法。要添加或更改密码,请将密码字符串作为参数传递,要删除密码,请传递空值。
using var pst = PersonalStorage.Create("SetPasswordOnPST_out.pst", FileFormatVersion.Unicode);
// Add or change the password
const string password = "Password1";
pst.Store.ChangePassword(password);
// Remove the password
pst.Store.ChangePassword(null);

在本文中,您学习了如何使用 C# 管理受密码保护的文件。此外,您还了解了如何使用 C# 读取文件夹信息、读取电子邮件以及从 PST 文件中提取项目。如您还有其他相关问题,欢迎咨询我们获取帮助或加入我们官方交流群。


欢迎下载|体验更多Aspose文档管理产品 
获取更多信息请咨询慧都在线客服 或 加入Aspose技术交流群(761297826

标签:

本站文章除注明转载外,均为本站原创或翻译。欢迎任何形式的转载,但请务必注明出处、不得修改原文相关链接,如果存在内容上的异议请邮件反馈至chenjj@evget.com


为你推荐

  • 推荐视频
  • 推荐活动
  • 推荐产品
  • 推荐文章
  • 慧都慧问

在线咨询
联系我们

客服热线
023-68661681

QQ客服

意见反馈


添加微信获专业服务

TOP
在线客服系统
live chat