Protect a file from being deleted

How can i create a file and make it where it cannot be deleted
Like windows does with a message
"access denied" ?
file is created like this:
Public Sub SaveTextFile(sFileName As String, txt As String)
        Dim ff As Integer
        ff = FreeFile
       Open sFileName For Output As #ff
            Print #ff, txt
         Close #ff
End Sub

Open in new window

Who is Participating?
I wear a lot of hats...

"The solutions and answers provided on Experts Exchange have been extremely helpful to me over the last few years. I wear a lot of hats - Developer, Database Administrator, Help Desk, etc., so I know a lot of things but not a lot about one thing. Experts Exchange gives me answers from people who do know a lot about one thing, in a easy to use platform." -Todd S.

Martin LissOlder than dirtCommented:
You can make a file read-only via code but that won't prevent someone from going to Widows Explorer and changing that. IMO your best bet is to hide it, but even then it can be found and deleted.
Martin LissOlder than dirtCommented:
What happens if the file is deleted?
isnoend2001Author Commented:
The file is encrypted and reads:
"Not Registered" or
"refunded" or
"yes Registered"
Determine the Perfect Price for Your IT Services

Do you wonder if your IT business is truly profitable or if you should raise your prices? Learn how to calculate your overhead burden with our free interactive tool and use it to determine the right price for your IT services. Download your free eBook now!

Martin LissOlder than dirtCommented:
I would put the encrypted value in the Registry where it's less prone to erasure rather than a file and in either case if not found I'd assume that the app is "Not Registered".
isnoend2001Author Commented:
Thanks Martin, I thought writing to the registry was a problem when Vista came out,No ?
Martin LissOlder than dirtCommented:
I don't really know but see this EE solution. If I were you I would create a small new project just to try it out and if you need more help I guess you'll need to ask a new question because I use XP.

Experts Exchange Solution brought to you by

Your issues matter to us.

Facing a tech roadblock? Get the help and guidance you need from experienced professionals who care. Ask your question anytime, anywhere, with no hassle.

Start your 7-day free trial
isnoend2001Author Commented:
Thanks Martin
I Also use xp, but have another computer with win7 just for testing.
Using the registry is too complicated and error prone
i have though o a few work arounds  that turn into dead ends
1. open the file when the app closes, but don't close the file. This may keep a reference to the file, not sure, but the next time the computer starts it will no longer work.
2. determine if there is any way to write a value to the resource file
Martin LissOlder than dirtCommented:
OK if you have other questions concerning your 1 and 2, ask a new question and I or others will try to help
QlemoBatchelor, Developer and EE Topic AdvisorCommented:
"Using the registry is too complicated and error prone" - are you serious? It is less error prone than using a file, and not at all complicated once you have set it up correctly. Just three or four lines of code required.

On the other hand, accepting http:#a40446489 seems to be off, if you can't use the suggestion.
isnoend2001Author Commented:
I agree the registry was easy until vista
the  http:#a40446489 answer provided a link for info that reinforced what i thought
It's more than this solution.Get answers and train to solve all your tech problems - anytime, anywhere.Try it for free Edge Out The Competitionfor your dream job with proven skills and certifications.Get started today Stand Outas the employee with proven skills.Start learning today for free Move Your Career Forwardwith certification training in the latest technologies.Start your trial today
Visual Basic Classic

From novice to tech pro — start learning today.