![حماية وإلغاء حماية ملفات Excel](images/Protect-Excel-Files-C.jpg#center)
Microsoft Excel هو برنامج شائع لإدارة البيانات في المؤسسات. يرجع ذلك أساسًا إلى ميزات التلاعب والتمثيل المتقدمة للبيانات. في هذا العصر التكنولوجي ، تتم مشاركة المستندات افتراضيًا بدلاً من النسخ المطبوعة. قد تحتوي هذه الملفات على بيانات معقدة وحساسة. لذلك للحفاظ على سلامة هذه الملفات ، قد تحتاج إلى حمايتها من التعديل. ميزات الحماية في Excel مفيدة لهذا الغرض. في هذه المقالة ، ستتعلم كيفية حماية ملفات Excel وإلغاء حمايتها برمجيًا باستخدام C ++.
- واجهة برمجة تطبيقات C ++ لحماية ملفات Excel وإلغاء حمايتها
- حماية ملفات Excel باستخدام C ++
- قم بإلغاء حماية مصنف Excel باستخدام C ++
- حماية ورقة عمل Excel باستخدام C ++
- قم بإلغاء حماية ورقة عمل Excel باستخدام C ++
- احصل على رخصة مجانية
C ++ API لحماية ملفات Excel وإلغاء حمايتها - تنزيل مجاني
Aspose.Cells for C ++ هي مكتبة C ++ أصلية تسمح لك بمعالجة ملفات Excel دون الحاجة إلى تثبيت Microsoft Excel. لذلك ، يتم استخدامه لأتمتة العديد من مهام سير عمل Excel. توفر واجهة برمجة التطبيقات مجموعة من الميزات المفيدة ، بما في ذلك حماية ملفات Excel وإلغاء حمايتها. يمكنك إما تثبيت API من خلال NuGet أو تنزيلها مباشرة من قسم التنزيلات.
PM> Install-Package Aspose.Cells.Cpp
حماية ملفات Excel باستخدام C ++
يوفر Aspose.Cells for C ++ أنواع الحماية التالية لحماية ملفات Excel.
- الكل: حماية البيانات بالكامل حتى لا يتمكن المستخدم من تعديل أي شيء.
- المحتويات: حماية محتوى ورقة العمل.
- الكائنات: حماية الكائنات الموجودة في ورقة العمل حتى لا يتمكن المستخدم من تعديل الكائنات الرسومية.
- السيناريوهات: حماية السيناريوهات في ورقة العمل.
- الهيكل: حماية هيكل المصنف.
- Windows: حماية النوافذ المحفوظة من التعديل.
- لا شيء: لا توجد حماية مطبقة.
فيما يلي خطوات حماية ملفات Excel باستخدام C ++.
- قم بتحميل ملف Excel باستخدام فئة IWorkbook.
- قم بحماية الملف باستخدام IWorkbook-> Protect (Aspose :: Cells :: ProtectionType protectionType، intrusiveptrAspose::Cells::Systems::String كلمة المرور) طريقة.
- احفظ ملف Excel المحمي باستخدام IWorkbook-> Save (intrusiveptrAspose::Cells::Systems::String اسم الملف) طريقة.
يوضح نموذج التعليمات البرمجية التالي كيفية حماية ملفات Excel باستخدام C ++.
// مسار الدليل المصدر.
StringPtr srcDir = new String("SourceDirectory\\");
// مسار دليل الإخراج.
StringPtr outDir = new String("OutputDirectory\\");
// قم بتحميل ملف Excel
intrusive_ptr<IWorkbook> workbook = Factory::CreateIWorkbook(srcDir->StringAppend(new String("sampleExcelFile.xlsx")));
// حماية المصنف بتحديد نوع الحماية
workbook->Protect(ProtectionType::ProtectionType_All, new String("12345"));
// احفظ ملف Excel
workbook->Save(outDir->StringAppend(new String("sampleExcelFile_protected_out.xlsx")));
قم بإلغاء حماية مصنف Excel باستخدام C ++
فيما يلي خطوات إلغاء حماية ملف Excel.
- قم بتحميل ملف Excel باستخدام فئة IWorkbook.
- قم بإلغاء حماية الملف باستخدام IWorkbook-> Unprotect (intrusiveptrAspose::Cells::Systems::String كلمة المرور) طريقة.
- اضبط كلمة المرور على NULL باستخدام IWorkbook-> GetISettings() -> SetPassword (intrusiveptrAspose::Cells::Systems::String قيمة) طريقة.
- احفظ ملف Excel غير المحمي باستخدام IWorkbook-> Save (intrusiveptrAspose::Cells::Systems::String اسم الملف) طريقة.
يوضح نموذج التعليمات البرمجية التالي كيفية إلغاء حماية ملفات Excel.
// مسار الدليل المصدر.
StringPtr srcDir = new String("SourceDirectory\\");
// مسار دليل الإخراج.
StringPtr outDir = new String("OutputDirectory\\");
// قم بتحميل ملف Excel
intrusive_ptr<IWorkbook> workbook = Factory::CreateIWorkbook(srcDir->StringAppend(new String("sampleExcelFileProtected.xlsx")));
// إلغاء حماية المصنف
workbook->Unprotect(new String("12345"));
// اضبط كلمة المرور على قيمة خالية
workbook->GetISettings()->SetPassword(NULL);
// احفظ ملف Excel
workbook->Save(outDir->StringAppend(new String("sampleExcelFileUnprotected_out.xlsx")));
حماية ورقة عمل Excel باستخدام C ++
بالإضافة إلى حماية ملفات Excel ، يمكنك أيضًا حماية أوراق العمل الفردية. الرجاء استخدام الخطوات التالية لحماية أوراق عمل Excel.
- أولاً ، قم بتحميل ملف Excel باستخدام فئة IWorkbook.
- احصل على ورقة العمل التي تريد حمايتها من مجموعة أوراق العمل باستخدام طريقة IWorkbook-> GetIWorksheets() -> GetObjectByIndex (Aspose :: Cells :: Systems :: Int32 index).
- احصل على حماية ورقة العمل باستخدام طريقة IWorksheet-> GetIProtection().
- اضبط خيارات الحماية مثل SetAllowEditingContent (قيمة منطقية).
- اضبط كلمة المرور باستخدام IProtection-> SetPassword (intrusiveptrAspose::Cells::Systems::String قيمة) طريقة.
- أخيرًا ، احفظ ملف Excel مع ورقة العمل المحمية باستخدام IWorkbook-> Save (intrusiveptrAspose::Cells::Systems::String اسم الملف) طريقة.
يوضح نموذج التعليمات البرمجية التالي كيفية حماية ورقة عمل Excel.
// مسار الدليل المصدر.
StringPtr srcDir = new String("SourceDirectory\\");
// مسار دليل الإخراج.
StringPtr outDir = new String("OutputDirectory\\");
// قم بتحميل ملف Excel
intrusive_ptr<IWorkbook> workbook = Factory::CreateIWorkbook(srcDir->StringAppend(new String("sampleExcelFile.xlsx")));
// الوصول إلى ورقة العمل الأولى في ملف Excel
intrusive_ptr<IWorksheet> worksheet = workbook->GetIWorksheets()->GetObjectByIndex(0);
// الوصول إلى حماية ورقة العمل
intrusive_ptr<IProtection> protection = worksheet->GetIProtection();
// الطرق الثلاثة التالية مخصصة فقط لبرنامج Excel 2000 والتنسيقات السابقة
protection->SetAllowEditingContent(false);
protection->SetAllowEditingObject(false);
protection->SetAllowEditingScenario(false);
// حماية ورقة العمل الأولى بكلمة مرور "12345"
protection->SetPassword(new String("12345"));
// احفظ ملف Excel
workbook->Save(outDir->StringAppend(new String("sampleExcelFile_protectedWorksheet_out.xlsx")));
قم بإلغاء حماية ورقة عمل Excel باستخدام C ++
فيما يلي خطوات إلغاء حماية أوراق عمل Excel.
- قم بتحميل ملف Excel باستخدام فئة IWorkbook.
- قم بالوصول إلى ورقة العمل المحمية باستخدام IWorkbook-> GetIWorksheets() -> GetObjectByIndex (Aspose :: Cells :: Systems :: Int32 index).
- قم بإلغاء حماية ورقة العمل باستخدام IWorksheet-> Unprotect (intrusiveptrAspose::Cells::Systems::String كلمة المرور) طريقة.
- أخيرًا ، احفظ ملف Excel بورقة العمل غير المحمية باستخدام IWorkbook-> Save (intrusiveptrAspose::Cells::Systems::String fileName) طريقة.
يوضح نموذج التعليمات البرمجية التالي كيفية إلغاء حماية ورقة عمل Excel باستخدام C ++.
// مسار الدليل المصدر.
StringPtr srcDir = new String("SourceDirectory\\");
// مسار دليل الإخراج.
StringPtr outDir = new String("OutputDirectory\\");
// قم بتحميل ملف Excel
intrusive_ptr<IWorkbook> workbook = Factory::CreateIWorkbook(srcDir->StringAppend(new String("sampleExcelFileProtectedWorksheet.xlsx")));
// الوصول إلى ورقة العمل الأولى في ملف Excel
intrusive_ptr<IWorksheet> worksheet = workbook->GetIWorksheets()->GetObjectByIndex(0);
// عدم حماية ورقة العمل
worksheet->Unprotect(new String("12345"));
// احفظ ملف Excel
workbook->Save(outDir->StringAppend(new String("sampleExcelFileUnprotectedWorksheet_out.xlsx")));
احصل على رخصة مجانية
يمكنك تجربة واجهة برمجة التطبيقات بدون قيود تقييمية عن طريق طلب ترخيص مؤقت مجاني.
استنتاج
في هذه المقالة ، تعلمت كيفية حماية ملفات Excel وإلغاء حمايتها باستخدام C ++. بالإضافة إلى ذلك ، تعلمت أيضًا كيفية حماية أوراق العمل من التعديلات. Aspose.Cells for C ++ هي واجهة برمجة تطبيقات واسعة لمعالجة Excel لأتمتة المهام مثل استبدال النص في الخلايا أو معالجة البيانات المعقدة الممثلة في الرسوم البيانية والمخططات. يمكنك استكشاف API بالتفصيل باستخدام الوثائق الرسمية.