Is it possible to make a non-locking Windows share (files that other people use remotely don't get locked)?

The subject pretty much says it.

I'm a developer and at my workplace I've developed a little internal application that me and some of my colleagues are using from time to time. To make the latest version available to them I've shared the folder where the compilation results are. However this means that whenever they are using it I cannot compile it anymore - the files are locked.

Is there any way to share a folder, but disallow remote people from locking files? The files are already read-only to them anyway. Perhaps there is another solution that would serve my purposes?


Solution 1:

You might want to take a look at UseOpportunisticLocking under HKLM\SYSTEM\CurrentControlSet\Services\LanmanWorkstation\Parameters. There are several additional parameters in there that maybe of interest.

However may I ask why you choose to distribute this way? without knowing what your application is written in I can only take guesses as to why you would chose to distribute in this way.

If you wrote a .NET Application (I think you need at least 3.5?) might I suggest you take a look at ClickOnce Deployment from the MSDN:

ClickOnce is a deployment technology that enables you to create self-updating Windows-based applications that can be installed and run with minimal user interaction.

I have used ClickOnce for several of our internal applications with great success, its auto updater is very powerful and requires little additional code (just bumping the assembly version and clicking 'Deploy').

However there are some pitfalls to this, specifically we ran into an issue for an application that required elevated UAC rights. Programs which require this are not supported by ClickOnce Deployment.