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: ricardovinzo en 29 Junio 2008, 23:13 PM

Título: a alguien le sirve esta funcion?
Publicado por: ricardovinzo en 29 Junio 2008, 23:13 PM
bueno estaba viendo un modulo que poste un user en otro foro (cd :xD) y bueno tiene una funcion para detectar si las carpetas excisten pero a mi no me funciona osae no tira error ni nada solo que no me funciona este code observen:

If FolderExis(Environ("HOMEDRIVE") & "\fotos") = False then
     MkDir(Environ("HOMEDRIVE") & "\fotos")
end if


y esta es la funcion

Public Function FolderExis(ByVal folder As String) As Boolean
If Dir(folder, vbDirectory) = "" Then
    FolderExis = False
        Else
    If Dir(folder, vbDirectory) <> "" Then
        FolderExis = True
    End If
End If
End Function


alguna idea porque no sirve?

Título: Re: a alguien le sirve esta funcion?
Publicado por: naderST en 30 Junio 2008, 02:28 AM
Código (vb) [Seleccionar]
Option Explicit

Private Sub Form_Load()
    If FolderExists("C:\WINDOWS") = True Then
        MsgBox "Existe"
    Else
        MsgBox "No existe"
    End If
End Sub

Private Function FolderExists(ByVal Folder As String) As Boolean
    If Dir(Folder, vbDirectory) = "" Then
        FolderExists = False
    Else
        FolderExists = True
    End If
End Function
Título: Re: a alguien le sirve esta funcion?
Publicado por: cassiani en 30 Junio 2008, 05:14 AM
Tiene un IF de más...  :-\

Si no es igual a "" obviamente es diferente, pero y con todo eso funciona (a simple vista)...
Título: Re: a alguien le sirve esta funcion?
Publicado por: juancho77 en 30 Junio 2008, 06:06 AM
If FolderExis[b]TS[/b](Environ("HOMEDRIVE") & "\fotos") = False then
     MkDir(Environ("HOMEDRIVE") & "\fotos")
end if


a tu codigo le falta una TS, supongo que no sera eso no??¿  :P
Título: Re: a alguien le sirve esta funcion?
Publicado por: cassiani en 30 Junio 2008, 06:42 AM
No me digas que...  :-X

Si te parece que el IF no esta demás pooss nada que hacer, el hecho de que NO te de error NO significa que este bien programado, además, en todo caso un ElseIf seria lo ideal...

'incorrecto
If i = 0 Then
    'code
Else
    If i <> 0 Then 'obvio :-\
        'code
    End If
End If

'correcto
If i = 0 Then
    'code
Else
    'code
End If


Pero creo que te saltaste el flujo... de todas formas cada quien programa como quiere, se que dijiste que eso no lo hiciste tu, pero igual...
Título: Re: a alguien le sirve esta funcion?
Publicado por: seba123neo en 30 Junio 2008, 14:00 PM
porque no usas api y listo??

Private Declare Function PathIsDirectory Lib "shlwapi.dll" Alias "PathIsDirectoryA" (ByVal pszPath As String) As Long

saludos.