Torna indietro   Hardware Upgrade Forum > Software > Programmazione

Ecovacs Goat O1200 LiDAR Pro: la prova del robot tagliaerba con tagliabordi integrato
Ecovacs Goat O1200 LiDAR Pro: la prova del robot tagliaerba con tagliabordi integrato
Nuova frontiera per i robot tagliaerba, con Ecovacs GOAT O1200 LiDAR Pro che riconosce l'ambiente in maniera perfetta, grazie a due sensori LiDAR, e dopo la falciatura può anche rifinire il bordo con il tagliabordi a filo integrato
Recensione Samsung Galaxy S26+: sfida l'Ultra, ma ha senso di esistere?
Recensione Samsung Galaxy S26+: sfida l'Ultra, ma ha senso di esistere?
Equilibrio e potenza definiscono il Samsung Galaxy S26+, un flagship che sfida la variante Ultra e la fascia alta del mercato con il primo processore mobile a 2nm. Pur mantenendo l'hardware fotografico precedente, lo smartphone brilla per un display QHD+ da 6,7 pollici d'eccellenza, privo però del trattamento antiriflesso dell'Ultra, e per prestazioni molto elevate. Completano il quadro la ricarica wireless a 20W e, soprattutto, un supporto software settennale
Zeekr X e 7X provate: prezzi, autonomia fino a 615 km e ricarica in 13 minuti
Zeekr X e 7X provate: prezzi, autonomia fino a 615 km e ricarica in 13 minuti
Zeekr sbarca ufficialmente in Italia con tre modelli elettrici premium, X, 7X e 001, distribuiti da Jameel Motors su una rete di 52 punti vendita già attivi. La Zeekr X parte da 39.900 euro, la 7X da 54.100: piattaforma a 800V, chip Snapdragon di ultima generazione, ricarica ultraveloce e un'autonomia dichiarata fino a 615 km WLTP. Le prime consegne sono previste a metà aprile
Tutti gli articoli Tutte le news

Vai al Forum
Rispondi
 
Strumenti
Old 01-09-2009, 23:34   #1
first register
Member
 
L'Avatar di first register
 
Iscritto dal: Oct 2008
Messaggi: 326
[Vb] verificare l'esistenza di una directory

Vorrei sapere se c'è un modo rapido per verificare l'esistenza di una directory e nel caso in cui la directory non sia presente sul disco, per crearne una.

Ad esempio la mia applicazione va a caricare le immagini nella cartella C:\immagini\ ora, nel caso in cui l'applicazione sia avviata per la prima volta, la cartella potrebbe non essere presente sul disco e l'applicazione va in errore.

Pensavo di fare una verifica nel Form Load, ma come gestisco l'errore e la creazione della directory ?
first register è offline   Rispondi citando il messaggio o parte di esso
Old 02-09-2009, 00:16   #2
Y3PP4
Member
 
Iscritto dal: Jul 2009
Messaggi: 210
Premetto che non conosco VB e non sò che versione stai usando, ma per darti una mano mi son fatto una googlata e ho trovato questo per il "directory check" e questo per il make dir.

Spero ti siano di aiuto,

ciao!
__________________
La disumanità del computer sta nel fatto che, una volta programmato e messo in funzione, si comporta in maniera perfettamente onesta.
Isaac Asimov

Ultima modifica di Y3PP4 : 02-09-2009 alle 00:18.
Y3PP4 è offline   Rispondi citando il messaggio o parte di esso
Old 02-09-2009, 00:24   #3
||ElChE||88
Senior Member
 
Iscritto dal: Dec 2003
Messaggi: 4907
Dir e MkDir se VB6, Directory.Exists e Directory.CreateDirectory se VB.Net.

Ultima modifica di ||ElChE||88 : 02-09-2009 alle 00:26.
||ElChE||88 è offline   Rispondi citando il messaggio o parte di esso
Old 02-09-2009, 00:27   #4
first register
Member
 
L'Avatar di first register
 
Iscritto dal: Oct 2008
Messaggi: 326
Grazie mille! la versione è la 6.0, un pò old ma si tratta di applicazioni semplici e non mi va di cambiare.
Ho dato un occhiata alla funzione Dir e dovrebbe andare... speriamo.

Quote:
If Dir( "c:\myFile.txt") <> "" Then

MsgBox "It Exists!"
Else

MsgBox "No Go!"

End If

grazie.
first register è offline   Rispondi citando il messaggio o parte di esso
Old 02-09-2009, 00:47   #5
first register
Member
 
L'Avatar di first register
 
Iscritto dal: Oct 2008
Messaggi: 326
La funzione DIR permette di verificare l'esistenza dei file, ma non funziona con le directory...
first register è offline   Rispondi citando il messaggio o parte di esso
Old 02-09-2009, 08:25   #6
MarcoGG
Senior Member
 
L'Avatar di MarcoGG
 
Iscritto dal: Dec 2004
Messaggi: 3210
Quote:
Originariamente inviato da first register Guarda i messaggi
Vorrei sapere se c'è un modo rapido per verificare l'esistenza di una directory e nel caso in cui la directory non sia presente sul disco, per crearne una.

Ad esempio la mia applicazione va a caricare le immagini nella cartella C:\immagini\ ora, nel caso in cui l'applicazione sia avviata per la prima volta, la cartella potrebbe non essere presente sul disco e l'applicazione va in errore.

Pensavo di fare una verifica nel Form Load, ma come gestisco l'errore e la creazione della directory ?
La gestione degli errori in questo caso è superflua. Basta, come sempre, usare la libreria giusta. Aggiungi al progetto un Rif. alla libreria "Microsoft Scripting Runtime", dopodichè giocare con cartelle e files è facile :

Codice:
    Dim percorsoDir As String
    percorsoDir = "C:\immagini"
    
    Dim FSO As Scripting.FileSystemObject
    Set FSO = New Scripting.FileSystemObject
    If FSO.FolderExists(percorsoDir) Then
        MsgBox "Directory già esistente."
    Else
        FSO.CreateFolder (percorsoDir)
        MsgBox "Directory creata."
    End If
MarcoGG è offline   Rispondi citando il messaggio o parte di esso
Old 02-09-2009, 11:37   #7
||ElChE||88
Senior Member
 
Iscritto dal: Dec 2003
Messaggi: 4907
Quote:
Originariamente inviato da MarcoGG Guarda i messaggi
La gestione degli errori in questo caso è superflua. Basta, come sempre, usare la libreria giusta. Aggiungi al progetto un Rif. alla libreria "Microsoft Scripting Runtime", dopodichè giocare con cartelle e files è facile :
Per curiosità (di VB6 ne so veramente poco), che vantaggio c'è nell'usare la MSR invece di funzioni built-in come Dir e MkDir?
||ElChE||88 è offline   Rispondi citando il messaggio o parte di esso
Old 02-09-2009, 14:43   #8
MarcoGG
Senior Member
 
L'Avatar di MarcoGG
 
Iscritto dal: Dec 2004
Messaggi: 3210
Quote:
Originariamente inviato da ||ElChE||88 Guarda i messaggi
Per curiosità (di VB6 ne so veramente poco), che vantaggio c'è nell'usare la MSR invece di funzioni built-in come Dir e MkDir?
Finchè si fanno cose semplici, Dir e MkDir non hanno nessun particolare svantaggio. Il codice precedente può essere riscritto così :

Codice:
    Dim percorsoDir As String
    percorsoDir = "C:\immagini"

    If Dir(percorsoDir, vbDirectory) <> "" Then
        MsgBox "Directory già esistente."
    Else
        MkDir percorsoDir
        MsgBox "Directory creata."
    End If
first_register non è riuscito ad usarlo perchè ha omesso il parametro vbDirectory.
Inoltre Dir e MkDir sono comandi base di VB6 e non necessitano di riferimenti esterni.

Se invece vogliamo un accesso al File System più agile e completo, molto meglio il Microsoft Scripting Runtime. La dll del Rif è : C:\WINDOWS\system32\scrrun.dll. Personalmente non ho mai avuto problemi.
Inoltre si possono usare molti altri metodi interessanti ( .CopyFile, .CopyFolder, .MoveFile, .MoveFolder, .DeleteFile, .DeleteFolder, .DriveExists, la collection .Drives, metodi per gli stream, e molti altri... ).
Insomma, ci si avvicina già di più alla completezza dello spacename My.Computer.FileSystem. di VB.NET...
MarcoGG è offline   Rispondi citando il messaggio o parte di esso
Old 02-09-2009, 15:43   #9
||ElChE||88
Senior Member
 
Iscritto dal: Dec 2003
Messaggi: 4907
Grazie mille.
||ElChE||88 è offline   Rispondi citando il messaggio o parte di esso
Old 02-09-2009, 20:27   #10
first register
Member
 
L'Avatar di first register
 
Iscritto dal: Oct 2008
Messaggi: 326
si esatto, per verificare l'esistenza della directory ho utilizzato questo codice:

Quote:
If Dir(App.Path & "\app\img\", vbDirectory) <> "" Then
MsgBox ("ok")
Directory exists, insert your file output code here
Else
MsgBox ("non esiste")
End If
Il file scrrun.dll si trova nella cartella windows32, ma se tento di caricare la libreria con il vb ottengo un messaggio di errore.
La dimensione del file è 168k è corretto ?
first register è offline   Rispondi citando il messaggio o parte di esso
Old 03-09-2009, 08:00   #11
MarcoGG
Senior Member
 
L'Avatar di MarcoGG
 
Iscritto dal: Dec 2004
Messaggi: 3210
Quote:
Originariamente inviato da first register Guarda i messaggi
Il file scrrun.dll si trova nella cartella windows32, ma se tento di caricare la libreria con il vb ottengo un messaggio di errore.
La dimensione del file è 168k è corretto ?
Cosa significa "caricare" ?
La devi semplicemente referenziare da menu Progetto / Riferimenti...
MarcoGG è offline   Rispondi citando il messaggio o parte di esso
Old 03-09-2009, 08:57   #12
first register
Member
 
L'Avatar di first register
 
Iscritto dal: Oct 2008
Messaggi: 326
Quote:
Originariamente inviato da MarcoGG Guarda i messaggi
Cosa significa "caricare" ?
La devi semplicemente referenziare da menu Progetto / Riferimenti...
Nella lista dei componenti non è presente la voce Microsoft Scripting Runtime, la dll scrrun.dll può essere selezionata manualmente all'interno della directory windows32 ma VB genera un messaggio di errore.
first register è offline   Rispondi citando il messaggio o parte di esso
Old 03-09-2009, 11:07   #13
MarcoGG
Senior Member
 
L'Avatar di MarcoGG
 
Iscritto dal: Dec 2004
Messaggi: 3210
Quote:
Originariamente inviato da first register Guarda i messaggi
Nella lista dei componenti non è presente la voce Microsoft Scripting Runtime, la dll scrrun.dll può essere selezionata manualmente all'interno della directory windows32 ma VB genera un messaggio di errore.
E il messaggio sarebbe ?
Usi Vista per caso ?
MarcoGG è offline   Rispondi citando il messaggio o parte di esso
Old 03-09-2009, 17:36   #14
first register
Member
 
L'Avatar di first register
 
Iscritto dal: Oct 2008
Messaggi: 326



La voce MS Runtime inizialmente non è presente nell'elenco, ma navigando su windows32 è possibile inserire la voce in elenco. Cliccando su OK, ottengo il messaggio di errore nell'immagine.

Uso XP.
first register è offline   Rispondi citando il messaggio o parte di esso
Old 03-09-2009, 20:03   #15
MarcoGG
Senior Member
 
L'Avatar di MarcoGG
 
Iscritto dal: Dec 2004
Messaggi: 3210
Quote:
Originariamente inviato da first register Guarda i messaggi



La voce MS Runtime inizialmente non è presente nell'elenco, ma navigando su windows32 è possibile inserire la voce in elenco. Cliccando su OK, ottengo il messaggio di errore nell'immagine.

Uso XP.
Ma per forza !
Quella è la finestra dei controlli aggiuntivi !

Microsoft Scripting Runtime va semplicemente referenziato aprendo la finestra dei Riferimenti : Menu Progetto / Riferimenti, NON Menu Progetto / Componenti.

scrrun.dll è una libreria di funzioni, non un controllo. Se tenti di caricare la libreria come controllo WinForm, ovvio che da errore.
MarcoGG è offline   Rispondi citando il messaggio o parte di esso
Old 03-09-2009, 21:05   #16
first register
Member
 
L'Avatar di first register
 
Iscritto dal: Oct 2008
Messaggi: 326
errore mio
Non ricevo più errori, sostituirò DIR con le funzioni della libreria anche perchè mette a disposizione più possibilità di controllo su file e cartelle.

grazie ancora.
first register è offline   Rispondi citando il messaggio o parte di esso
 Rispondi


Ecovacs Goat O1200 LiDAR Pro: la prova del robot tagliaerba con tagliabordi integrato Ecovacs Goat O1200 LiDAR Pro: la prova del robot...
Recensione Samsung Galaxy S26+: sfida l'Ultra, ma ha senso di esistere? Recensione Samsung Galaxy S26+: sfida l'Ultra, m...
Zeekr X e 7X provate: prezzi, autonomia fino a 615 km e ricarica in 13 minuti Zeekr X e 7X provate: prezzi, autonomia fino a 6...
Marathon: arriva il Fortnite hardcore Marathon: arriva il Fortnite hardcore
HP Imagine 2026: abbiamo visto HP IQ all’opera, ecco cosa può (e non può) fare HP Imagine 2026: abbiamo visto HP IQ all’opera, ...
Le 10 migliori offerte Amazon di Pasqua:...
Nuove fotografie dagli astronauti di Art...
La toilette della capsula Orion Integrit...
GeForce NOW: ecco tutte le novità in arr...
Il Realme 16 5G debutta sul mercato glob...
HONOR svela tre nuovi tablet: il più int...
Tineco Floor One S9 Master: aspira e pul...
Vivo X300 Ultra, il lancio globale è ini...
Offerte robot aspirapolvere Amazon: ECOV...
L'AI genera codice in 8 minuti e i senio...
Ring Intercom Audio a 44,99€ su Amazon: ...
Apple iPhone 16 crolla a 689€: ecco perc...
Google Pixel 9 a 449,90€ con caricatore ...
Ecco la top 7 delle offerte Amazon, aggi...
Ex ingegnere ammette il sabotaggio: migl...
Chromium
GPU-Z
OCCT
LibreOffice Portable
Opera One Portable
Opera One 106
CCleaner Portable
CCleaner Standard
Cpu-Z
Driver NVIDIA GeForce 546.65 WHQL
SmartFTP
Trillian
Google Chrome Portable
Google Chrome 120
VirtualBox
Tutti gli articoli Tutte le news Tutti i download

Strumenti

Regole
Non Puoi aprire nuove discussioni
Non Puoi rispondere ai messaggi
Non Puoi allegare file
Non Puoi modificare i tuoi messaggi

Il codice vB è On
Le Faccine sono On
Il codice [IMG] è On
Il codice HTML è Off
Vai al Forum


Tutti gli orari sono GMT +1. Ora sono le: 21:32.


Powered by vBulletin® Version 3.6.4
Copyright ©2000 - 2026, Jelsoft Enterprises Ltd.
Served by www3v