I was deploying an ASP.Net 2.0 web application yesterday, after copying all the files in I browsed to the site and I got an error telling me that one of my handlers couldn't be found.
I immediately assumed that there was an error with the permissions of the Network Service user that was being used to run the website. Totally forgetting that if the Network Service user couldn't compile to the temporary ASP.NET folder the error would be an access denied writing to temporary folder.
After spending TOO MUCH time trying to figure out the permissions, my Project Manager came to me and asked me what was taking so long. I told him that there was something wrong with the service permissions and that the compiler was acting as if the files weren't there. My PM asked the question "Are you sure the files are there?" I replied affirmatively since I was sure I saw that there were files in the web folder, so I decided to show him and browsed to the web site's APP_CODE folder, it was EMPTY....
I did a quick check on all the other folders and sure enough... ALL THE .VB CODE BEHIND FILES WERE GONE!!!! Some how the fact that I right clicked dragged the ZIP file containing the web files from a network share and then directly extracting it using the built in Compressed Folders handler of Windows 2003 cause all the VB files to NOT be extracted.
Copying the ZIP file to the web server first and then extracting it from there solved the problem.
So I learnt to ALWAYS CHECK THE OBVIOUS LESS WORK INTENSIVE REASONS FIRST BEFORE ANY OTHER SOLUTIONS when something bad happens. But still a few questions exists... namely Why the heck were the files removed in the first place? It wasn't the antivirus cause it didn't log any deletes, then I repeated the same action on a similarly configured Win2k3 server but the VB files weren't deleted.