Como diria Jack, o Estripador, vamos por partes...
Dim strCaminho As String * 255
Dim strTemp As String * 256
As duas declarações acima significam que strTemp e strCaminho são strings de 255 e 256 espaços fixos e mesmo que vc declare strTemp = "" ela ainda será uma string de 255 espaços em branco, os espaços não vão sumir nem mesmo com um trim.
Public Type OSVERSIONINFO
dwOSVersionInfoSize As Long
dwMajorVersion As Long
dwMinorVersion As Long
dwBuildNumber As Long
dwPlatformId As Long
szCSDVersion As String * 128
End Type
Public Type NAME_BUFFER
name As String * NCBNAMSZ
name_num As Integer
name_flags As Integer
End Type
Já essas duas são varriáveis de tipo usadas para alguma declaração API ou classe. Fica meio difícil dizer para que são usadas.