Die Routinen schreiben Daten in ein Dokument.
Sollen Daten über das Dateiende hinaus geschrieben werten, so werden bei SetAt die Daten abgeschnitten, bei SetAtGrow die Dateilänge vergrößert.
BOOL SetAt
(DWORD dwOffset, DWORD &dwLaenge, void* lpBuffer);
BOOL SetAtGrow
(DWORD dwOffset, DWORD &dwLaenge, void* lpBuffer);
dwOffset | Offset innerhalb der Dokumenten-Datei, wohin die Daten geschrieben werden sollen. | |
dwLaenge | Länge der Daten.
Geht bei SetAt der Bereich über das Dateiende hinaus, so wird bis zum Dateiende geschrieben und in diesem Parameter die tatsächlich geschriebene Länge zurückgegeben. | |
lpBuffer | Puffer, in dem die Daten stehen. |
TRUE | Es wurden Daten geschrieben. | |
FALSE | Fehler in Aufrufparametern. |
Die Routine SetAtGrow sollte nicht für kontinuiertliches Schreiben verwendet werden. Da bei jedem Aufruf ein neuer Speicherbereich allokiert wird, führt er zu Stückelung der Puffer.
Besser ist, die Dateilänge mit SetLength auf einmal hochzusetzen.
Die Routinen veranlassen keine Aktualisierung der Fenster, da ja sofort noch weitere Aufrufe folgen könnten (CPU-Belastung).
Wenn Sie eine Aktualisierung wünschen, müssen Sie den Aufruf UpdateAllViews(NULL) abgeben.