Palauttaa or sets the password used to encrypt a BIFF8 (.xls) workbook on SaveAs. Ei-tyhjän arvon asettaminen tuottaa Excel-yhteensopivan salasanasuojatun tiedoston: Microsoft Excel, LibreOffice Calc ja muut BIFF8-lukijat kysyvät salasanaa avauksessa ja kieltäytyvät päästävästä sisään, jos se on väärin. Luettava ja kirjoitettava WideString. (Oletusarvo on tyhjä merkkijono, käytettävissä versiosta v2.32.0 alkaen)
Syntaksi
property EncryptionPassword: WideString;
Huomautukset
Kirjoituspolku kirjoittaa BIFF8 FILEPASS -tietueen ($002F) heti työkirjan BOF:n jälkeen ja RC4-salaa jokaisen sitä seuraavan tietuerungon. Siirtomuoto on vMajor=1, vMinor=1 ("Office 97/2000 Compatible" -salaus). 16-tavuinen Salt ja Verifier generoidaan Windowsin CryptGenRandom rather than Pascal Random. Lohkoavaimen uudelleenjohtaminen joka 1024 tavun välein säilytetään, joten suuret työkirjat, SST CONTINUE -ketjut ja monitaulukkoiset virrat salautuvat oikein
Encryption applies to BIFF8 (xlExcel97) only — the BIFF5 save path remains plaintext. An empty EncryptionPassword säilyttää vanhan selvätekstitulosteen ja on oletusarvo, joten olemassa oleviin sovelluksiin, jotka eivät koskaan kutsu asetinta, ei vaikutusta
Security note: BIFF8 RC4 arvoilla vMajor=1/vMinor=1 käyttää 40-bittistä avainta, jota vuoden 2025 standardeilla pidetään murrettuna. Käytä tätä ominaisuutta yhteensopivuuteen Excelin klassisen salasanasuojauksen käyttöliittymän kanssa, ei arkaluonteisten tietojen salassapitoon. Oikeaan tietoturvaan suosi XLSX-tulostetta AES-salauksella
Esimerkki
This example saves a password-protected .xls file
Workbook.EncryptionPassword := 'secret';
Workbook.SaveAs('Confidential.xls', xlExcel97);