I would like to decrypt Lotus Notes NSF files programmatically. Assume that for each NSF, I have the ID file and password needed to access the NSF.
I am using Lotus Notes 8.5.2, Windows 7 SP1 64-bit. I am willing to use COM, C++ API, or C API.
I am aware of the C API function NSFDbIsLocallyEncrypted
, which reports whether an NSF is encrypted. However, I do not believe it is able to decrypt the NSF.
I am aware of the C++ API function LNNotesSession.CreateDatabaseCopy
, which takes as parameter 3 DBOptions
, which has a member that I can set as DBOptions.SetLocalEncryption( LNLOCALENCRYPTION::LNLOCALENCRYPTION_NONE )
. However, this function creates a new NSF. If possible, I would like to decrypt the source NSF in place to save time and disk space.
How can I remove local encryption from an NSF in place?