Protect

Protect(ProtectionType)

Skyddar dokumentet från ändringar utan att ändra det befintliga lösenordet eller tilldelar ett slumpmässigt lösenord.

public void Protect(ProtectionType type)
ParameterTypBeskrivning
typeProtectionTypeAnger skyddstypen för dokumentet.

Anmärkningar

När ett dokument är skyddat kan användaren endast göra begränsade ändringar, som att lägga till anteckningar, göra ändringar eller fylla i ett formulär.

När du skyddar ett dokument, och dokumentet redan har ett lösenord, ändras inte det befintliga lösenordet.

När du skyddar ett dokument och dokumentet inte har ett lösenord, tilldelar den här metoden ett slumpmässigt lösenord som gör det omöjligt att avskydda dokumentet i Microsoft Word, men du kan fortfarande avskydda dokumentet i Aspose.Words eftersom det inte kräver ett lösenord när skyddet avaktiveras.

Exempel

Visar hur man stänger av skyddet för en sektion.

Document doc = new Document();

DocumentBuilder builder = new DocumentBuilder(doc);
builder.Writeln("Section 1. Hello world!");
builder.InsertBreak(BreakType.SectionBreakNewPage);

builder.Writeln("Section 2. Hello again!");
builder.Write("Please enter text here: ");
builder.InsertTextInput("TextInput1", TextFormFieldType.Regular, "", "Placeholder text", 0);

// Tillämpa skrivskydd på varje avsnitt i dokumentet.
doc.Protect(ProtectionType.AllowOnlyFormFields);

// Stäng av skrivskyddet för den första sektionen.
doc.Sections[0].ProtectedForForms = false;

// I detta utdatadokument kommer vi att kunna redigera det första avsnittet fritt,
// och vi kommer bara att kunna redigera innehållet i formulärfältet i den andra sektionen.
doc.Save(ArtifactsDir + "Section.Protect.docx");

Se även


Protect(ProtectionType, string)

Skyddar dokumentet från ändringar och ställer in ett lösenord om så önskas.

public void Protect(ProtectionType type, string password)
ParameterTypBeskrivning
typeProtectionTypeAnger skyddstypen för dokumentet.
passwordStringLösenordet som dokumentet ska skyddas med. Angenull eller en tom sträng om du vill skydda dokumentet utan lösenord.

Anmärkningar

När ett dokument är skyddat kan användaren endast göra begränsade ändringar, som att lägga till anteckningar, göra ändringar eller fylla i ett formulär.

Observera att dokumentskydd skiljer sig från skrivskydd. Skrivskydd anges med hjälp avWriteProtection.

Exempel

Visar hur man skyddar och avskyddar ett dokument.

Document doc = new Document();
doc.Protect(ProtectionType.ReadOnly, "password");

Assert.AreEqual(ProtectionType.ReadOnly, doc.ProtectionType);

// Om vi öppnar det här dokumentet med Microsoft Word och avser att redigera det,
// vi måste ange lösenordet för att komma igenom skyddet.
doc.Save(ArtifactsDir + "Document.Protect.docx");

// Observera att skyddet endast gäller Microsoft Word-användare som öppnar vårt dokument.
// Vi har inte krypterat dokumentet på något sätt, och vi behöver inte lösenordet för att öppna och redigera det programmatiskt.
Document protectedDoc = new Document(ArtifactsDir + "Document.Protect.docx");

Assert.AreEqual(ProtectionType.ReadOnly, protectedDoc.ProtectionType);

DocumentBuilder builder = new DocumentBuilder(protectedDoc);
builder.Writeln("Text added to a protected document.");
// Det finns två sätt att ta bort skyddet från ett dokument.
// 1 - Utan lösenord:
doc.Unprotect();

Assert.AreEqual(ProtectionType.NoProtection, doc.ProtectionType);

doc.Protect(ProtectionType.ReadOnly, "NewPassword");

Assert.AreEqual(ProtectionType.ReadOnly, doc.ProtectionType);

doc.Unprotect("WrongPassword");

Assert.AreEqual(ProtectionType.ReadOnly, doc.ProtectionType);

// 2 - Med rätt lösenord:
doc.Unprotect("NewPassword");

Assert.AreEqual(ProtectionType.NoProtection, doc.ProtectionType);

Se även