Workbook.ProtectDocument O método (sistema de 2007)
Chamado pelo Visual Studio Tools for Office tempo de execução para que você pode reaplicar a proteção por senha para a pasta de trabalho depois que os dados armazenados em cache foi salvo.
Namespace: Microsoft.Office.Tools.Excel
Assembly: Microsoft.Office.Tools.Excel.v9.0 (em Microsoft.Office.Tools.Excel.v9.0.dll)
Sintaxe
Protected Overridable Sub ProtectDocument
Me.ProtectDocument()
protected virtual void ProtectDocument()
Comentários
Substitua este método em um projeto documento-nível para o Excel se sua pasta de trabalho está protegida por meio de uma senha e contém dados em cache que podem ser alterados em time de execução.Na sua implementação desse método, use o Protect método para proteger 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 terão efeitas quando a pasta de trabalho é salva.Para salvar as alterações nos dados armazenados em cache, você deve substituir os métodos a seguir no seu projeto:
UnprotectDocument.Quando a pasta de trabalho for salva, a Visual Studio Tools for Office tempo de execução chama esse método. Adicione código para este método temporariamente desprotege a pasta de trabalho.Isso permite que as alterações feitas nos dados armazenados em cache a ser salvo.
ProtectDocument.Após a pasta de trabalho é salva, a Visual Studio Tools for Office tempo de execução chama esse método. Adicione código para este método reaplica proteção para a pasta de trabalho.
Para obter mais informações, consulte Como: Dados de cache em um documento protegida por senha.
The Visual Studio Tools for Office tempo de execução chamadas a ProtectDocument mesmo se os dados armazenados em cache não foi possível salvar devido a algum erro não está relacionado à proteção por senha do método. Por exemplo, se você implementar o ICachedType interface para personalizar dados armazenados em cache como está armazenada no documento, o ProtectDocument método é chamado, mesmo que seu ICachedType implementação lança uma exceção que impede que os dados armazenados em cache sendo salvo.
Exemplos
O exemplo de código a seguir demonstra como substituir o ProtectDocument método reaplicar proteção foi removida, substituindo o UnprotectDocument método. Para usar esse código, executá-lo a partir de ThisWorkbook classe em um projeto documento-nível para Excel. O código pressupõe que a senha é armazenada em um campo denominado securelyStoredPassword.
<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);
}
Permissões
- Confiança total para o chamador imediato. O membro não pode ser usado por código parcialmente confiável. Para obter mais informações, consulte Usando bibliotecas de códigos parcialmente Confiável.
Consulte também
Referência
Namespace Microsoft.Office.Tools.Excel
Outros recursos
Como: Dados de cache em um documento protegida por senha
Date |
History |
Motivo |
---|---|---|
Julho de 2008 |
Novo tópico. |
Alteração de recurso do SP1. |