Sdílet prostřednictvím


DocumentBase.ProtectDocument – metoda

Poskytuje příležitost znovu použít ochranu heslem do dokumentu po uložení dat uložených v mezipaměti.

Obor názvů:  Microsoft.Office.Tools.Word
Sestavení:  Microsoft.Office.Tools.Word.v4.0.Utilities (v Microsoft.Office.Tools.Word.v4.0.Utilities.dll)

Syntaxe

'Deklarace
Protected Overridable Sub ProtectDocument
protected virtual void ProtectDocument()

Poznámky

Přepište tuto metodu v projektu na úrovni dokumentu aplikace Word v případě, že dokument je chráněn heslem a obsahuje data uložená v mezipaměti, který může změnit za běhu.Ve vaší implementaci tuto metodu použít Protect metoda ochrany dokumentu.

Ve výchozím nastavení nejsou trvalé změny data uložená v mezipaměti v dokument chráněný heslem, při uložení dokumentu.Chcete-li změny uložit data uložená v mezipaměti, musíte přepsat následujících metod v projektu:

  • UnprotectDocument.Při uložení dokumentu Visual Studio Tools for Office runtime volá tuto metodu.Přidejte kód do této metody, které dočasně unprotects dokumentu.To umožňuje data uložená v mezipaměti, chcete-li uložit změny.

  • ProtectDocument.Po uložení dokumentu Visual Studio Tools for Office runtime volá tuto metodu.Přidejte kód do této metody, které znovu použije ochrana dokumentu.

Další informace naleznete v tématu Jak: Data v mezipaměti v dokumentu chráněného heslem.

Visual Studio Tools for Office runtime Volání ProtectDocument metoda, i když data uložená v mezipaměti nelze uložit z důvodu některé chyby, která nemá vliv na ochranu heslem.Například, pokud se rozhodnete implementovat ICachedType rozhraní upravit data jak v mezipaměti uložena v dokumentu, ProtectDocument je volána metoda to i v případě, že vaše ICachedType implementace vyvolá výjimku, která zabraňuje ukládání dat uložených v mezipaměti.

Příklady

Následující příklad kódu ukazuje, jak přepsat ProtectDocument metoda znovu použít ochranu, která byla odebrána přepsáním UnprotectDocument metoda.Kód předpokládá, že heslo je uloženo v poli s názvem securelyStoredPassword.Chcete-li použít tento příklad, spusťte jej z ThisDocument třídy v projektu na úrovni dokumentu.

<CachedAttribute()> _
Public CachedString As String = "This string is cached in the document."

Private protectionTypeValue As Word.WdProtectionType

Protected Overrides Sub UnprotectDocument()
    If Me.ProtectionType <> Word.WdProtectionType.wdNoProtection Then
        protectionTypeValue = Me.ProtectionType
        Me.Unprotect(securelyStoredPassword)
    End If
End Sub

Protected Overrides Sub ProtectDocument()
    Me.Protect(protectionTypeValue, password:=securelyStoredPassword)
End Sub
[CachedAttribute]
public string CachedString = "This string is cached in the document.";

private Word.WdProtectionType protectionTypeValue;

protected override void UnprotectDocument()
{
    if (this.ProtectionType != Word.WdProtectionType.wdNoProtection)
    {
        protectionTypeValue = this.ProtectionType;
        this.Unprotect(ref securelyStoredPassword);
    }
}

protected override void ProtectDocument()
{
    this.Protect(protectionTypeValue, ref missing,
        ref securelyStoredPassword, ref missing, ref missing);
}

Zabezpečení rozhraní .NET Framework

Viz také

Referenční dokumentace

DocumentBase Třída

Microsoft.Office.Tools.Word – obor názvů

UnprotectDocument

Další zdroje

Ukládání dat

Jak: Data v mezipaměti v dokumentu chráněného heslem