ChartSheetProtection.Password Eigenschaft
Definition
Wichtig
Einige Informationen beziehen sich auf Vorabversionen, die vor dem Release ggf. grundlegend überarbeitet werden. Microsoft übernimmt hinsichtlich der hier bereitgestellten Informationen keine Gewährleistungen, seien sie ausdrücklich oder konkludent.
Kennwort
Stellt das folgende Attribut im Schema dar: password
[DocumentFormat.OpenXml.SchemaAttr(0, "password")]
public DocumentFormat.OpenXml.HexBinaryValue Password { get; set; }
public DocumentFormat.OpenXml.HexBinaryValue Password { get; set; }
[DocumentFormat.OpenXml.SchemaAttr(0, "password")]
public DocumentFormat.OpenXml.HexBinaryValue? Password { get; set; }
[DocumentFormat.OpenXml.SchemaAttr("password")]
public DocumentFormat.OpenXml.HexBinaryValue? Password { get; set; }
public DocumentFormat.OpenXml.HexBinaryValue? Password { get; set; }
member this.Password : DocumentFormat.OpenXml.HexBinaryValue with get, set
[<DocumentFormat.OpenXml.SchemaAttr(0, "password")>]
member this.Password : DocumentFormat.OpenXml.HexBinaryValue with get, set
[<DocumentFormat.OpenXml.SchemaAttr("password")>]
member this.Password : DocumentFormat.OpenXml.HexBinaryValue with get, set
Public Property Password As HexBinaryValue
Eigenschaftswert
Gibt zurück StringValue.
- Attribute
Hinweise
Die folgenden Informationen aus dem INTERNATIONALEN ECMA-Standard ECMA-376 können bei der Arbeit mit dieser Klasse nützlich sein.
Gibt den Hash des Kennworts an, der zum Bearbeiten dieses Diagrammblatts erforderlich ist. Dieser Schutz ist optional und kann von Anwendungen ignoriert werden, die diese Funktionalität nicht unterstützen. Der Hash wird aus einem 8-Bit-Breitzeichen generiert. 16-Bit-Unicode-Zeichen müssen in 8 Bits konvertiert werden, bevor der Hash berechnet wird, wobei die im revisionsPassword
-Attribut des workbookProtection
-Elements definierte Logik verwendet wird.
Der resultierende Wert wird mithilfe des unten definierten Algorithmus gehasht.
Ein Beispielalgorithmus zum Hashen der Benutzereingabe in den gespeicherten Wert sieht wie folgt aus:
// Function Input:
// szPassword: NULL-terminated C-style string
// cchPassword: The number of characters in szPassword (not including the NULL terminator)
WORD GetPasswordHash(const CHAR *szPassword, int cchPassword) {
WORD wPasswordHash;
const CHAR *pch;
wPasswordHash = 0;
if (cchPassword > 0)
{
pch = &szPassword[cchPassword];
while (pch-- != szPassword)
{
wPasswordHash = ((wPasswordHash >> 14) & 0x01) | ((wPasswordHash << 1) & 0x7fff);
wPasswordHash ^= *pch;
}
wPasswordHash ^= (0x8000 | ('N' << 8) | 'K');
}
return(wPasswordHash);
}
Die möglichen Werte für dieses Attribut werden durch den ST_UnsignedShortHex
einfachen Typ definiert.