DocumentBase.ProtectDocument – metoda
Poskytuje příležitost znovu použít ochranu heslem pro dokument 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 úrovni dokumentu projekt pro aplikaci Word, pokud váš 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 této metody slouží Protect metody k ochraně dokumentu.
Ve výchozím nastavení nejsou změny dat uložených v mezipaměti v dokumentu chráněného heslem trvalé při uložení dokumentu.Pokud chcete uložit změny dat v mezipaměti, je nutné v projektu přepsat následující metody:
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 uložení změn dat v mezipaměti.
ProtectDocument.Po uložení dokumentu Visual Studio Tools for Office runtime volá tuto metodu.Přidejte kód do této metody, které znovu ochranu dokumentu.
Další informace naleznete v tématu Postupy: Ukládání dat do mezipaměti v dokumentu chráněném heslem.
Visual Studio Tools for Office runtime Volání ProtectDocument metoda, i když některé chyby, které nesouvisí s ochranou heslem nelze uložit data uložená v mezipaměti.Například, pokud se rozhodnete implementovat ICachedType rozhraní upravit data jak v mezipaměti jsou uloženy v dokumentu, ProtectDocument je volána metoda i když 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 obnovení ochrany, který byl odebrán přepsáním UnprotectDocument metody.Kód předpokládá, že heslo je uloženo v poli s názvem securelyStoredPassword.Chcete-li tento příklad použít, spusťte jej ze třídy ThisDocument 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
- Plná důvěra přímému volajícímu. Částečně zabezpečený kód nemůže tento člen použít. Další informace naleznete v tématu Používání knihoven z částečně důvěryhodného kódu.
Viz také
Referenční dokumentace
Microsoft.Office.Tools.Word – obor názvů
Další zdroje
Postupy: Ukládání dat do mezipaměti v dokumentu chráněném heslem