DeleteFile funzt net oO
Übersicht

MarekBetreff: DeleteFile funzt net oO |
![]() Antworten mit Zitat ![]() |
|
---|---|---|
Problem bei folgendem code, die erstellten dateien werden nicht gelöscht...
woran könnte das liegen? Code: [AUSKLAPPEN] Print AvailVidMem()
createspech("Latein") createspech("Englisch") createlesson("Latein",1) createlesson("Latein",2) createlesson("Latein",99) createlesson("Englisch",1) createword("Latein",1,"xD","Hallo","muhahaha","gg") createword("Englisch",1,"xD","Hallo","muhahaha","gg") WaitKey deletespech("Latein") Print AvailVidMem() WaitKey End ;***********************CreateSpech************************ ;__________________________________________________________ ;die Funktion erstellt eine neue Sprache im Register. * ;wird 0 zurückgeliefert, so existiert die Sprache bereits.* ;wird 1 zurückgeliefert, wurde die Sprache erstellt. * ;__________________________________________________________ Function CreateSpech(spech$) file=OpenFile("data\sprachregister.dat") While Not Eof(file) stream$=ReadString$(file) If stream$=spech$ Then exist=1 EndIf Wend If exist=1 Then Return 0 EndIf If exist=0 Then WriteString(file,spech$) CreateDir("Sprachen\"+spech$) Return 1 EndIf CloseFile file End Function ;***********************DeleteSpech************************ ;__________________________________________________________ ;die Funktion löscht eine Sprache aus dem Register. * ;__________________________________________________________ Function DeleteSpech(spech$) dir=ReadDir("Sprachen\"+spech$+"\") Repeat file$=NextFile$(dir) Print file$ If file$="" Then Goto secondpart EndIf DeleteFile("Sprachen\"+spech$+"\"+file$) Forever .secondpart CloseDir dir DeleteDir "Sprachen\"+spech$+"\" file=OpenFile("data\sprachregister.dat") temp=WriteFile("data\sreg_temp.dat") While Not Eof(file) stream$=ReadString$(file) If Not stream$=spech$ Then WriteString(temp,stream$) EndIf Wend CloseFile file CloseFile temp CopyFile "data\sreg_temp.dat","data\sprachregister.dat" DeleteFile "data\sreg_temp.dat" End Function ;***********************CreateLesson*********************** ;__________________________________________________________ ;die Funktion erstellt eine neue Lektion im Register. * ;wird 0 zurückgeliefert, so existiert die Lektion bereits.* ;wird 1 zurückgeliefert, wurde die Lektion erstellt. * ;die Lektion wird mit 0 Vokabeln abgespeichert. * ;__________________________________________________________ Function CreateLesson(spech$,lesson) If FileType("Sprachen\"+spech$+"\"+lesson+".lsn")=1 Then Return 0 Else file=WriteFile("Sprachen\"+spech$+"\"+lesson+".lsn") WriteByte(file,0) Return 1 CloseFile file EndIf End Function ;************************CreateWord************************ ;__________________________________________________________ ;die Funktion erstellt ein neues Wort im Register. * ;wird 0 zurückgeliefert, so existiert das Wort bereits. * ;wird 1 zurückgeliefert, wurde das Wort erstellt. * ;wird 2 zurückgeliefert, wurde keine Bedeutung angegeben. * ;__________________________________________________________ Function CreateWord(spech$,lesson,word$,meaning1$,meaning2$,meaning3$) If meaning1$=""Then Return 2 Goto fende EndIf If meaning3$="" Then If meaning2$="" Then meanings=1 Else meanings=2 EndIf Else meanings=3 EndIf file=OpenFile("Sprachen\"+spech$+"\"+lesson+".lsn") temp=WriteFile("Sprachen\"+spech$+"\"+lesson+"_temp.lsn") count=ReadByte(file) WriteByte(temp,count+1) variable=0 If Not count=0 Then For x=1 To count filemeanings=ReadByte(file) WriteByte(temp,filemeanings) fileword$=ReadString$(file) WriteByte(temp,fileword$) If fileword$=word$ Then If filemeanings=meanings Then If meanings=1 Then filemeaning1$=ReadString$(file) If filemeaning1$=meaning1$ Then Return 0 variable=1 Goto fende Else WriteString(temp,filemeaning1$) EndIf ElseIf meanings=2 filemeaning1$=ReadString$(file) filemeaning2$=ReadString$(file) If filemeaning1$=meaning1$ And filemeaning2$=meaning2$ Then Return 0 variable=1 Goto fende Else WriteString(temp,filemeaning1$) WriteString(temp,filemeaning2$) EndIf ElseIf meanings=3 filemeaning1$=ReadString$(file) filemeaning2$=ReadString$(file) filemeaning3$=ReadString$(file) If filemeaning1$=meaning1$ And filemeaning2$=meaning2$ And filemeaning3$=meaning3$ Then Return 0 variable=1 Goto fende Else WriteString(temp,filemeaning1$) WriteString(temp,filemeaning2$) WriteString(temp,filemeaning3$) EndIf EndIf Else If filemeanings=1 Then WriteString(temp,ReadString$(file)) ElseIf filemeanings=2 Then WriteString(temp,ReadString$(file)) WriteString(temp,ReadString$(file)) ElseIf filemeanings=3 Then WriteString(temp,ReadString$(file)) WriteString(temp,ReadString$(file)) WriteString(temp,ReadString$(file)) EndIf EndIf Else If filemeanings=1 Then WriteString(temp,ReadString$(file)) ElseIf filemeanings=2 Then WriteString(temp,ReadString$(file)) WriteString(temp,ReadString$(file)) ElseIf filemeanings=3 Then WriteString(temp,ReadString$(file)) WriteString(temp,ReadString$(file)) WriteString(temp,ReadString$(file)) EndIf EndIf Next WriteByte(temp,meanings) WriteString(temp,word$) If meanings=1 Then WriteString(temp,meaning1$) ElseIf meanings=2 Then WriteString(temp,meaning1$) WriteString(temp,meaning2$) ElseIf meanings=3 Then WriteString(temp,meaning1$) WriteString(temp,meaning2$) WriteString(temp,meaning3$) EndIf Else WriteByte(temp,meanings) WriteString(temp,word$) If meanings=1 Then WriteString(temp,meaning1$) ElseIf meanings=2 Then WriteString(temp,meaning1$) WriteString(temp,meaning2$) ElseIf meanings=3 Then WriteString(temp,meaning1$) WriteString(temp,meaning2$) WriteString(temp,meaning3$) EndIf EndIf .fende CloseFile file CloseFile temp If variable=0 Then CopyFile "Sprachen\"+spech$+"\"+lesson+"_temp.lsn","Sprachen\"+spech$+"\"+lesson+".lsn" EndIf DeleteFile("Sprachen\"+spech$+"\"+lesson+"_temp.lsn") End Function |
||
![]() |
Christoph |
![]() Antworten mit Zitat ![]() |
---|---|---|
Überprüfe mal folgendes:
-kommt das Programm überhaupt an die Stelle, an der Deletefile steht? ->am besten ein runtimeerror davor einbauen, falls das Prog "abstürzt" ist es dieser Punkt schon mal nicht -wird die Datei von irgendjemandem benutzt? ->von anderen Anwendungen? ->von dir? -richtiger Dateiname mit richtigem Pfad (falls nötig)? |
||
Marek |
![]() Antworten mit Zitat ![]() |
|
---|---|---|
Das Programm wurde mit B3d geproggt, daher kein runtimeerror möglich. Es funtzt auch, die Datei wird nur vom Programm selbst genutzt. Nur dass ich eigentlich immer Closefile benutzt habe(min 20-mal überprüft), trotzdem werden die Dateien nicht gelöscht, so wie sie es sollten... | ||
![]() |
StepTiger |
![]() Antworten mit Zitat ![]() |
---|---|---|
Warum war kein RuntimeError möglich?
B3D ist schon was feines, heh? nein, du lässt sie dauerhaft offen, da du schon vorher return machst, was die funktion automatisch beendet, aber egal. |
||
Noch gestern standen wir am Abgrund, doch heute sind wir schon einen Schritt weiter.
Computer: AMD Sempron 3000+; ATI Radeon 9800 Pro; 512 MB DDR RAM 400Mhz; Asus E7N8X-E Deluxe; Samsung 200GB HD 5.4ns acces t Gewinner: BP Code Compo #2 Π=3.141592653589793238...<--- und das aus dem kopf ![]() Seit der Earthlings-Diskussion überzeugter Fleisch(fr)esser. |
Marek |
![]() Antworten mit Zitat ![]() |
|
---|---|---|
ah, danke xD | ||
Übersicht


Powered by phpBB © 2001 - 2006, phpBB Group