Den Inhalt des Eingabefeldes als Datei speichern


Wenn wir den Text des Editors speichern wollen, dann machen wir im Prinzip alles rückwärts. Zuerst öffnen wir die Datei natürlich wieder, fordern Speicher an und holen uns die Adresse zu unserem Speicher. So weit, so gut.
Nun können wir gleich zwei Fliegen mit einer Klappe schlagen: die Nachricht "WM_GETTEXT" liefert uns als Rückgabewert die Anzahl der gelesenen Bytes (= Zeichen), und sie schreibt uns die Daten auch gleich noch in den Puffer:

{ zu schreibende Bytes ermitteln }
SizeReadWrite := SendMessage(Edit, WM_GETTEXT, MEMSIZE-1, Integer(pMemory));
{ Datei schreiben } WriteFile(hFile, pMemory^, SizeReadWrite, SizeReadWrite, nil);

Selbstverständlich müssen wir auch hier wieder aufräumen, d.h. die Datei schließen und den benutzten Speicher freigeben.