WorkbookBase.UnprotectDocument Método
Definição
Importante
Algumas informações se referem a produtos de pré-lançamento que podem ser substancialmente modificados antes do lançamento. A Microsoft não oferece garantias, expressas ou implícitas, das informações aqui fornecidas.
Chamado pelo Visual Studio Tools para Office Runtime para que você possa remover a proteção de senha da pasta de trabalho e permitir que dados armazenados em cache sejam salvos.
protected virtual void UnprotectDocument ();
Implementações
Exemplos
O exemplo de código a seguir demonstra como substituir o UnprotectDocument método para desproteger temporariamente a pasta de trabalho para que as alterações nos dados armazenados em cache possam ser salvas. O exemplo primeiro salva os ProtectStructure valores atual e ProtectWindows , para que o mesmo tipo de proteção possa ser reaplicado posteriormente no ProtectDocument método. Para usar esse código, execute-o da ThisWorkbook classe em um projeto de nível de documento para o Excel. O código pressupõe que a senha seja armazenada em um campo chamado securelyStoredPassword.
[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);
}
<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
Comentários
Substitua esse método em um projeto de nível de documento para o Excel se sua pasta de trabalho estiver protegida usando uma senha e ela contiver dados armazenados em cache que possam ser alterados em tempo de execução. Em sua implementação desse método, use o Unprotect método para desproteger temporariamente a pasta de trabalho.
Por padrão, as alterações nos dados armazenados em cache em uma pasta de trabalho protegida por senha não são mantidas quando a pasta de trabalho é salva. Para salvar alterações feitas nos dados armazenados em cache, você deve substituir os seguintes métodos no projeto:
UnprotectDocument. Quando a pasta de trabalho é salva, o Visual Studio Tools para Office Runtime chama esse método. Adicione código a esse método que desprotege temporariamente a pasta de trabalho. Isso permite que as alterações feitas nos dados armazenados em cache sejam salvas.
ProtectDocument. Depois que a pasta de trabalho é salva, o Visual Studio Tools para Office Runtime chama esse método. Adicione código a esse método que reaplica a proteção à pasta de trabalho.
Para obter mais informações, consulte como armazenar dados em cache em um documento protegido por senha.