Hi,
1. Variablen müssen nicht Global sein, da du sie nicht in Prozeduren benutzt.
2. Die Menu-Abfrage-Routine in eine If-ElseIf-ElseIf-ElseIf-Endif Struktur gepackt. (nicht: If-EndIf,If-Endif usw.)
3.
----->
4.Damit DirectoryEntryName() nicht zwei Mal aufgerufen wird, wird das Ergebnis in TempVar_DirName.s gespeichert
5.
am Anfang, da sonst beim ersten mal kein DirEntry() "ausgewählt" ist.
6.Bei der Umbenennung der Datei fehlt der Pfad!!!
Code: Alles auswählen
RenameFile(TempVar_FileName, "Pic." + TempVar_FileName)
----->
Code: Alles auswählen
RenameFile(var_Ordner + TempVar_FileName, var_Ordner + "Pic." + TempVar_FileName)
Das war's so funzt es. Das nächste mal bitte CodeTags setzten, und Einrücken ist auch sehr hilfreich! HF beim proggen!
(Hier der ganze Code:)
Code: Alles auswählen
;#####################################################
;############### Programm: Quaxi ###############
;#####################################################
;Erstelle die Prozedur die das Programm immer neu zeichnet
Procedure RedrawMyConsole()
;Zeichne nun die Konsole neu mit den neuen Farben
ClearConsole()
;Schreibe nun die Überschrift hin ###################################################
PrintN(" JPEG\JPG Konverter")
PrintN("")
;####################################################################################
EndProcedure
;Öffne zuerst eine neue Konsole
OpenConsole()
;Stelle nun die neue Konsolen Hintergrundfarbe auf Rot und Textfarbe auf Blau
ConsoleColor(6, 4)
;Zeichne nun die Konsole
RedrawMyConsole()
;Directory Variable
var_Ordner.s = "c:\test\" ;;;###Hier Pfad eingeben###;;;
;zB. mit PathRequester()
;Erstelle nun die Variable in der gesagt wird um welchen Eintrag Typ es sich handelt
var_Eintrag.b = 3
;Erstelle nun die Variable die die Dateianzahl speichert
var_Anzahl = 0
;Deklariere Antwort Variable
var_Antwort.s
;Deklariere nun die Variable die den Fortschritt speichert
var_Status.f = 0.0
;Schreibe nun bitte warten hin
PrintN("Bitte warten. Daten werden eingelesen...")
;Aktualisiere das Verzeichnis
ExamineDirectory(0, var_Ordner, "*.jp*")
;Beginne nun die Schleife welche die Anzahl der Bilder einliest
Repeat
;Abfrage um welchen Eintrag es sich handelt
var_Eintrag = NextDirectoryEntry()
;Festellen um welchen Typ es sich handelt
If var_Eintrag = 1
;Aktualisiere die Anzahl
var_Anzahl = var_Anzahl + 1
EndIf
Until var_Eintrag = 0
GoShowMenu:
;Lösche nun wieder den Konsolen Inhalt
RedrawMyConsole()
;Schreibe nun die Anzahl der gefundenen Bild Dateien hin
PrintN("Es wurden " + Str(var_Anzahl) + " Bilder gefunden.")
PrintN("")
;Abfrage ob 0 gegeben ist
If var_Anzahl = 0
Print("Es kann nichts konvertiert werden. ")
var_Antwort = Input()
;Programm beenden
End
EndIf
;Stelle nun Frage
PrintN("Was moechten sie nun tun?")
PrintN("1 --> Konvertieren")
PrintN("2 --> Reparieren")
PrintN("3 --> Beenden")
Print("Ihre Wahl: ")
;Frage nun die Antwort ab
var_Antwort = Input()
;Entferne alle Leerzeichen
var_Antwort = Trim(var_Antwort)
;Frage nun die Antwort ab
;###################
;##### Bei 3 #######
If var_Antwort = "3"
;Schreibe Verabschiedung
PrintN("")
PrintN("")
Print("Bye...")
;Warte 1 Sekunden
Delay(1000)
;Beende Programm
End
;#################
;##### Bei 1 #####
ElseIf var_Antwort = "1"
;Aktualisiere das Verzeichnis
ExamineDirectory(0, var_Ordner, "*.jp*")
;Temporäre Variable für DirectoryEntryName()
TempVar_FileName.s = ""
;Starte Schleife
For TempVar_Fortschritt = 1 To var_Anzahl
;Springe zur nächsten Datei
NextDirectoryEntry()
;Bennene nun die Datei um
TempVar_FileName = DirectoryEntryName()
RenameFile(var_Ordner + TempVar_FileName, var_Ordner + "Pic." + TempVar_FileName)
;Zeichne die Konsole neu
RedrawMyConsole()
;Schreibe den aktuellen Status hin
PrintN("--------------------------------------------------------------------------")
PrintN("-- Aktueller Status: " + StrF((100/var_Anzahl) * TempVar_Fortschritt, 0) + "%")
PrintN("-- Aktuelle Datei: " + DirectoryEntryName())
Next
;Schlusstext schreiben
PrintN("")
Print("Konvertierung zu 100% abgeschlossen! Beenden mit Return. ")
;Return abwarten
var_Antwort = Input()
;Programm beenden
End
EndIf
;###################
;### Bei blödsinn ##
;###################
Goto GoShowMenu
mfG
Basti
enjoy life... while you can!