ChartSheetProtection.Password Propiedad
Definición
Importante
Parte de la información hace referencia a la versión preliminar del producto, que puede haberse modificado sustancialmente antes de lanzar la versión definitiva. Microsoft no otorga ninguna garantía, explícita o implícita, con respecto a la información proporcionada aquí.
Password
Representa el atributo siguiente en el esquema: 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
Valor de propiedad
Devuelve StringValue.
- Atributos
Comentarios
La siguiente información de ECMA International Standard ECMA-376 puede ser útil al trabajar con esta clase.
Especifica el hash de la contraseña necesaria para editar esta hoja de gráfico. Esta protección es opcional y las aplicaciones que deciden no admitir esta funcionalidad pueden omitir esta funcionalidad. El hash se genera a partir de un carácter de 8 bits de ancho. Los caracteres Unicode de 16 bits deben convertirse en 8 bits antes de calcular el hash, utilizando la lógica definida en el revisionsPassword
atributo del workbookProtection
elemento.
El valor resultante se aplica con el algoritmo definido a continuación.
Un algoritmo de ejemplo para aplicar hash a la entrada del usuario en el valor almacenado es el siguiente:
// 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);
}
El tipo simple define los ST_UnsignedShortHex
valores posibles para este atributo.