Condividi tramite


Metodo Workbook.UnprotectDocument (System 2007)

Aggiornamento: Luglio 2008

Chiamato dal runtime di Visual Studio Tools per Office in modo che sia possibile rimuovere la password di protezione dalla cartella di lavoro e consentire il salvataggio dei dati memorizzati nella cache.

Spazio dei nomi:  Microsoft.Office.Tools.Excel
Assembly:  Microsoft.Office.Tools.Excel.v9.0 (in Microsoft.Office.Tools.Excel.v9.0.dll)

Sintassi

Protected Overridable Sub UnprotectDocument

Me.UnprotectDocument()
protected virtual void UnprotectDocument()

Note

Eseguire l'override di questo metodo in un progetto a livello di documento per Excel se la cartella di lavoro è protetta tramite una password e contiene dati memorizzati nella cache che potrebbero essere modificati in fase di esecuzione. Nell'implementazione di questo metodo, utilizzare il metodo Unprotect per rimuovere temporaneamente la protezione della cartella di lavoro.

Per impostazione predefinita, le modifiche ai dati memorizzati nella cache in una cartella di lavoro protetta da password non sono salvate in modo permanente quando viene salvata la cartella di lavoro. Per salvare le modifiche apportate ai dati memorizzati nella cache è necessario eseguire l'override dei metodi seguenti del progetto:

  • UnprotectDocument. Quando la cartella di lavoro viene salvata, il runtime di Visual Studio Tools per Office chiama questo metodo. Aggiungere a questo metodo il codice per rimuovere temporaneamente la protezione della cartella di lavoro. Ciò consente il salvataggio delle modifiche apportate ai dati memorizzati nella cache.

  • ProtectDocument. Dopo aver salvato la cartella di lavoro, il runtime di Visual Studio Tools per Office chiama questo metodo. Aggiungere a questo metodo il codice per applicare nuovamente la protezione alla cartella di lavoro.

Per ulteriori informazioni, vedere la classe Procedura: memorizzare dati nella cache di un documento protetto da password.

Esempi

Nell'esempio di codice seguente viene illustrato come eseguire l'override del metodo UnprotectDocument per rimuovere temporaneamente la protezione della cartella di lavoro in modo che sia possibile salvare le modifiche apportate ai dati memorizzati nella cache. Vengono innanzitutto salvati i valori ProtectStructure e ProtectWindows correnti, in modo che sia possibile riapplicare lo stesso tipo di protezione in un secondo momento nel metodo ProtectDocument. Per utilizzare questo codice, eseguirlo dalla classe ThisWorkbook in un progetto a livello di documento per Excel. Nel codice si presuppone che la password sia memorizzata in un campo denominato 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);
}

Autorizzazioni

Vedere anche

Riferimenti

Workbook Classe

Membri Workbook

Spazio dei nomi Microsoft.Office.Tools.Excel

ProtectDocument

Altre risorse

Memorizzazione di dati nella cache

Procedura: memorizzare dati nella cache di un documento protetto da password

Cronologia delle modifiche

Date

History

Motivo

Luglio 2008

Nuovo argomento.

Modifica di funzionalità in SP1.