• In our environment I ended up writing a CLR Proc to workaround the fact that xp_fixeddrives does not properly display space information for mounted volumes. Now we have something like an enhanced xp_fixeddrives that gives us the drive letter, the mounted volume paths, volume labels, volume capacity, and volume free space.

    Earlier we had used xp_cmdshell (enabling it, getting the information, and then disabling it) for access to the information, but that was always considered a temporary solution.

    My .NET knowledge is growing, but I'm not a dev and neither are the other DBAs on my team. If this were a more complicated process that required maintenance, then we probably would have had another group create something. However, the requirements for the CLR proc are minimal, don't change, and are simple enough that the limited .NET knowledge possessed by other members of the team would be sufficient enough to troubleshoot in the off-chance that there's a problem. In this case, using CLR was fast and allowed us to work around a limitation that exists in SQL Server 2005 and 2008.