Rutas

Buenas !!!!!
Que tal?
Tengo un problema y es que no se como extraer o saber la ruta de un archivo o directorio para luego poder abrirlo desde cualquier ordenador, ya sabes, por si cambian el directorio de instalacion.
Muchas gracias
Saludos
rok24

1 respuesta

Respuesta
1
Como no he entendido exactamente que es lo que quieres. Aquí tienes esto
Crear un proyecto VB.
Pones 2 Botones (BuscarDir y BuscarFic), y añades una referencia de controles a "Microsoft Common Dialog Control"
Luego pegas éste código y lo pruebas
'****************************************************************************************
' API BuscarDirectorio
'****************************************************************************************
Private Type BROWSEINFO
hOwner As Long
pidlRoot As Long
pszDisplayName As String
lpszTitle As String
ulFlags As Long
lpfn As Long
lParam As Long
iImage As Long
End Type
'BROWSEINFO.ulFlags values:
Const BIF_RETURNONLYFSDIRS = &H1
Private Declare Function SHGetPathFromIDList Lib "shell32.dll" Alias "SHGetPathFromIDListA" (ByVal pidl As Long, ByVal pszPath As String) As Long
Private Declare Function SHBrowseForFolder Lib "shell32.dll" Alias "SHBrowseForFolderA" (lpBrowseInfo As BROWSEINFO) As Long 'In code...
'**********************************************************************************************************************
'** BuscarDirectorio
'**********************************************************************************************************************
Public Function BuscarDirectorio(ByVal hwnd As Long, Texto As String) As String
Dim bInf As BROWSEINFO
Dim RetVal As Long
Dim PathID As Long
Dim RetPath As String
Dim Offset As Integer
bInf.hOwner = hwnd
bInf.lpszTitle = Texto
bInf.ulFlags = BIF_RETURNONLYFSDIRS
'Muestra la ventana de busqueda de directorio
PathID = SHBrowseForFolder(bInf)
RetPath = Space$(512)
RetVal = SHGetPathFromIDList(ByVal PathID, ByVal RetPath)
If RetVal Then
Offset = InStr(RetPath, Chr$(0))
BuscarDirectorio = Left$(RetPath, Offset - 1)
Else
BuscarDirectorio = ""
End If
End Function
Private Sub BuscarDir_Click()
MsgBox (BuscarDirectorio(Me.hwnd, "Buscar"))
End Sub
Private Sub BuscarFic_Click()
CommonDialog1.ShowOpen
MsgBox "Path + fichero " & CommonDialog1.FileName
MsgBox "Path " & Left(CommonDialog1.FileName, InStrRev(CommonDialog1.FileName, "\"))
MsgBox "Fichero" & Mid(CommonDialog1.FileName, InStrRev(CommonDialog1.FileName, "\") + 1)
End Sub

Añade tu respuesta

Haz clic para o

Más respuestas relacionadas