|
|||||||
|
|
|
![]() |
|
|
Strumenti |
|
|
#1 |
|
Senior Member
Iscritto dal: Feb 2003
Città: Formia
Messaggi: 1545
|
codice java in codice visual basic
File[] roots = File.listRoots();
boolean cerca= true; for(int i=0; ( i<roots.length && cerca); i++){ percorso_fs = roots[i]+"gmdt"; File f = new File(percorso_fs); System.out.println("percorso: " + percorso_fs); if (f.exists()){ cerca=false; percorso = percorso_fs; System.out.println("percorso: " + percorso); } } questo codice java mi elenca le root del mio pc e quando mi trova la cartella gmdt che si trova sotto una root esce dal for Ora qualcuno di voi puo aiutarmi a farlo in vb?
__________________
Il portale delle infomazioni di Latina e Provincia Giralatina.it e’ nato con il preciso intento di promuovere varie attività che si svolgono nella provincia di Latina http://www.giralatina.it Il Blog dei Pendolari http://www.giralatina.it/blog/mybloggie/index.php |
|
|
|
|
|
#2 |
|
Senior Member
Iscritto dal: Aug 2002
Città: Biella
Messaggi: 1882
|
Ecco a te
Codice:
Option Explicit
Private Declare Function GetLogicalDriveStrings Lib "kernel32" Alias "GetLogicalDriveStringsA" (ByVal nBufferLength As Long, ByVal lpBuffer As String) As Long
Private Declare Function GetDriveType Lib "kernel32" Alias "GetDriveTypeA" (ByVal sDrive As String) As Long
Private Declare Function PathIsDirectory Lib "shlwapi.dll" Alias "PathIsDirectoryA" (ByVal pszPath As String) As Long
Public Enum DRIVE_TYPE
DT_ABSENT = 1
DT_REMOVABLE = 2
DT_FIXED = 3
DT_REMOTE = 4
DT_CDROM = 5
DT_RAMDISK = 6
End Enum
Private Function GetListDrives(ByVal DriveType As DRIVE_TYPE) As Variant
Dim lRet As Long
Dim lTemp As Long
Dim sTemp As String * 255
Dim sAux As String
Dim vDrives As Variant
Dim nI As Integer
Dim nLen As Integer
Dim sVetDriver() As String
'controllo tutti di drive
lTemp = Len(sTemp)
lRet = GetLogicalDriveStrings(lTemp, sTemp)
sAux = Left$(sTemp, lRet)
vDrives = Split(sAux, vbNullChar)
'prendo solo i drive voluti
ReDim sVetDriver(0)
nLen = UBound(vDrives)
For nI = 0 To nLen
If GetDriveType(vDrives(nI)) = DriveType Then
ReDim Preserve sVetDriver(UBound(sVetDriver) + 1)
sVetDriver(UBound(sVetDriver)) = vDrives(nI)
End If
Next
GetListDrives = sVetDriver
End Function
Private Sub Form_Load()
Dim vVet As Variant
Dim nLen As Integer
Dim nI As Integer
Dim bTrovato As Boolean
vVet = GetListDrives(DT_FIXED)
nLen = UBound(vVet)
nI = 0
Do
nI = nI + 1
If CBool(PathIsDirectory(vVet(nI) & "gmdt")) = True Then
bTrovato = True
End If
Loop Until nI = nLen Or bTrovato = True
End Sub
__________________
"Analizzando e valutando ogni giorno tutte le idee, ho capito che spesso tutti sono convinti che una cosa sia impossibile, finchè arriva uno sprovveduto che non lo sa e la realizza!" A. Einstein |
|
|
|
|
|
#3 |
|
Senior Member
Iscritto dal: Feb 2003
Città: Formia
Messaggi: 1545
|
gentilissimo...
__________________
Il portale delle infomazioni di Latina e Provincia Giralatina.it e’ nato con il preciso intento di promuovere varie attività che si svolgono nella provincia di Latina http://www.giralatina.it Il Blog dei Pendolari http://www.giralatina.it/blog/mybloggie/index.php |
|
|
|
|
|
#4 | |
|
Senior Member
Iscritto dal: Aug 2002
Città: Biella
Messaggi: 1882
|
Quote:
__________________
"Analizzando e valutando ogni giorno tutte le idee, ho capito che spesso tutti sono convinti che una cosa sia impossibile, finchè arriva uno sprovveduto che non lo sa e la realizza!" A. Einstein |
|
|
|
|
|
|
#5 |
|
Senior Member
Iscritto dal: Feb 2003
Città: Formia
Messaggi: 1545
|
chiedo troppo...
se voglio eliminarla??
__________________
Il portale delle infomazioni di Latina e Provincia Giralatina.it e’ nato con il preciso intento di promuovere varie attività che si svolgono nella provincia di Latina http://www.giralatina.it Il Blog dei Pendolari http://www.giralatina.it/blog/mybloggie/index.php |
|
|
|
|
|
#6 | |
|
Senior Member
Iscritto dal: Aug 2002
Città: Biella
Messaggi: 1882
|
Quote:
Ecco devi fare così: Call RmDir("TUA_PATH_CARTELLA")
__________________
"Analizzando e valutando ogni giorno tutte le idee, ho capito che spesso tutti sono convinti che una cosa sia impossibile, finchè arriva uno sprovveduto che non lo sa e la realizza!" A. Einstein |
|
|
|
|
|
|
#7 |
|
Senior Member
Iscritto dal: Feb 2003
Città: Formia
Messaggi: 1545
|
RmDir (vVet(nI) & "gmdt")
non pesavo che poteva fare una cosa così semplice.. risolto grazie.
__________________
Il portale delle infomazioni di Latina e Provincia Giralatina.it e’ nato con il preciso intento di promuovere varie attività che si svolgono nella provincia di Latina http://www.giralatina.it Il Blog dei Pendolari http://www.giralatina.it/blog/mybloggie/index.php |
|
|
|
|
|
#8 |
|
Senior Member
Iscritto dal: Aug 2002
Città: Biella
Messaggi: 1882
|
Bhe tutto quello che si fa in VB6 è dettato dalle API, solo che i programmatori che hanno creato VB hanno pensato che per facilitare il tutto era meglio creare funzioni con include già le API giusto per nn sprecare 10 righe per fare una cosa semplice... ma siccome nn si poteva riempire VB di funzioni allora ci sono sole le principali.. le altri devi scrivere proprio le API, come appunto nell'esempio dell'elenco delle root
Conta che la fregatura delle API è appunto la sintassi delle funzioni, infatti ci sono vari programmai che ricordano questa cosa, altrimenti a mente sarebbe una cosa impossibile ricordare centinaia di funzioni con i relativi paramentri! Per creare ed eliminare le cartelle con le API basta fare così: Codice:
Private Declare Function CreateDirectoryEx Lib "kernel32" Alias "CreateDirectoryExA" (ByVal lpTemplateDirectory As String, ByVal lpNewDirectory As String, lpSecurityAttributes As Any) As Long
Private Declare Function RemoveDirectory Lib "kernel32" Alias "RemoveDirectoryA" (ByVal lpPathName As String) As Long
Private Sub Form_Load()
'creo la cartella
CreateDirectoryEx "C:\Windows", "C:\KPD-Team", ByVal 0&
'elimino la cartella
RemoveDirectory "C:\KPD-Team"
End Sub
__________________
"Analizzando e valutando ogni giorno tutte le idee, ho capito che spesso tutti sono convinti che una cosa sia impossibile, finchè arriva uno sprovveduto che non lo sa e la realizza!" A. Einstein |
|
|
|
|
|
#9 |
|
Senior Member
Iscritto dal: Feb 2003
Città: Formia
Messaggi: 1545
|
La catella che devo eliminare è di sola lettura posso forzare l'eliminazione?
oppure posso cambiarli i permessi?
__________________
Il portale delle infomazioni di Latina e Provincia Giralatina.it e’ nato con il preciso intento di promuovere varie attività che si svolgono nella provincia di Latina http://www.giralatina.it Il Blog dei Pendolari http://www.giralatina.it/blog/mybloggie/index.php |
|
|
|
|
|
#10 |
|
Senior Member
Iscritto dal: Aug 2002
Città: Biella
Messaggi: 1882
|
So cambiare gli attriburi ai file, ma alle directory no, faccio qlc ricerca e poi ti faccio sapere
__________________
"Analizzando e valutando ogni giorno tutte le idee, ho capito che spesso tutti sono convinti che una cosa sia impossibile, finchè arriva uno sprovveduto che non lo sa e la realizza!" A. Einstein |
|
|
|
|
|
#11 |
|
Senior Member
Iscritto dal: Aug 2002
Città: Biella
Messaggi: 1882
|
Per ora ho trovato solo un metodo senza l'ausilio delle API
Devi includere delle referenze del progetto: Microsoft Scripting Runtime L'ho provato e funziona: Codice:
Dim fso As FileSystemObject
Dim lFolder As Folder
Set fso = New FileSystemObject
Set lFolder = fso.GetFolder("c:\gmdt")
lFolder.Attributes = Normal
__________________
"Analizzando e valutando ogni giorno tutte le idee, ho capito che spesso tutti sono convinti che una cosa sia impossibile, finchè arriva uno sprovveduto che non lo sa e la realizza!" A. Einstein |
|
|
|
|
|
#12 |
|
Senior Member
Iscritto dal: Feb 2003
Città: Formia
Messaggi: 1545
|
tnk..
questo test non mi funziona se la dir si trova nel cdrom.. d:\gmdt puoi aitarmi per favore? If CBool(PathIsDirectory(vVet(nI) & "gmdt")) = True Then bTrovato = True End If Loop Until nI = nLen Or bTrovato = True
__________________
Il portale delle infomazioni di Latina e Provincia Giralatina.it e’ nato con il preciso intento di promuovere varie attività che si svolgono nella provincia di Latina http://www.giralatina.it Il Blog dei Pendolari http://www.giralatina.it/blog/mybloggie/index.php |
|
|
|
|
|
#13 |
|
Senior Member
Iscritto dal: Aug 2002
Città: Biella
Messaggi: 1882
|
Per farti dare l'elenco dei cdrom devi passare alla funzione il parametro DT_CDROM
Allora ti da l'elenco dei cdrom
__________________
"Analizzando e valutando ogni giorno tutte le idee, ho capito che spesso tutti sono convinti che una cosa sia impossibile, finchè arriva uno sprovveduto che non lo sa e la realizza!" A. Einstein |
|
|
|
|
|
#14 |
|
Senior Member
Iscritto dal: Feb 2003
Città: Formia
Messaggi: 1545
|
scusami..
Private Function GetListDrives(ByVal DriveType As DRIVE_TYPE) As Variant a questa funzione? come paramentro aggiuntivo oppure devo sostituirlo a driveType
__________________
Il portale delle infomazioni di Latina e Provincia Giralatina.it e’ nato con il preciso intento di promuovere varie attività che si svolgono nella provincia di Latina http://www.giralatina.it Il Blog dei Pendolari http://www.giralatina.it/blog/mybloggie/index.php |
|
|
|
|
|
#15 |
|
Senior Member
Iscritto dal: Feb 2003
Città: Formia
Messaggi: 1545
|
risolto bastava un po' + di attenzione...
tnks
__________________
Il portale delle infomazioni di Latina e Provincia Giralatina.it e’ nato con il preciso intento di promuovere varie attività che si svolgono nella provincia di Latina http://www.giralatina.it Il Blog dei Pendolari http://www.giralatina.it/blog/mybloggie/index.php |
|
|
|
|
|
#16 | |
|
Senior Member
Iscritto dal: Aug 2002
Città: Biella
Messaggi: 1882
|
Quote:
__________________
"Analizzando e valutando ogni giorno tutte le idee, ho capito che spesso tutti sono convinti che una cosa sia impossibile, finchè arriva uno sprovveduto che non lo sa e la realizza!" A. Einstein |
|
|
|
|
|
| Strumenti | |
|
|
Tutti gli orari sono GMT +1. Ora sono le: 22:27.



















