I am curious, have you remotely tried this?  btw, I think there is a way to obtain the drive letter better that that one, and for FSMs sake, stop adding excepts without exceptions