Поделиться через


WorkbookBase.PasswordEncryptionKeyLength - свойство

Получает длину ключа алгоритма, который используется Microsoft Office Excel при шифровании паролей для книги.

Пространство имен:  Microsoft.Office.Tools.Excel
Сборка:  Microsoft.Office.Tools.Excel.v4.0.Utilities (в Microsoft.Office.Tools.Excel.v4.0.Utilities.dll)

Синтаксис

'Декларация
Public ReadOnly Property PasswordEncryptionKeyLength As Integer
    Get
public int PasswordEncryptionKeyLength { get; }

Значение свойства

Тип: System.Int32
Длина ключа алгоритма, который используется Microsoft Office Excel при шифровании паролей для книги.

Заметки

Используйте метод SetPasswordEncryptionOptions, чтобы указать необходимость шифрования Excel свойств файла для указанной книги, защищенной паролем.

Примеры

В следующем примере путем проверки значений свойства HasPassword программный код определяет, защищена ли книга паролем. Если рабочая книга не защищена паролем, в данном примере свойству Password присваивается введенный пользователем пароль, после чего вызывается метод SetPasswordEncryptionOptions, с помощью которого задается алгоритм шифрования, длина ключа, имя поставщика шифрования и разрешается шифрование свойств файла. Затем в примере отображаются значения свойств PasswordEncryptionProvider, PasswordEncryptionAlgorithm, PasswordEncryptionKeyLength и PasswordEncryptionFileProperties листа Sheet1. В этом примере предполагается, что метод GetPasswordFromUserInput определен в другом месте.

В этом примере демонстрируется настройка уровня документа.

Private Sub WorkbookPasswordOptions()
    If Not Me.HasPassword Then
        Me.Password = GetPasswordFromUserInput()
        Me.SetPasswordEncryptionOptions( _
            "Microsoft RSA SChannel Cryptographic Provider", _
            "RC4", 128, True)
    End If

    ' Display the password properties in Sheet1.
    Globals.Sheet1.Range("A1").Value2 = _
        "Password Encryption Provider:"
    Globals.Sheet1.Range("A2").Value2 = _
        "Password Encryption Algorithm:"
    Globals.Sheet1.Range("A3").Value2 = _
        "Password Encryption Key Length:"
    Globals.Sheet1.Range("A4").Value2 = _
        "Password Encryption File Properties:"
    Globals.Sheet1.Range("A1", "A4").Columns.AutoFit()

    Globals.Sheet1.Range("B1").Value2 = _
        Me.PasswordEncryptionProvider
    Globals.Sheet1.Range("B2").Value2 = _
        Me.PasswordEncryptionAlgorithm
    Globals.Sheet1.Range("B3").Value2 = _
        Me.PasswordEncryptionKeyLength
    Globals.Sheet1.Range("B4").Value2 = _
        Me.PasswordEncryptionFileProperties
    Globals.Sheet1.Range("B1", "B4").Columns.AutoFit()
End Sub
private void WorkbookPasswordOptions()
{
    if (!this.HasPassword)
    {
        this.Password = GetPasswordFromUserInput();
        this.SetPasswordEncryptionOptions(
            "Microsoft RSA SChannel Cryptographic Provider",
            "RC4", 128, true);
    }

    // Display the password properties in Sheet1.
    Globals.Sheet1.Range["A1", missing].Value2 =
        "Password Encryption Provider:";
    Globals.Sheet1.Range["A2", missing].Value2 =
        "Password Encryption Algorithm:";
    Globals.Sheet1.Range["A3", missing].Value2 =
        "Password Encryption Key Length:";
    Globals.Sheet1.Range["A4", missing].Value2 =
        "Password Encryption File Properties:";
    Globals.Sheet1.Range["A1", "A4"].Columns.AutoFit();

    Globals.Sheet1.Range["B1", missing].Value2 =
        this.PasswordEncryptionProvider;
    Globals.Sheet1.Range["B2", missing].Value2 =
        this.PasswordEncryptionAlgorithm;
    Globals.Sheet1.Range["B3", missing].Value2 =
        this.PasswordEncryptionKeyLength;
    Globals.Sheet1.Range["B4", missing].Value2 =
        this.PasswordEncryptionFileProperties;
    Globals.Sheet1.Range["B1", "B4"].Columns.AutoFit();
}

Безопасность платформы .NET Framework

См. также

Ссылки

WorkbookBase Класс

Microsoft.Office.Tools.Excel - пространство имен