.
Hago la ultima ediciona mi codigo, ayq ue cuando quite el While Wend no quite algunas cosas.
'
' ////////////////////////////////////////////////////////////////
' // Autor: BlackZeroX ( Ortega Avila Miguel Angel ) //
' // //
' // Web: http://InfrAngeluX.Sytes.Net/ //
' // //
' // |-> Pueden Distribuir Este Código siempre y cuando //
' // no se eliminen los créditos originales de este código //
' // No importando que sea modificado/editado o engrandecido //
' // o achicado, si es en base a este código //
' ////////////////////////////////////////////////////////////////
' // http://infrangelux.hostei.com/index.php?option=com_content&view=article&id=17:artgetpatchinfo&catid=2:catprocmanager&Itemid=8
' ////////////////////////////////////////////////////////////////
Option Explicit
Enum GetFileStr
Extensión = 1
FileName = 2
Ruta = 4
End Enum
Public Function GetPatchInfo(ByVal StrRutaFull As String, Optional ByVal Options As GetFileStr = FileName) As String
Dim lng_ptr(1) As Long
Dim lng_aux As Long
lng_aux = Len(StrRutaFull)
lng_ptr(0) = InStrRev(StrRutaFull, "\")
If lng_ptr(0) > 0 Then
lng_ptr(1) = InStrRev(StrRutaFull, ".")
If lng_ptr(1) > 0 And Not lng_ptr(0) < lng_ptr(1) Then
lng_ptr(1) = lng_aux + 1
End If
If (Options And Ruta) = Ruta Then
GetPatchInfo = Mid$(StrRutaFull, 1, lng_ptr(0)) & GetPatchInfo
End If
If (Options And FileName) = FileName Then
If lng_ptr(1) = lng_aux Then
lng_aux = lng_aux - lng_ptr(0) - 1
Else
lng_aux = lng_ptr(1) - lng_ptr(0) - 1
End If
GetPatchInfo = GetPatchInfo & Mid$(StrRutaFull, lng_ptr(0) + 1, lng_aux)
End If
If (Options And Extensión) = Extensión Then
GetPatchInfo = GetPatchInfo & Mid$(StrRutaFull, lng_ptr(1), lng_ptr(1))
End If
End If
End Function
Public Function Reto_GetPatchInfo$(ByRef StrPath$)
' // Esta funcion la agrego para el reto en cuestion...
Reto_GetPatchInfo = GetPatchInfo(StrPath$, FileName Or Extensión)
End Function
Temibles Lunas!¡.