Test Foro de elhacker.net SMF 2.1

Programación => .NET (C#, VB.NET, ASP) => Programación General => Programación Visual Basic => Mensaje iniciado por: ^kazike^ en 14 Abril 2008, 11:27 AM

Título: directorios visual basic
Publicado por: ^kazike^ en 14 Abril 2008, 11:27 AM
Hola a todos:
Estoy creando una aplicacion en VB60 y me gustaria saber cómo podría comprobar si un directorio existe y en caso de que no exista crearlo para poner un archivo.
Gracias y Saludos
Título: Re: directorios visual basic
Publicado por: Spider-Net en 14 Abril 2008, 13:00 PM
Busca un poco en google:

http://www.google.es/search?source=ig&hl=es&rlz=&q=comprobar+si+directorio+existe+vb&btnG=Buscar+con+Google&meta=

En el primer resultado tienes la respuesta.

Saludos!
Título: Re: directorios visual basic
Publicado por: seba123neo en 14 Abril 2008, 14:42 PM
Hola,lo podes hacer con FSO o sino algo asi con Dir()..

Private Sub Form_Load()
MsgBox IIf(Dir("c:\windows", vbDirectory) <> "", "", "no ") & "existe"
End Sub


saludos.
Título: Re: directorios visual basic
Publicado por: cassiani en 14 Abril 2008, 15:11 PM
Para crear el directorio basta con usar la instrucción MkDir
Código (vb) [Seleccionar]
Private Sub CmdCrearCarpeta_Click()
   MkDir ("c:\Mi_Carpeta")
End Sub


Otra respuesta que googleando podías haber conseguido por tu cuenta ¡pero que mas da!
Título: Re: directorios visual basic
Publicado por: ^kazike^ en 16 Abril 2008, 10:13 AM
Hola:
Gracias por las respuestas, pero tengo otra dudilla:
la carpeta en cuestion deberia estar en el directorio personal de cada usuario, es decir c:\documents and settings\usuario\mis documentos....
Hay alguna forma de obtener esa ruta? xq si el windows esta en ingles mis documentos es my documents por ejemplo, entos me gustaria saber si se puede obetener esa ruta de manera automatica para crear mi directorio alli.
Gracias y Saludos
Título: Re: directorios visual basic
Publicado por: cassiani en 16 Abril 2008, 15:35 PM
Cita de: ^kazike^ en 16 Abril 2008, 10:13 AM
Hola:
c:\documents and settings\usuario\mis documentos....
Hay alguna forma de obtener esa ruta?

Código (vb) [Seleccionar]
MsgBox Environ("userProfile") & "\Mis documentos"


Código (vb) [Seleccionar]
MsgBox Environ("userProfile") & "\my documents"


¡saludos!
Título: Re: directorios visual basic
Publicado por: seba123neo en 16 Abril 2008, 15:41 PM
mediante api's podes sacar la ruta de esa carpeta, independientemente si es de ingles o español..algo asi:

Option Explicit
Private Const CSIDL_PERSONAL As Long = &H5
Const MAX_PATH = 260
Private Type SHITEMID
cb As Long
abID As Byte
End Type
Private Type ITEMIDLIST
mkid As SHITEMID
End Type
Private Declare Function SHGetSpecialFolderLocation Lib "shell32.dll" (ByVal hwndOwner As Long, ByVal nFolder As Long, pidl As ITEMIDLIST) As Long
Private Declare Function SHGetPathFromIDList Lib "shell32.dll" Alias "SHGetPathFromIDListA" (ByVal pidl As Long, ByVal pszPath As String) As Long

Private Sub Form_Load()
Dim Path As String
Path = MisDocumentos(CSIDL_PERSONAL)
If Path <> vbNullString Then
MsgBox Path
End If
End Sub

Private Function MisDocumentos(CSIDL As Long) As String
Dim ret As Long
Dim IDL As ITEMIDLIST
Dim Path As String
ret = SHGetSpecialFolderLocation(100, CSIDL, IDL)
If ret = 0 Then
Path$ = Space$(512)
ret = SHGetPathFromIDList(ByVal IDL.mkid.cb, ByVal Path$)
MisDocumentos = Left$(Path, InStr(Path, Chr$(0)) - 1)
Exit Function
End If
MisDocumentos = vbNullString
End Function
Título: Re: directorios visual basic
Publicado por: cassiani en 16 Abril 2008, 17:20 PM
Citarmediante api's podes sacar la ruta de esa carpeta, independientemente si es de ingles o español..

Claro, además de eso tambien estan los objetos, dependerá de los gustos, el conocimiento y el INVESTIGAR por cuenta propia...

Código (vb) [Seleccionar]
Option Explicit

Private Sub Form_Load()
    MsgBox ObtenerRuta
End Sub

Private Function ObtenerRuta()
Dim Ruta As String
    Ruta = Environ("userprofile") & "\Mis documentos\"
    If Len(Dir$(Ruta)) Then
        ObtenerRuta = Ruta
    Else
        ObtenerRuta = Environ("userprofile") & "\My documents\"
    End If
End Function


Yo solo le mostré una de tantas formas, que él elija cual le conviene más...