อ่านไฟล์ MS Outlook PST ใน C# .NET

ไฟล์โฟลเดอร์ส่วนบุคคล (.pst) คือไฟล์ข้อมูล Outlook ที่เก็บข้อความและรายการอื่นๆ ของคุณบนคอมพิวเตอร์ของคุณ นี่เป็นไฟล์ทั่วไปที่บันทึกข้อมูลใน Outlook คุณสามารถส่งออก สำรองข้อมูล กู้คืน และรหัสผ่านป้องกันไฟล์ PST โดยใช้ Outlook เอง ผู้ใช้ Outlook บางรายต้องการเก็บรหัสผ่านไฟล์ PST ของตนไว้เพื่อป้องกันความเป็นไปได้ในการสอดแนมเป็นศูนย์ เป็นไปได้ที่จะป้องกันไฟล์ PST ใน Outlook:

  1. เปิด Outlook แล้วไปที่ “ไฟล์” > “การตั้งค่าบัญชี” > “การตั้งค่าบัญชี”
  2. ในหน้าต่าง “การตั้งค่าบัญชี” เลือกไฟล์ PST ที่คุณต้องการตั้งรหัสผ่าน จากนั้นคลิก ‘การตั้งค่า’
  3. ใน ‘หน้าต่างไฟล์ข้อมูล Outlook’ คลิกปุ่ม ‘เปลี่ยนรหัสผ่าน’

ในบทความนี้ เราจะเรียนรู้วิธีการทำงานกับไฟล์ pst ที่ป้องกันด้วยรหัสผ่านใน C# .NET

มันทำงานอย่างไรภายใน?

สิ่งหนึ่งที่น่าสนใจเกี่ยวกับไฟล์ PST ของ Outlook ที่ป้องกันด้วยรหัสผ่านคือการป้องกันนั้นใช้งานจริงใน Outlook เท่านั้น สตรีมข้อมูลไม่ได้เข้ารหัสเลย และทำให้สามารถใช้ API บางตัวเพื่อรีเซ็ตรหัสผ่านหรือแยกอีเมลโดยที่ไม่รู้รหัสผ่านด้วย API เช่น Aspose.Email for .NET

C# .NET API เพื่อทำงานกับไฟล์ PST ที่ป้องกันด้วยรหัสผ่าน

Aspose.Email for .NET เป็น API ที่มีประสิทธิภาพซึ่งมีคุณสมบัติมากมายสำหรับใช้งานแอปพลิเคชันอีเมล นอกจากนี้ยังอนุญาตให้อ่านและแก้ไขไฟล์ pst และ ost และรูปแบบการจัดเก็บเมลอื่นๆ เช่น MBOX, OLM คุณสามารถติดตั้งไลบรารีผ่าน NuGet หรือ ดาวน์โหลด DLL ของมัน

PM> Install-Package Aspose.Email

อ่านไฟล์ PST ที่ป้องกันด้วยรหัสผ่าน

ด้วย Apose.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 ส่งคืน `true’ หากไฟล์ PST มีการป้องกันด้วยรหัสผ่าน และ ‘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 หากต้องการเพิ่มหรือเปลี่ยนรหัสผ่าน ให้ส่งสตริงรหัสผ่านเป็นพารามิเตอร์ และหากต้องการลบรหัสผ่าน ให้ส่งค่า Null
using var pst = PersonalStorage.Create("SetPasswordOnPST_out.pst", FileFormatVersion.Unicode);
// เพิ่มหรือเปลี่ยนรหัสผ่าน
const string password = "Password1";
pst.Store.ChangePassword(password);
// ลบรหัสผ่าน
pst.Store.ChangePassword(null);

รับใบอนุญาต API ฟรี

คุณสามารถรับ ใบอนุญาตชั่วคราวฟรี เพื่อใช้ Aspose.Email for .NET โดยไม่มีข้อจำกัดในการประเมิน

บทสรุป

ในบทความนี้ คุณได้เรียนรู้วิธีจัดการไฟล์ที่ป้องกันด้วยรหัสผ่านโดยใช้ C# นอกจากนี้ คุณได้เห็นวิธีการอ่านข้อมูลโฟลเดอร์ อ่านอีเมล และแยกรายการจากไฟล์ PST ใน C# นอกจากนี้ คุณสามารถสำรวจเพิ่มเติมเกี่ยวกับ Aspose.Email for .NET โดยใช้ เอกสารประกอบ นอกจากนี้ คุณสามารถแบ่งปันคำถามหรือข้อสงสัยของคุณบน ฟอรัม ของเรา

ดูสิ่งนี้ด้วย