Pagina 1 di 2 1 2 ultimoultimo
Visualizzazione dei risultati da 1 a 10 su 16

Discussione: [vb] Verificare file

  1. #1
    Utente di HTML.it L'avatar di Teddy
    Registrato dal
    Dec 2001
    Messaggi
    178

    [vb] Verificare file

    Ciao a tutti!
    In una subroutine devo verificare l'esistenza di un determinato file e di conseguenza agire in un determinato modo se il file c'è oppure no.
    Per verificare l'esistenza del file devo per forza usare il gestore degli errori con il rilascio del codice file non trovato, oppure posso fare altro?
    Grazie!
    Grazie e ciao a tutti

  2. #2
    Utente bannato
    Registrato dal
    Apr 2002
    Messaggi
    546
    Questo serve per verificare se un file esiste:

    On Error Resume Next
    'Apre lo specifico file
    Err = 0
    Open "File" For Input As #1
    'Gestione dell'eventuale errore
    If Err <> 0 Then 'il file non esiste
    MsgBox ("Il file non è stato trovato")
    close #1
    beep
    exit sub
    else
    MsgBox ("Il file è stato trovato.")
    End If


    link
    homepage http://%77%77%77%2e%74%77%6f%72%6b%2e%69%74/
    forum http://%77%77%77%2e%74%77%6f%72%6b%2...um/default.asp

  3. #3
    Utente di HTML.it L'avatar di Teddy
    Registrato dal
    Dec 2001
    Messaggi
    178
    Allora è come dico io ... bisogna usare il gestore di errori!
    Non c'è scampo ...
    Ciao
    Grazie e ciao a tutti

  4. #4
    Utente di HTML.it L'avatar di sebamix
    Registrato dal
    Aug 2000
    Messaggi
    1,028
    Prova questo esempio da ApiGuide
    L'API giusta è comunque PathFileExist

    Note:
    Requires Windows 2000 (or Windows NT 4.0 with Internet Explorer 4.0 or later); Requires Windows 98 (or Windows 95 with Internet Explorer 4.0 or later)

    codice:
    Private Const GCT_INVALID = &H0
    Private Const GCT_LFNCHAR = &H1
    Private Const GCT_SEPARATOR = &H8
    Private Const GCT_SHORTCHAR = &H2
    Private Const GCT_WILD = &H4
    Private Declare Function PathFileExists Lib "shlwapi.dll" Alias "PathFileExistsA" (ByVal pszPath As String) As Long
    Private Declare Function PathFindOnPath Lib "shlwapi.dll" Alias "PathFindOnPathA" (ByVal pszPath As String, ByVal ppszOtherDirs As String) As Boolean
    Private Declare Function PathGetCharType Lib "shlwapi.dll" Alias "PathGetCharTypeA" (ByVal ch As Byte) As Long
    Private Declare Function PathGetDriveNumber Lib "shlwapi.dll" Alias "PathGetDriveNumberA" (ByVal pszPath As String) As Long
    Private Sub Form_Load()
        'KPD-Team 2000
        'URL: http://www.allapi.net/
        'E-Mail: KPDTeam@Allapi.net
        Dim sSave As String, Ret As Long
        'set the form's graphical omde to 'persistent'
        Me.AutoRedraw = True
        'determine whether the file exists
        Me.Print "Does the file 'win.com' exist? " + CStr(CBool(PathFileExists("c:\windows\win.com")))
        'is the file 'autoexec.bat located in one of the directories specified in the PATH environment variable?
        Me.Print "Is the file 'autoexec.bat' located a PATH-directory? " + CStr(CBool(PathFindOnPath("win.com", vbNullString)))
        'check whether a specified character can be used in a path
        Select Case PathGetCharType(Asc("*"))
            Case GCT_INVALID
                sSave = "invalid"
            Case GCT_LFNCHAR
                sSave = "valid in a long file name"
            Case GCT_SHORTCHAR
                sSave = "valid in a short (8.3) file name"
            Case GCT_WILD
                sSave = "a wildcard character"
            Case GCT_SEPARATOR
                sSave = "a path separator"
        End Select
        Me.Print "The character '*' is " + sSave
        'get the corresponding drive number of a file
        Me.Print "The file is located on drive " + Chr$(65 + PathGetDriveNumber("e:\test.txt"))
    End Sub

  5. #5
    Utente di HTML.it L'avatar di Gammino
    Registrato dal
    Nov 2001
    Messaggi
    195
    Scusate ma...

    if dir("C:\Cheneso\bau.zip")="" then
    msgbox "il file non esiste"
    else
    msgbox "il file esiste"
    end if

    o no?

    Ci sono giornate in cui mi sembra che il mondo giri al contrario... poi mi sveglio e mi accorgo che purtroppo gira sempre nella stessa direzione: quella sbagliata!
    (Gammino)

  6. #6
    Utente di HTML.it L'avatar di vonkranz
    Registrato dal
    Sep 2001
    Messaggi
    1,387
    Originariamente inviato da Gammino
    Scusate ma...

    if dir("C:\Cheneso\bau.zip")="" then
    msgbox "il file non esiste"
    else
    msgbox "il file esiste"
    end if

    o no?


    .....semplice, efficace ed estremamente compatta!

    E' da notare come per fare la stessa semplice cosa, 3 persone differenti abbiano trovato 3 differenti soluzioni!
    ..... ah! l'informatica!!!!
    Complimenti a tutti.
    Ciao.
    ...and I miss you...like the deserts miss the rain...

  7. #7
    Utente di HTML.it L'avatar di Gammino
    Registrato dal
    Nov 2001
    Messaggi
    195
    Comunque non credo sia proprio la stessa cosa...

    Se per andare da Milano a Como prendo il diretto non è la stessa cosa che prendere un volo intercontinentale per Cuba (:gren: ) spostarsi a Ginevra e poi a Como...

    Scherzi a parte, ciò che intendo dire è che più si utilizzano le API, più si rischia di creare un programma più sensibile ai "crash" o alle "incompatibilità" (senza nulla togliere alla bravura di chi le usa intensamente! ).

    Ciao!
    Ci sono giornate in cui mi sembra che il mondo giri al contrario... poi mi sveglio e mi accorgo che purtroppo gira sempre nella stessa direzione: quella sbagliata!
    (Gammino)

  8. #8
    Utente di HTML.it L'avatar di vonkranz
    Registrato dal
    Sep 2001
    Messaggi
    1,387
    Concordo pienamente.
    Per "stessa cosa" intendevo il risultato finale che e' il medesimo.
    Ovviamente in termini di efficienza del programma, + semplice e compatta e' la soluzione, migliori sono le prestazioni.
    Purtroppo non e' sempre cosi' facile trovare la via migliore.
    Per quanto riguarda le API in effetti ci sono i pro e i contro.... come in tutte le cose.
    Ciao.
    ...and I miss you...like the deserts miss the rain...

  9. #9
    Utente di HTML.it L'avatar di Teddy
    Registrato dal
    Dec 2001
    Messaggi
    178
    Originariamente inviato da Gammino
    Scusate ma...

    if dir("C:\Cheneso\bau.zip")="" then
    msgbox "il file non esiste"
    else
    msgbox "il file esiste"
    end if

    o no?

    Opto anch'io per questa soluzione ... la più semplice e più compatta!!!

    Grazie Gammino
    Grazie e ciao a tutti

  10. #10
    Utente di HTML.it L'avatar di Gammino
    Registrato dal
    Nov 2001
    Messaggi
    195
    De nada...
    Ci sono giornate in cui mi sembra che il mondo giri al contrario... poi mi sveglio e mi accorgo che purtroppo gira sempre nella stessa direzione: quella sbagliata!
    (Gammino)

Permessi di invio

  • Non puoi inserire discussioni
  • Non puoi inserire repliche
  • Non puoi inserire allegati
  • Non puoi modificare i tuoi messaggi
  •  
Powered by vBulletin® Version 4.2.1
Copyright © 2025 vBulletin Solutions, Inc. All rights reserved.