Metoda DocumentBase.ProtectDocument —
Zapewnia możliwość ponownego zastosowania ochrony hasłem do dokumentu po zapisaniu buforowane dane.
Przestrzeń nazw: Microsoft.Office.Tools.Word
Zestaw: Microsoft.Office.Tools.Word.v4.0.Utilities (w Microsoft.Office.Tools.Word.v4.0.Utilities.dll)
Składnia
'Deklaracja
Protected Overridable Sub ProtectDocument
protected virtual void ProtectDocument()
Uwagi
Zastąpić tę metoda w projekcie na poziomie dokumentu dla programu Word, jeśli Twój dokument jest chroniony przy użyciu hasła i zawiera buforowane dane, które mogą być zmieniane w czasie wykonywania.W celu stosowania tej metody należy użyć Protect metoda ochrona dokumentu.
Domyślnie zmiany buforowanych danych w dokumencie chronionych hasłem nie są zachowywane po zapisaniu dokumentu.Aby zapisać zmiany, aby buforowane dane, należy zastąpić następujące metody w projekcie:
UnprotectDocument.Gdy dokument zostanie zapisany, Visual Studio 2010 Tools for Office Runtime wywołuje tę metodę.Dodaj kod do tej metody, która tymczasowo wyłączy ochronę dokumentu.Dzięki temu zmiany mają być zapisywane dane buforowany.
ProtectDocument.Po zapisaniu dokumentu, Visual Studio 2010 Tools for Office Runtime wywołuje tę metodę.Dodaj kod do tej metody, która ponownie stosuje ochrony w dokumencie.
Aby uzyskać więcej informacji, zobacz Jak: pamięć podręczna danych w dokumencie chroniony hasłem.
Visual Studio 2010 Tools for Office Runtime Wywołania ProtectDocument metoda nawet wtedy, gdy nie można zapisać buforowane dane z powodu jakiś błąd, który nie ma wpływu na ochronę hasłem.Na przykład, jeśli zostanie wprowadzona ICachedType interfejsu, aby dostosować sposób buforowane dane są przechowywane w dokumencie, ProtectDocument wywoływana jest metoda nawet wtedy, gdy Twój ICachedType wykonania zgłasza wyjątek, który uniemożliwia zapisanie buforowanych danych.
Przykłady
Poniższy przykład kodu demonstruje, jak zastąpić ProtectDocument metody do ponownego zastosowania ochrony, który został usunięty przez zastąpienie UnprotectDocument metoda.Kod zakłada, że hasło jest przechowywane w polu o nazwie securelyStoredPassword.Aby wykorzystać ten przykład, należy uruchomić go z ThisDocument klasy w projekcie na poziomie 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);
}
Zabezpieczenia programu .NET Framework
- Pełne zaufanie do bezpośredniego wywołującego. Tego elementu członkowskiego nie można używać w kodzie częściowo zaufanym. Aby uzyskać więcej informacji, zobacz Przy użyciu bibliotek z częściowo zaufanego kodu..
Zobacz też
Informacje
Przestrzeń nazw Microsoft.Office.Tools.Word