Excel Dosyalarını Koruma ve Korumayı Kaldırma

Microsoft Excel, kuruluşlardaki verileri yönetmek için popüler bir yazılımdır. Temel olarak gelişmiş veri işleme ve temsil özelliklerinden kaynaklanmaktadır. Bu teknolojik çağda, belgeler basılı kopyalar yerine sanal olarak paylaşılmaktadır. Bu dosyalar karmaşık ve hassas veriler içerebilir. Dolayısıyla, bu tür dosyaların bütünlüğünü korumak için onları değişikliğe karşı korumanız gerekebilir. Excel’in koruma özellikleri bu amaç için kullanışlıdır. Bu makalede, C++ kullanarak Excel dosyalarını programlı olarak korumayı ve korumayı kaldırmayı öğreneceksiniz.

Excel Dosyalarını Korumak ve Korumayı Kaldırmak için C++ API - Ücretsiz İndirme

Aspose.Cells for C++, Microsoft Excel’in yüklenmesini gerektirmeden Excel dosyalarını değiştirmenize izin veren yerel bir C++ kitaplığıdır. Bu nedenle, birçok Excel iş akışını otomatikleştirmek için kullanılır. API, Excel dosyalarını koruma ve korumayı kaldırma dahil olmak üzere bir dizi yararlı özellik sağlar. API’yi NuGet aracılığıyla yükleyebilir veya doğrudan İndirilenler bölümünden indirebilirsiniz.

PM> Install-Package Aspose.Cells.Cpp

C++ kullanarak Excel Dosyalarını Koruyun

Aspose.Cells for C++, Excel dosyalarını korumak için aşağıdaki koruma türlerini sağlar.

  • Tümü: Kullanıcının hiçbir şeyi değiştirememesi için tüm verileri koruyun.
  • İçindekiler: Çalışma sayfasının içeriğini koruyun.
  • Nesneler: Kullanıcının çizim nesnelerini değiştirememesi için çalışma sayfasındaki nesneleri koruyun.
  • Senaryolar: Çalışma sayfasındaki senaryoları koruyun.
  • Yapı: Çalışma kitabının yapısını koruyun.
  • Windows: Kaydedilmiş pencereleri değişiklikten koruyun.
  • Yok: Koruma uygulanmadı.

Aşağıda, C++ kullanarak Excel dosyalarını korumaya yönelik adımlar yer almaktadır.

Aşağıdaki kod örneği, Excel dosyalarının C++ kullanılarak nasıl korunacağını gösterir.

// Kaynak dizin yolu.
StringPtr srcDir = new String("SourceDirectory\\");

// Çıkış dizini yolu.
StringPtr outDir = new String("OutputDirectory\\");

// Excel dosyasını yükle
intrusive_ptr<IWorkbook> workbook = Factory::CreateIWorkbook(srcDir->StringAppend(new String("sampleExcelFile.xlsx")));

// Koruma türünü belirterek çalışma kitabını koruyun
workbook->Protect(ProtectionType::ProtectionType_All, new String("12345"));

// Excel dosyasını kaydedin
workbook->Save(outDir->StringAppend(new String("sampleExcelFile_protected_out.xlsx")));

C++ kullanarak Excel Çalışma Kitabının korumasını kaldırın

Aşağıda, bir Excel dosyasının korumasını kaldırma adımları verilmiştir.

Aşağıdaki kod örneği, Excel dosyalarının korumasının nasıl kaldırılacağını gösterir.

// Kaynak dizin yolu.
StringPtr srcDir = new String("SourceDirectory\\");

// Çıkış dizini yolu.
StringPtr outDir = new String("OutputDirectory\\");

// Excel dosyasını yükle
intrusive_ptr<IWorkbook> workbook = Factory::CreateIWorkbook(srcDir->StringAppend(new String("sampleExcelFileProtected.xlsx")));

// çalışma kitabının korumasını kaldır
workbook->Unprotect(new String("12345"));

// Parolayı null olarak ayarla
workbook->GetISettings()->SetPassword(NULL);

// Excel dosyasını kaydedin
workbook->Save(outDir->StringAppend(new String("sampleExcelFileUnprotected_out.xlsx")));

C++ kullanarak Excel Çalışma Sayfasını koruyun

Excel dosyalarını korumaya ek olarak, tek tek çalışma sayfalarını da koruyabilirsiniz. Excel çalışma sayfalarını korumak için lütfen aşağıdaki adımları kullanın.

Aşağıdaki kod örneği, Excel çalışma sayfasının nasıl korunacağını gösterir.

// Kaynak dizin yolu.
StringPtr srcDir = new String("SourceDirectory\\");

// Çıkış dizini yolu.
StringPtr outDir = new String("OutputDirectory\\");

// Excel dosyasını yükle
intrusive_ptr<IWorkbook> workbook = Factory::CreateIWorkbook(srcDir->StringAppend(new String("sampleExcelFile.xlsx")));

// Excel dosyasındaki ilk çalışma sayfasına erişme
intrusive_ptr<IWorksheet> worksheet = workbook->GetIWorksheets()->GetObjectByIndex(0);

// Çalışma sayfasının korumasına erişin
intrusive_ptr<IProtection> protection = worksheet->GetIProtection();

// Aşağıdaki 3 yöntem yalnızca Excel 2000 ve önceki biçimler içindir
protection->SetAllowEditingContent(false);
protection->SetAllowEditingObject(false);
protection->SetAllowEditingScenario(false);

// İlk çalışma sayfasını "12345" parolasıyla koruyun
protection->SetPassword(new String("12345"));

// Excel dosyasını kaydedin
workbook->Save(outDir->StringAppend(new String("sampleExcelFile_protectedWorksheet_out.xlsx")));

C++ kullanarak Excel Çalışma Sayfasının korumasını kaldırın

Excel çalışma sayfalarının korumasını kaldırma adımları aşağıdadır.

Aşağıdaki kod örneği, C++ kullanarak Excel çalışma sayfasının korumasının nasıl kaldırılacağını gösterir.

// Kaynak dizin yolu.
StringPtr srcDir = new String("SourceDirectory\\");

// Çıkış dizini yolu.
StringPtr outDir = new String("OutputDirectory\\");

// Excel dosyasını yükle
intrusive_ptr<IWorkbook> workbook = Factory::CreateIWorkbook(srcDir->StringAppend(new String("sampleExcelFileProtectedWorksheet.xlsx")));

// Excel dosyasındaki ilk çalışma sayfasına erişme
intrusive_ptr<IWorksheet> worksheet = workbook->GetIWorksheets()->GetObjectByIndex(0);

// Çalışma sayfasının korumasını kaldır
worksheet->Unprotect(new String("12345"));

// Excel dosyasını kaydedin
workbook->Save(outDir->StringAppend(new String("sampleExcelFileUnprotectedWorksheet_out.xlsx")));

Ücretsiz Lisans Alın

Ücretsiz bir geçici lisans talep ederek API’yi değerlendirme sınırlamaları olmadan deneyebilirsiniz.

Çözüm

Bu makalede, C++ kullanarak Excel dosyalarını korumayı ve korumayı kaldırmayı öğrendiniz. Buna ek olarak, çalışma sayfalarını değişikliklere karşı nasıl koruyacağınızı da öğrendiniz. Aspose.Cells for C++, hücrelerdeki metni değiştirmek veya grafikler ve tablolarda temsil edilen karmaşık verileri işlemek gibi görevleri otomatikleştirmek için geniş bir Excel manipülasyon API’sidir. Resmi belgeleri kullanarak API’yi ayrıntılı olarak inceleyebilirsiniz.

Ayrıca bakınız