DocumentBase.UnprotectDocument-Methode
Gibt Ihnen die Möglichkeit, den Kennwortschutz vom Dokument zu entfernen und das Speichern der zwischengespeicherten Daten zu aktivieren.
Namespace: Microsoft.Office.Tools.Word
Assembly: Microsoft.Office.Tools.Word.v4.0.Utilities (in Microsoft.Office.Tools.Word.v4.0.Utilities.dll)
Syntax
'Declaration
Protected Overridable Sub UnprotectDocument
protected virtual void UnprotectDocument()
Hinweise
Überschreiben Sie diese Methode in einem Projekt auf Dokumentebene für Word, wenn Ihr Dokument durch ein Kennwort geschützt ist und zwischengespeicherte Daten enthält, die zur Laufzeit geändert werden könnten. Verwenden Sie für die Implementierung dieser Methode die Unprotect-Methode, um den Schutz des Dokuments vorübergehend aufzuheben.
Standardmäßig bleiben Änderungen an zwischengespeicherten Daten in einem kennwortgeschützten Dokument nicht erhalten, wenn das Dokument gespeichert wird. Um Änderungen der zwischengespeicherten Daten zu speichern, müssen Sie die folgenden Methoden im Projekt überschreiben:
UnprotectDocument. Wenn das Dokument gespeichert wurde, ruft Visual Studio Tools for Office-Laufzeit diese Methode auf. Fügen Sie dieser Methode Code hinzu, der den Schutz des Dokuments vorübergehend aufhebt. So können Änderungen an den zwischengespeicherten Daten gespeichert werden.
ProtectDocument. Nachdem das Dokument gespeichert wurde, ruft Visual Studio Tools for Office-Laufzeit diese Methode auf. Fügen Sie dieser Methode Code hinzu, der den Schutz des Dokuments wieder aktiviert.
Weitere Informationen finden Sie unter Gewusst wie: Zwischenspeichern von Daten in einem kennwortgeschützten Dokument.
Beispiele
Im folgenden Codebeispiel wird gezeigt, wie die UnprotectDocument-Methode überschrieben wird, um den Schutz des Dokuments vorübergehend aufzuheben, sodass Änderungen an den zwischengespeicherten Daten gespeichert werden können. In dem Beispiel wird zuerst der aktuellen Wert von ProtectionType gespeichert, sodass dieselbe Art von Schutz später in der ProtectDocument-Methode wieder hergestellt werden kann. Im Code wird davon ausgegangen, dass das Kennwort in einem Feld mit dem Namen securelyStoredPassword gespeichert wird. Wenn Sie dieses Beispiel verwenden möchten, führen Sie es von der ThisDocument-Klasse in einem Projekt auf Dokumentebene aus.
<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);
}
.NET Framework-Sicherheit
- Volle Vertrauenswürdigkeit für den unmittelbaren Aufrufer. Dieser Member kann von nur teilweise vertrauenswürdigem Code nicht verwendet werden. Weitere Informationen finden Sie unter Verwenden von Bibliotheken aus teilweise vertrauenswürdigem Code.
Siehe auch
Referenz
Microsoft.Office.Tools.Word-Namespace
Weitere Ressourcen
Gewusst wie: Zwischenspeichern von Daten in einem kennwortgeschützten Dokument