hombre estas ponieno mal las variable de entorno, no van con comillas y se le antepone
Environ antes..aparte te la devuelve en path corto.asi se pasa al largo:
Option Explicit
Private Declare Function GetLongPathName Lib "kernel32.dll" Alias "GetLongPathNameA" (ByVal lpszShortPath As String, ByVal lpszLongPath As String, ByVal cchBuffer As Long) As Long
Private Sub Form_Load()
MsgBox PathLargo(Environ("TMP"))
End Sub
Private Function PathLargo(ByVal pPathCorto As String) As String
Dim vBuffer As String
vBuffer = String(255, 0)
Call GetLongPathName(pPathCorto, vBuffer, 255)
PathLargo = Replace(vBuffer, Chr(0), vbNullString)
End Function
con FSO tambien tenes funciones para borrar archivos...
saludos.