Workbook.ProtectDocument-Methode (2007 System)
Aktualisiert: Juli 2008
Wird von der Visual Studio Tools for Office-Laufzeit aufgerufen, sodass Sie den Kennwortschutz für die Arbeitsmappe wieder aktivieren können, nachdem die zwischengespeicherten Daten gespeichert wurden.
Namespace: Microsoft.Office.Tools.Excel
Assembly: Microsoft.Office.Tools.Excel.v9.0 (in Microsoft.Office.Tools.Excel.v9.0.dll)
Syntax
Protected Overridable Sub ProtectDocument
Me.ProtectDocument()
protected virtual void ProtectDocument()
Hinweise
Überschreiben Sie diese Methode in einem Projekt auf Dokumentebene für Excel, wenn Ihre Arbeitsmappe durch ein Kennwort geschützt ist und zwischengespeicherte Daten enthält, die zur Laufzeit geändert werden könnten. Verwenden Sie in der Implementierung dieser Methode die Protect-Methode, um die Arbeitsmappe zu schützen.
Standardmäßig bleiben Änderungen an zwischengespeicherten Daten in einer kennwortgeschützten Arbeitsmappe nicht erhalten, wenn die Arbeitsmappe gespeichert wird. Um Änderungen der zwischengespeicherten Daten zu speichern, müssen Sie die folgenden Methoden im Projekt überschreiben:
UnprotectDocument. Wenn die Arbeitsmappe gespeichert wird, ruft die Visual Studio Tools for Office-Laufzeit diese Methode auf. Fügen Sie dieser Methode Code hinzu, der den Schutz der Arbeitsmappe vorübergehend aufhebt. So können Änderungen an den zwischengespeicherten Daten gespeichert werden.
ProtectDocument. Nachdem die Arbeitsmappe gespeichert wurde, ruft die Visual Studio Tools for Office-Laufzeit diese Methode auf. Fügen Sie dieser Methode Code hinzu, der den Schutz der Arbeitsmappe wieder aktiviert.
Weitere Informationen hierzu finden Sie unter Gewusst wie: Zwischenspeichern von Daten in einem kennwortgeschützten Dokument.
Die Visual Studio Tools for Office-Laufzeit ruft die ProtectDocument-Methode auch dann auf, wenn die zwischengespeicherten Daten aufgrund eines Fehlers, der nicht im Zusammenhang mit dem Kennwortschutz steht, nicht gespeichert werden können. Wenn Sie beispielsweise die ICachedType-Schnittstelle implementieren, um das Speichern von zwischengespeicherten Daten im Dokument anzupassen, wird die ProtectDocument-Methode auch dann aufgerufen, wenn Ihre ICachedType-Implementierung eine Ausnahme auslöst, die das Speichern der zwischengespeicherten Daten verhindert.
Beispiele
Im folgenden Codebeispiel wird gezeigt, wie die ProtectDocument-Methode überschrieben wird, um den Schutz wiederherzustellen, der durch das Überschreiben der UnprotectDocument-Methode entfernt wurde. Wenn Sie dieses Codebeispiel verwenden möchten, führen Sie es in der ThisWorkbook-Klasse in einem Projekt auf Dokumentebene für Excel aus. Im Code wird davon ausgegangen, dass das Kennwort in einem Feld mit dem Namen securelyStoredPassword gespeichert wird.
<CachedAttribute()> _
Public CachedString As String = "This string is cached in the workbook."
Private protectStructureValue As Boolean
Private protectWindowsValue As Boolean
Protected Overrides Sub UnprotectDocument()
protectStructureValue = Me.ProtectStructure
protectWindowsValue = Me.ProtectWindows
Me.Unprotect(securelyStoredPassword)
End Sub
Protected Overrides Sub ProtectDocument()
Me.Protect(securelyStoredPassword, protectStructureValue, _
protectWindowsValue)
End Sub
[CachedAttribute]
public string CachedString = "This string is cached in the workbook.";
private bool protectStructureValue;
private bool protectWindowsValue;
protected override void UnprotectDocument()
{
protectStructureValue = this.ProtectStructure;
protectWindowsValue = this.ProtectWindows;
this.Unprotect(securelyStoredPassword);
}
protected override void ProtectDocument()
{
this.Protect(securelyStoredPassword, protectStructureValue,
protectWindowsValue);
}
Berechtigungen
- 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.Excel-Namespace
Weitere Ressourcen
Gewusst wie: Zwischenspeichern von Daten in einem kennwortgeschützten Dokument
Änderungsprotokoll
Date |
Versionsgeschichte |
Grund |
---|---|---|
Juli 2008 |
Neues Thema. |
SP1-Featureänderung. |