Well if you're working with data that critical, you should also have a UPS protecting you from a power outage...I don't know of anything that can stop the corruption of an open dB in such a case. And the same thing about any shutdown that isn't handled "normally". Transactions allow for some small amount of protection, as they will be immediately posted to the file page, but still the user would then have to re-start the app and open the un-encrypted file, a process I do allow for those with Administration privileges plus another application password guarded entry to the Administration group functions IF wanted. Also, each database group, meaning those tables holding data that may require extra protection in any other group, also allow their user to encrypt the data itself as it is written to the table file using a general app-wide or individual to that group Password if wanted. I didn't get into this part of the application in my message as it's not a part of the Problem I had been faced with. If anyone has an idea that might allow me to somehow encrypt or lock the original file under the situations you brought up I'd love to hear them, as the only other thing I came up with is to have the encryption procedures run as a separate called application when needed. It could be passed the user name and/or filename when the first app starts and would make it possible to auto encrypt then delete the original dBFile as soon as the main application it was watching over was closed down for whatever reason, but this still wouldn't help if the power was shut off.
from Robert Meek dba "Tangentals Design" e-mail: [EMAIL PROTECTED] Freelance Windows Programming for XP and Vista Also proud to be a Moderator of the "Delphi-List" at elists.org "Reality cannot be explained...only enjoyed or endured as your current perspective allows!" -----Original Message----- From: [EMAIL PROTECTED] [mailto:[EMAIL PROTECTED] On Behalf Of Kovács László Sent: Thursday, October 04, 2007 12:43 PM To: 'Delphi-Talk Discussion List' Subject: RE: Creating new solutions Hi, What if your app is KILLED by task amager? Then the decrypted DBfile could stay there, since there's no time for whipe-delete. Or ??? Another fatal situation can be a power outage while running your app. After power comes back, windows boots, user logs on, then starts your app again... What does it then, when does not find the encrypted DB - since it was whipe-deleted upon the previous start? By(t)e K.L. -----Original Message----- I wrote a wrapper for the dB File that would encrypt the entire file, storing it in a secure directory that can only be accessed by the currently logged on username, and wipe deleted the original. This was made a part of the application and occurred upon the closing of the datamodule itself. Then, when the app was started again, the wrapper would decrypt the dB File, And move it back into the user's working directory, wipe-deleting the encrypted version at the same time. Then when the datamodule is created, the file is there ready to be found! The Application also uses this wrapper as part of its Archiving procedure, making sure any archived copies of the dB file are first encrypted before being copied to the user's Archive directory. That way, Archives themselves can only be opened by the application again. __________________________________________________ Delphi-Talk mailing list -> Delphi-Talk@elists.org http://www.elists.org/mailman/listinfo/delphi-talk __________________________________________________ Delphi-Talk mailing list -> Delphi-Talk@elists.org http://www.elists.org/mailman/listinfo/delphi-talk