WriteData liest nicht alles

Für allgemeine Fragen zur Programmierung mit PureBasic.
sim0n
Beiträge: 131
Registriert: 12.09.2004 13:18
Kontaktdaten:

WriteData liest nicht alles

Beitrag von sim0n »

Guten Tach!

Ich habe gerade in Problem in meinem Programm bemerkt.
Wenn ich in einem EditorGadget Text lade, diesen bearbeite und dann wieder speichern will, dann funktioniert das auch.

Einziges Manko daran: Wenn ich noch etwas zu dem Text hinzufüge, dann wird er einwandfrei gespeichert, wenn ich allerdings z.B. am Ende des String etwas entferne, oder etwas Ausschneide wird das nicht übernommen.

Nach dem Speichern enthält die Datei wieder genau den selben Text, der auch vorher schon enthalten war, obwohl ich im Editor was gelöscht habe.

Speichern tu ich mit folgendem Code:

Code: Alles auswählen

OpenFile(0, path)
len = Len(GetGadgetText(Gadgets()\id))
*mem = AllocateMemory(len)
    
If *mem
  PokeS(*mem, GetGadgetText(Gadgets()\id), len)
  WriteData(0, *mem, len)    
EndIf
FreeMemory(*mem)
CloseFile(0)
Kann mir vielleicht jemand verraten, was da faul ist?
Benutzeravatar
#NULL
Beiträge: 2237
Registriert: 20.04.2006 09:50

Beitrag von #NULL »

vielleicht wird ja gar nix gespeichert, und somit danach das unüberschriebene erneut geladen. (sowie der code hier steht, prüfst du ja z.b. das openfile nicht)
my pb stuff..
Bild..jedenfalls war das mal so.
Benutzeravatar
Kiffi
Beiträge: 10711
Registriert: 08.09.2004 08:21
Wohnort: Amphibios 9

Re: WriteData liest nicht alles

Beitrag von Kiffi »

> Speichern tu ich mit folgendem Code:

nimm CreateFile(), dann klappt das auch richtig.

Und, wie #NULL schon erwähnte (auch wenn das mit Deinem momentanen
Problem nichts zu tun hat): Immer abfragen, ob ReadFile(), OpenFile() und
CreateFile() geklappt hat.

Grüße ... Kiffi
a²+b²=mc²
sim0n
Beiträge: 131
Registriert: 12.09.2004 13:18
Kontaktdaten:

Beitrag von sim0n »

Stimmt, die Abfrage hab ich vergessen... :roll:

Hab jetzt Kiffis Rat befolgt und CreateFile() genommen, jetzt funktioniert das auch richtig!

Dankeschön für eure Tipps! :allright:
Benutzeravatar
dige
Beiträge: 1236
Registriert: 08.09.2004 08:53

Beitrag von dige »

Dein Topic ist aber auch Klasse! :wink:
"Papa, ich laufe schneller - dann ist es nicht so weit."
Benutzeravatar
Tafkadasom2k5
Beiträge: 1578
Registriert: 13.08.2005 14:31
Kontaktdaten:

Beitrag von Tafkadasom2k5 »

dige hat geschrieben:Dein Topic ist aber auch Klasse! :wink:
Ich saß da auch gerade mit einem dicken Bild auf der Stirn... aber schmunzeln musste ich auch :lol: :mrgreen:
OpenNetworkConnection() hat geschrieben:Versucht eine Verbindung mit dem angegebenen Server aufzubauen. 'ServerName$' kann eine IP-Adresse oder ein voller Name sein (z.B.: "127.0.0.1" oder "ftp.home.net").
php-freak hat geschrieben:Ich hab die IP von google auch ned rausgefunden!
Benutzeravatar
#NULL
Beiträge: 2237
Registriert: 20.04.2006 09:50

Beitrag von #NULL »

:?:
wieso liegt es denn an OpenFile/CreateFile?
was stimmt denn mit OpenFile nicht?
my pb stuff..
Bild..jedenfalls war das mal so.
Kaeru Gaman
Beiträge: 17389
Registriert: 10.11.2004 03:22

Beitrag von Kaeru Gaman »

wenn in der Datei steht
"Hallo dies ist ein Test... meine Oma ist alt"
und ich benutze OpenFile und schreibe drüber
"Tschö das war kein Test!"
dann enthält die datei danach
"Tschö das war kein Test!.. meine Oma ist alt"
wenn ich CreateFile benutze, enthält sie danach
"Tschö das war kein Test!"
Der Narr denkt er sei ein weiser Mann.
Der Weise weiß, dass er ein Narr ist.
Benutzeravatar
#NULL
Beiträge: 2237
Registriert: 20.04.2006 09:50

Beitrag von #NULL »

wohl wahr :|
my pb stuff..
Bild..jedenfalls war das mal so.
Antworten