Vorheriges Thema anzeigen :: Nächstes Thema anzeigen |
Autor |
Nachricht |
Keks
Anmeldungsdatum: 03.11.2007 Beiträge: 156 Wohnort: Dose
|
Verfasst am: 16.12.2007, 16:09 Titel: Datei bereits geöffnet |
|
|
Bei der letzten Zeile kommt der Error "Datei bereits geöffnet."
Und das, obwohl CACHE.DAT ordnungsgemäß geschlossen wurde.
Ich weiß nicht mehr weiter, habe da schon alles überprüft.
Danke für Hilfe.
Code: | OPEN "I", #14, "users4.DAT"
DO
INPUT #14, user$
zaehler = zaehler + 1
LOOP UNTIL EOF(14)
CLOSE #14
IF zaehler => 5 THEN
PRINT "Bereits 5 Accounts!"
SLEEP 2
GOTO 30 'accounts
END IF
INPUT "Accountname: ", add$
CLS
OPEN "I", #15, "users4.DAT"
DO
INPUT #15, user$
IF user$ = add$ THEN
PRINT add$; " bereits vorhanden!"
SLEEP 2
CLOSE #15
GOTO 30 'accounts
END IF
LOOP UNTIL EOF(15)
CLOSE #15
OPEN "I", #16, "users4.DAT"
OPEN "O", #17, "CACHE.DAT"
DO
INPUT #16, user$
WRITE #17, user$
LOOP UNTIL EOF(16)
WRITE #17, add$
CLOSE #17
CLOSE #16
NAME "CACHE.DAT" AS "users4.DAT" |
Mit dem Programm kann man zu einer Userliste einen weiteren Benutzer hinzufügen. Dabei wird überprüft, ob dieser bereits existiert oder es bereits 5 gibt. |
|
Nach oben |
|
 |
Mao
Anmeldungsdatum: 25.09.2005 Beiträge: 4409 Wohnort: /dev/hda1
|
Verfasst am: 16.12.2007, 16:22 Titel: |
|
|
Evtl. hast du eine Dateinummer bereits mal verwendet aber mit CLOSE noch nicht wieder freigegeben? (Muss nicht einmal die selbe Datei sein.)
((Bin mir atm jedoch nicht sicher, ob QB dafür evtl. eine extra Fehlermeldung hatte.)) _________________ Eine handvoll Glück reicht nie für zwei.
--
 |
|
Nach oben |
|
 |
Keks
Anmeldungsdatum: 03.11.2007 Beiträge: 156 Wohnort: Dose
|
Verfasst am: 16.12.2007, 16:32 Titel: |
|
|
Ich habe alle Dateinummern davor noch mal bearbeitet, es wird immer eine andere genommen. Immer wenn eine Datei geöffnet wurde, wurde sie auch so schnell wie möglich wieder geschlossen.
Ist übrigens das erste Mal, dass CACHE.DAT geöffnet wurde (also in den zeilen dadrüber passiert es das erste Mal) |
|
Nach oben |
|
 |
Mao
Anmeldungsdatum: 25.09.2005 Beiträge: 4409 Wohnort: /dev/hda1
|
Verfasst am: 16.12.2007, 17:19 Titel: |
|
|
(Ich würde an deiner Stelle trotzdem immer FreeFile und den "normalen" Syntax von Open nehmen. --> Resistenter wenn es um Erweiterungen des Programms geht und übersichtlicher noch dazu.) _________________ Eine handvoll Glück reicht nie für zwei.
--
 |
|
Nach oben |
|
 |
Keks
Anmeldungsdatum: 03.11.2007 Beiträge: 156 Wohnort: Dose
|
Verfasst am: 16.12.2007, 17:29 Titel: |
|
|
Äh was heißt das? |
|
Nach oben |
|
 |
Bimi
Anmeldungsdatum: 03.12.2007 Beiträge: 66
|
Verfasst am: 20.12.2007, 10:58 Titel: |
|
|
EDIT:
Asche auf mein Haupt....hier geht es ja im QB, nicht FB....meine Antwort ist also Bedeutungslos....
Ich habe das dumpfe Gefühl das die File-Operationen von FB nicht so ganz Bugfree sind. Ich hatte ebenfalls mehrfach das Problem und bin daher sehr schenll auf die crt Funktionen (C-like file operations) ausgewichen und seitdem ist Ruhe. _________________ Rechtbehelf:
Rechschreibverfehlungen, Vergehen an der Deutschen Sprache sowie Stabwechselverbuchselungen unterliegen dem Urheberrecht, sind voll beabsichtigt und fördern das aufmerksame Lesen. |
|
Nach oben |
|
 |
ZaPPa
Anmeldungsdatum: 29.09.2004 Beiträge: 98 Wohnort: Wuppertal
|
Verfasst am: 29.12.2007, 17:36 Titel: |
|
|
bei der letzten zeile kommt der fehler?
ergo:
Code: | NAME "CACHE.DAT" AS "users4.DAT"
|
?
im moment hast du 2 dateien.... "cache.dat" UND "users4.dat".....
du solltest erstmal die ursprüngliche "users4.dat" in was anderes umbenennen, bevor du "cache.dat" in "users4.dat" umbenennst....
oder hab ich jetz völlig ins klo gegriffen? bin ausser übung xD
versuchs mit
Code: | NAME "users4.DAT" AS "users4.tmp"
NAME "CACHE.DAT" AS "users4.DAT"
|
... oder so  _________________ --- ICH BIN DAGEGEN! ---
Jet_X hat Folgendes geschrieben: | Es währe mir sehr geholfen wenn ihr mir Helfen könnt ! |
And remember: Schwund is immer! |
|
Nach oben |
|
 |
Flo aka kleiner_hacker
Anmeldungsdatum: 23.06.2006 Beiträge: 1210
|
Verfasst am: 08.01.2008, 18:26 Titel: |
|
|
*glühbirne über meinem kopf schweb*
also erstmal: du musst die zieldatei löschen, mittels kill dateiname$
und: ich denke es ginge einfacher, wenn du die accounts-datei mit open "dateiname" for append as #nummer% öffnest, da hängst du gleich hinten an, ohne temporäre datei _________________ MFG
Flo
Satoru Iwata: Wer Spaß am Spielen hat, fragt nicht nach Grafik.
zum korrekten Verstaendnis meiner Beitraege ist die regelmaessige Wartung des Ironiedetektors unerlaesslich. |
|
Nach oben |
|
 |
|