The MakeParentDirectory calls above don't seem to need a /. on the end; why does this one ?
Without it, you could just use GetLogDir() in place of vbuff !