Metoda DocumentBase.UnprotectDocument —
Zapewnia możliwość usunąć ochronę hasłem z dokumentu i włączyć mają być zapisywane dane buforowane.
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 UnprotectDocument
protected virtual void UnprotectDocument()
Uwagi
Zastąpić tę metoda w projekcie na poziomie dokumentu dla programu Word, jeśli dokument jest chroniony przy użyciu hasła i zawiera dane, które można zmieniać w czasie wykonywania.W implementacji tej metody, należy użyć Unprotect metoda, aby tymczasowo wyłączyć ochronę dokumentu.
Domyślnie zmiany buforowane dane w dokumencie chronionych hasłem nie są zachowywane po zapisaniu dokumentu.Aby zapisać zmiany w buforowanych danych, 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 buforowane.
ProtectDocument.Po zapisaniu dokumentu Visual Studio 2010 Tools for Office Runtime wywołuje tę metodę.Dodaj kod do tej metody, które stosowane ponownie ochronie w dokumencie.
Aby uzyskać więcej informacji, zobacz Porady: dane z pamięci podręcznej w dokumentach zabezpieczonych hasłem.
Przykłady
Poniższy kod ilustruje sposób zastąpić UnprotectDocument metoda, aby tymczasowo wyłączyć ochronę dokumentu tak, że można zapisać zmian danych buforowanych.Przykład najpierw zapisuje bieżący ProtectionType wartości, tak aby można było później w przywracane ten sam rodzaj ochrony ProtectDocument metody.Kod zakłada, że hasło jest przechowywane w polu o nazwie securelyStoredPassword.Aby wykorzystać ten przykład, należy uruchomić go z klasy ThisDocument 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 Używanie bibliotek pochodzących z częściowo zaufanego kodu.
Zobacz też
Informacje
Przestrzeń nazw Microsoft.Office.Tools.Word
Inne zasoby
Porady: dane z pamięci podręcznej w dokumentach zabezpieczonych hasłem