Directory Scannen

Status
Niet open voor verdere reacties.

Jayster2

Gebruiker
Lid geworden
3 nov 2008
Berichten
39
:confused:Hallo,

Ik ben met een simpel programma bezig dat een textfile schrijft voor een bestand aan de hand van wat variablen zodat ik dat zelf niet hoef te doen elke keer. Het zou leuk zijn als het programmatje in een bepaalde directory naar meest recente file scanned van een bepaald type ( *.vtf ), vervolgens omzet in een string en daar de fileextensie vanaf haalt.

Dus ik klik op een knop in het programma, hij scanned een directory naar de meest recente .vtf en returned het als string zonder de fileextensie erachter.

Reacties waardeer ik altijd, maar ' kijk in die en die functie ' werkt denk ik niet omdat ik een noob ben =[ En bijna alle tutorial/sample codes zijn voor versie 6... :S
 
Laatst bewerkt:
Dus als ik het goed begrijp moet je programma een directory scannen en alleen de meest recente file van het type vtf (valve texture file?) vinden en die returnen zonder extentie?

Probeer dit:

Code:
Private Sub Button2_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button2.Click

        Dim Directory As DirectoryInfo = New DirectoryInfo("D:\Steam\steamapps\username\half-life 2\hl2\materials\models\shadertest")
        DirectoryInfoAttributes(Directory)
        MsgBox(Path.GetFileNameWithoutExtension(recentFile.Name))

End Sub

Code:
Public recentFile As FileInfo = Nothing

    Public Sub DirectoryInfoAttributes(ByVal searchDirectoryInfo As DirectoryInfo)
        For Each directoryInfo As DirectoryInfo In searchDirectoryInfo.GetDirectories
            DirectoryInfoAttributes(directoryInfo)
        Next

        For Each fileInfo As FileInfo In searchDirectoryInfo.GetFiles("*.vtf")
            If (Not recentFile Is Nothing) Then
                If (fileInfo.LastWriteTime > recentFile.LastWriteTime) Then
                    recentFile = fileInfo
                End If
            Else
                recentFile = fileInfo
            End If
        Next
End Sub

Dit werkt in ieder geval goed hier. :)
 
Laatst bewerkt:
Werkt. Thanks. Heb je toegevoegd op steam :) ben Source mapper.

:thumb:
 
Hij crasht nu als hij geen .vtf in de folder kan vinden :D Hoe verkom ik dat ?
 
Vervang de code onder de button met dit:

Code:
        Dim fbd As New FolderBrowserDialog
        If fbd.ShowDialog = DialogResult.OK Then

            Dim Directory As New DirectoryInfo(fbd.SelectedPath)
            DirectoryInfoAttributes(Directory)
            If Not recentFile Is Nothing Then
                MsgBox(Path.GetFileNameWithoutExtension(recentFile.Name))
                recentFile = Nothing
            End If
        End If


De twee bovenste regels zijn natuurlijk optioneel, maar met een FolderBrowsingDialog gaat het testen net wat sneller. :)
 
Status
Niet open voor verdere reacties.
Terug
Bovenaan Onderaan