Foro de elhacker.net

Programación => Programación Visual Basic => Mensaje iniciado por: tito_hack en 20 Junio 2008, 21:47 pm



Título: como hacer un buscador
Publicado por: tito_hack en 20 Junio 2008, 21:47 pm
hola como estan tod@s
bueno tengo un prequeño proble estoy haciendo un sistema en vb, pero le quiero poner un buscador de archivos y que me cree un lista de todos esto pero no logro como hacerlo, alguien de ustedes tiene alguna idea o sabe como puedo hacer este buscador, bueno espero que me ayan entendido gracias.
byeeeeeeeeeeeeeee!


Título: Re: como hacer un buscador
Publicado por: Dosjota en 20 Junio 2008, 22:33 pm
y que estas trabajando con algun tipo de base de datos?

si es asi, con cual, y ay te ayudo...

porque no entendi muy bien a donde vas...


Título: Re: como hacer un buscador
Publicado por: naderST en 21 Junio 2008, 01:39 am
y que estas trabajando con algun tipo de base de datos?

si es asi, con cual, y ay te ayudo...

porque no entendi muy bien a donde vas...

El dijo buscador de archivos... me imagino que es de los archivos de la PC como el que tiene el exlporador de Windows...


Título: Re: como hacer un buscador
Publicado por: SERBice en 21 Junio 2008, 01:50 am
Ejemplo de Api Guide:

Código
  1. 'Create a form with a command button (command1), a list box (list1)
  2. 'and four text boxes (text1, text2, text3 and text4).
  3. 'Type in the first textbox a startingpath like c:\
  4. 'and in the second textbox you put a pattern like *.* or *.txt
  5.  
  6. Private Declare Function FindFirstFile Lib "kernel32" Alias "FindFirstFileA" (ByVal lpFileName As String, lpFindFileData As WIN32_FIND_DATA) As Long
  7. Private Declare Function FindNextFile Lib "kernel32" Alias "FindNextFileA" (ByVal hFindFile As Long, lpFindFileData As WIN32_FIND_DATA) As Long
  8. Private Declare Function GetFileAttributes Lib "kernel32" Alias "GetFileAttributesA" (ByVal lpFileName As String) As Long
  9. Private Declare Function FindClose Lib "kernel32" (ByVal hFindFile As Long) As Long
  10.  
  11. Const MAX_PATH = 260
  12. Const MAXDWORD = &HFFFF
  13. Const INVALID_HANDLE_VALUE = -1
  14. Const FILE_ATTRIBUTE_ARCHIVE = &H20
  15. Const FILE_ATTRIBUTE_DIRECTORY = &H10
  16. Const FILE_ATTRIBUTE_HIDDEN = &H2
  17. Const FILE_ATTRIBUTE_NORMAL = &H80
  18. Const FILE_ATTRIBUTE_READONLY = &H1
  19. Const FILE_ATTRIBUTE_SYSTEM = &H4
  20. Const FILE_ATTRIBUTE_TEMPORARY = &H100
  21.  
  22. Private Type FILETIME
  23.    dwLowDateTime As Long
  24.    dwHighDateTime As Long
  25. End Type
  26.  
  27. Private Type WIN32_FIND_DATA
  28.    dwFileAttributes As Long
  29.    ftCreationTime As FILETIME
  30.    ftLastAccessTime As FILETIME
  31.    ftLastWriteTime As FILETIME
  32.    nFileSizeHigh As Long
  33.    nFileSizeLow As Long
  34.    dwReserved0 As Long
  35.    dwReserved1 As Long
  36.    cFileName As String * MAX_PATH
  37.    cAlternate As String * 14
  38. End Type
  39. Function StripNulls(OriginalStr As String) As String
  40.    If (InStr(OriginalStr, Chr(0)) > 0) Then
  41.        OriginalStr = Left(OriginalStr, InStr(OriginalStr, Chr(0)) - 1)
  42.    End If
  43.    StripNulls = OriginalStr
  44. End Function
  45.  
  46. Function FindFilesAPI(path As String, SearchStr As String, FileCount As Integer, DirCount As Integer)
  47.    'KPD-Team 1999
  48.    'E-Mail: KPDTeam@Allapi.net
  49.    'URL: http://www.allapi.net/
  50.  
  51.    Dim FileName As String ' Walking filename variable...
  52.    Dim DirName As String ' SubDirectory Name
  53.    Dim dirNames() As String ' Buffer for directory name entries
  54.    Dim nDir As Integer ' Number of directories in this path
  55.    Dim i As Integer ' For-loop counter...
  56.    Dim hSearch As Long ' Search Handle
  57.    Dim WFD As WIN32_FIND_DATA
  58.    Dim Cont As Integer
  59.    If Right(path, 1) <> "\" Then path = path & "\"
  60.    ' Search for subdirectories.
  61.    nDir = 0
  62.    ReDim dirNames(nDir)
  63.    Cont = True
  64.    hSearch = FindFirstFile(path & "*", WFD)
  65.    If hSearch <> INVALID_HANDLE_VALUE Then
  66.        Do While Cont
  67.        DirName = StripNulls(WFD.cFileName)
  68.        ' Ignore the current and encompassing directories.
  69.        If (DirName <> ".") And (DirName <> "..") Then
  70.            ' Check for directory with bitwise comparison.
  71.            If GetFileAttributes(path & DirName) And FILE_ATTRIBUTE_DIRECTORY Then
  72.                dirNames(nDir) = DirName
  73.                DirCount = DirCount + 1
  74.                nDir = nDir + 1
  75.                ReDim Preserve dirNames(nDir)
  76.            End If
  77.        End If
  78.        Cont = FindNextFile(hSearch, WFD) 'Get next subdirectory.
  79.        Loop
  80.        Cont = FindClose(hSearch)
  81.    End If
  82.    ' Walk through this directory and sum file sizes.
  83.    hSearch = FindFirstFile(path & SearchStr, WFD)
  84.    Cont = True
  85.    If hSearch <> INVALID_HANDLE_VALUE Then
  86.        While Cont
  87.            FileName = StripNulls(WFD.cFileName)
  88.            If (FileName <> ".") And (FileName <> "..") Then
  89.                FindFilesAPI = FindFilesAPI + (WFD.nFileSizeHigh * MAXDWORD) + WFD.nFileSizeLow
  90.                FileCount = FileCount + 1
  91.                List1.AddItem path & FileName
  92.            End If
  93.            Cont = FindNextFile(hSearch, WFD) ' Get next file
  94.        Wend
  95.        Cont = FindClose(hSearch)
  96.    End If
  97.    ' If there are sub-directories...
  98.    If nDir > 0 Then
  99.        ' Recursively walk into them...
  100.        For i = 0 To nDir - 1
  101.            FindFilesAPI = FindFilesAPI + FindFilesAPI(path & dirNames(i) & "\", SearchStr, FileCount, DirCount)
  102.        Next i
  103.    End If
  104. End Function
  105. Sub Command1_Click()
  106.    Dim SearchPath As String, FindStr As String
  107.    Dim FileSize As Long
  108.    Dim NumFiles As Integer, NumDirs As Integer
  109.    Screen.MousePointer = vbHourglass
  110.    List1.Clear
  111.    SearchPath = Text1.Text
  112.    FindStr = Text2.Text
  113.    FileSize = FindFilesAPI(SearchPath, FindStr, NumFiles, NumDirs)
  114.    Text3.Text = NumFiles & " Files found in " & NumDirs + 1 & " Directories"
  115.    Text4.Text = "Size of files found under " & SearchPath & " = " & Format(FileSize, "#,###,###,##0") & " Bytes"
  116.    Screen.MousePointer = vbDefault
  117. End Sub
  118.  


Título: Re: como hacer un buscador
Publicado por: tito_hack en 22 Junio 2008, 17:52 pm
hola gracias
pues si El Riper tiene razon naderST  estoy intentando hacer un buscador de archivos como el de explorador de windows, ey SERBice gracias por el codigo voy a provarlo aver si eslo que necesitava, y denuevo gracias a todos
byeeeeeeeeeeeee!