George2
George2

Reputation: 45771

can we lock a directory?

I am using VSTS 2008 + C# + .Net 3.5 to develop a console application. For file access, we can access file in exclusive mode which blocks other process/thread from access the file -- which has the effect of "lock" the file.

I am wondering for directory, are there any built-in API or solution to make the directory exclusive access -- has the effect of "locked"? For example, if one thread "locks" the directory, other thread/process can not call Directory.GetFiles, can not write file to the directory, can not read a file from the directory, etc.

Upvotes: 4

Views: 4980

Answers (2)

Henk Holterman
Henk Holterman

Reputation: 273179

If it is your own process that might interfere you can use a named Mutex to synchronize. It is very hard to keep out other processes, the usual approach is to evade to a temp (hidden) dir, do your work and copy/move the results back.

Upvotes: 2

BFree
BFree

Reputation: 103742

I think what you can do is set the directory's Access Control and then change it back when your done. Have a look here:

http://msdn.microsoft.com/en-us/library/system.io.directory.setaccesscontrol.aspx

Upvotes: 1

Related Questions