Anilr,
I have gotten past the name issue as it's not a big deal to include the machinename\user in my instructions to my userbase.
I have discovered a much bigger issue though. Special characters like + % and & are not allowed in the file name when you upload or download through the webdav mapped drive.
Let me describe what I'm doing and maybe you can replicate the bug.
1. I made a new web site in IIS 7 calling it 'Webdav' and enabled webdav for the site.
2. I made the bindings for the 'Webdav' site respond to the address 'http://storage.mytestsite.com' and configured my XP machine host file to know storage.mytestsite.com is the correct IP address.
3. I created a virtual directory named 'Keith' at the root of the drive.
4. I added a webdav authoring rule to the virtual directory 'Keith' with Path=*, Users=*, Access="Read, Source, Write"
5. I enabled the built in IIS 7 Basic authentication module and disabled all other authentication.
6. On XP I right clicked 'My Computer' and left clicked 'Map Network Drive'. I put in 'http://storage.mytestsite.com/keith' as the address and click 'Finish' button. The authentication prompt appears and I enter my username 'WIN-HWRM91XQXWN\Keith' and password (I had previously made a windows user account on the server). The drive is now mapped.
7. I made a test file on my XP machine called, 'I am keith.txt' and put some sample text into it. I copied it from my XP machine onto the mapped network drive. I went to the 2008 server and looked in the folder the virtual directory 'Keith' is associated with, sure enough the file 'I am keith.txt' is located on the server. I then made a file 'This is a & test.txt' put sample text into it and copied it to the mapped network drive. The file copied fine, life is good.
8. I then implemented an HttpModule that does basic authentication for my webdav web site using this article: Developing a Module Using .NET
The article is pretty simple and in Appendix A I have used the exact code in the article, added it to my app_code directory and modified the web.config file to use the HttpModule. I then disabled the built in Basic Authentication Module in the IIS 7 interface.
9. On my XP machine I right clicked 'My Computer' and left clicked 'Disconnect Network Drive' and removed the previous mapped drive. I then mapped the drive again to 'http://storage.mytestsite.com/keith' and this time used the credentials specified in the BasicAuthenticationModule.cs in the app_code directory for the webdav web site, 'WIN-HWRM91XQXWN\Test' and password. The drive maps.
I tried to delete the file 'This is a & test.txt' and I get the messagebox error: 'Cannot delete file: Cannot read from the source file or disk.'
I tried to make a new file on my local XP machine, 'This is a + test.txt' and copy it to the mapped network drive and get the error: 'Cannot copy This is a + test: The parameter is incorrect.'
So basically everything works great (including files with special characters + % and &) when I use the built in microsoft basic authentication module in the IIS 7 interface.
Once I use a HttpModule that does basic authentication I can only work with files that do not have a + % or a & in the file name.
My theory is that somewhere in the custom basic authentication HttpModule url encoded strings from the querystring are not being decoded correctly.
File names with the following symbols work correctly: !@#$^()_
File names with the following symbols don't work correctly: %&+
I ran etherreal (now known as wireshark) while trying to do a F5 when I had previously created the file 'This is a test + .txt' and saw it gave a 404 error. I then turned on failed request tracing and hit F5 again.
Cheers