Questo sito utilizza cookies solo per scopi di autenticazione sul sito e nient'altro. Nessuna informazione personale viene tracciata. Leggi l'informativa sui cookies.
Username: Password: oppure
Visual Basic 6 - FIle Researcher
Forum - Visual Basic 6 - FIle Researcher - Pagina 3

Pagine: [ 1 2 3 4 5 6 7 ] Precedente | Prossimo
Avatar
()
Newbie


Messaggi:
Iscritto:

Segnala al moderatore
Postato alle 18:14
Lunedì, 25/02/2008
mi da errore dicendo:

Tipo non corrispondente

e mi segnala

For i = 0 To UBound(direcotry)


:-|:-|:-|

PM Quote
Avatar
LuigiBiasi (Normal User)
Expert


Messaggi: 237
Iscritto: 15/09/2006

Segnala al moderatore
Postato alle 18:17
Lunedì, 25/02/2008
Testo quotato

Postato originariamente da .:ViRuS:.:

mi da errore dicendo:

Tipo non corrispondente

e mi segnala

For i = 0 To UBound(direcotry)


:-|:-|:-|



perchè è directory e non direcotry

guarda il nome dell'array.

Codice sorgente - presumibilmente VB.NET

  1. Dim c As New FileSystemObject
  2.  
  3.  
  4. Dim dirve(10) As String
  5. Private Sub Form_Load()
  6.  
  7.  
  8. d = getfile("C:\", "prova.txt")
  9. End Sub
  10.  
  11. Public Function getfile(path As String, filename As String) As Boolean
  12. Dim f As Folder
  13. Set f = c.GetFolder(path)
  14. Dim file(100) As String
  15. Dim directory(100) As String
  16. Dim i As Integer
  17. Dim tr As Boolean
  18. tr = False
  19. i = 0
  20. For Each Folder In f.SubFolders
  21.     directory(i) =  Folder
  22.     i = i + 1
  23. Next
  24. i = 0
  25. For Each Files In f.Files
  26.     file(i) = Files
  27.     i = i + 1
  28. Next
  29.  
  30. For i = 0 To UBound(file)
  31. If (file(i) = filename) Then
  32.     'fai quello che vuoi
  33.     tr = True
  34. End If
  35. Next i
  36. If tr = False Then
  37. 'ha continuato il for non ha trovato il file
  38. For i = 0 To UBound(directory)
  39. getfile directory(i), filename
  40. Next i
  41. Else
  42. getfile = True 'esci dalla funzione positivamente
  43. End If
  44.  
  45. End Function
  46.  
  47. Function getdrive(drive As String) As Boolean
  48.     If (c.DriveExists(drive)) Then
  49.     'il drive esiste
  50.     getdrive = True
  51.     End If
  52.    
  53.     getdrive = False
  54. End Function


Ultima modifica effettuata da LuigiBiasi il 25/02/2008 alle 18:20
PM Quote
Avatar
()
Newbie


Messaggi:
Iscritto:

Segnala al moderatore
Postato alle 18:19
Lunedì, 25/02/2008
Chiamata di routine o argomento non valido:

Set f = c.GetFolder(path)

PM Quote
Avatar
LuigiBiasi (Normal User)
Expert


Messaggi: 237
Iscritto: 15/09/2006

Segnala al moderatore
Postato alle 18:21
Lunedì, 25/02/2008
Testo quotato

Postato originariamente da .:ViRuS:.:

Chiamata di routine o argomento non valido:

Set f = c.GetFolder(path)



scrivi cosi
For Each Folder In f.SubFolders
    directory(i) = Folder
    i = i + 1
Next

al posto di

For Each Folder In f.SubFolders
    directory(i) = path & Folder
    i = i + 1
Next

PM Quote
Avatar
()
Newbie


Messaggi:
Iscritto:

Segnala al moderatore
Postato alle 18:25
Lunedì, 25/02/2008
stava gia...

:-|

PM Quote
Avatar
LuigiBiasi (Normal User)
Expert


Messaggi: 237
Iscritto: 15/09/2006

Segnala al moderatore
Postato alle 18:25
Lunedì, 25/02/2008
l'ultima parte va corretta cosi:

For i = 0 To UBound(directory)
If directory(i) = "" Then
exit funtion
End If
getfile directory(i), filename
Next i
Else
getfile = True 'esci dalla funzione positivamente
End If

ho commesso un sacco di errori.adesso che lo sto testando me ne sto accorgendo!!!

Ultima modifica effettuata da LuigiBiasi il 25/02/2008 alle 18:26
PM Quote
Avatar
()
Newbie


Messaggi:
Iscritto:

Segnala al moderatore
Postato alle 18:28
Lunedì, 25/02/2008
ci vuole un IF.. dove lo metto?


Errori? Bah tieni conto che io ste cose non le so... non ti preoccupare per niente proprio...

anzi scusami pure per il disturbo.. dovrei impararle certe cose :-|:-|

PM Quote
Avatar
LuigiBiasi (Normal User)
Expert


Messaggi: 237
Iscritto: 15/09/2006

Segnala al moderatore
Postato alle 18:30
Lunedì, 25/02/2008
in definitiva il codice dovrebbe essere cosi:

Codice sorgente - presumibilmente VB.NET

  1. Dim c As New FileSystemObject
  2.  
  3.  
  4. Dim dirve(10) As String
  5. Private Sub Form_Load()
  6.  
  7.  
  8. d = getfile("C:\", "prova.txt")
  9. End Sub
  10.  
  11. Public Function getfile(path As String, filename As String) As Boolean
  12. Dim f As Folder
  13. Set f = c.GetFolder(path)
  14. Dim file(100) As String
  15. Dim directory(100) As String
  16. Dim i As Integer
  17. Dim tr As Boolean
  18. Dim o() As String
  19. tr = False
  20. i = 0
  21. For Each Folder In f.SubFolders
  22.     directory(i) = Folder
  23.     i = i + 1
  24. Next
  25. i = 0
  26. For Each Files In f.Files
  27.     o = Split(Files, "\")
  28.     file(i) = o(UBound(o))
  29.     i = i + 1
  30. Next
  31.  
  32. For i = 0 To UBound(file)
  33. If (file(i) = filename) Then
  34.     'fai quello che vuoi
  35.     tr = True
  36.     Exit Function
  37. End If
  38. Next i
  39. If tr = False Then
  40. 'ha continuato il For non ha trovato il file
  41. For i = 0 To UBound(directory)
  42. If (directory(i) = "") Then
  43. Exit Function
  44. End If
  45. getfile directory(i), filename
  46. Next i
  47. Else
  48. getfile = True 'esci dalla funzione positivamente
  49. Exit Function
  50. End If
  51.  
  52. End Function
  53.  
  54. Function getdrive(drive As String) As Boolean
  55.     If (c.DriveExists(drive)) Then
  56.     'il drive esiste
  57.     getdrive = True
  58.     End If
  59.    
  60.     getdrive = False
  61. End Function



Ultima modifica effettuata da LuigiBiasi il 25/02/2008 alle 18:40
PM Quote
Pagine: [ 1 2 3 4 5 6 7 ] Precedente | Prossimo