| |
|
|
H.Brill | Hallo Frank, Ich wollte mal wissen, wie die Funktionen WriteFileQuick und ReadFileQuick arbeiten.
Ich will die Spaltendaten, die man mit GetColumnUpdate bekommt, von mehreren Listviews in un einzige File speichern, um nicht soviele File zu haben.
Nun hab ichs mal mit den Funktionen @BlockRead und Blockwrite von XProfan versucht. Aber irgendwie speichert es mir die Daten nicht richtig und verhaut mir beim Wiedereinlesen meine LVs.
Hast du da nen Tip ? |
|
|
| Benutze XPROFAN X3 + FREEPROFAN Wir sind die XProfaner. Sie werden von uns assimiliert. Widerstand ist zwecklos! Wir werden alle ihre Funktionen und Algorithmen den unseren hinzufügen.
Was die Borg können, können wir schon lange. | 08.02.2005 ▲ |
|
|
|
|
Frank Abbing | Hi,
du kannst die Daten mehrerer Listviews hintereinander im Speicher ablegen und dann mit einem WriteFileQuick() speichern. Aber die Arbeitsweise der Funktionen ist auch kein Geheimnis. Sind drei APIs: CreateFile() - WriteFile(), bzw. ReadFile() - CloseHandle() |
|
|
| |
|
|
|
H.Brill | Danke, bin schon am Probieren. Dann mache ich per meine 5 LVs einen grande Bereich# (5 x 768 = 3840) und einen kleinen mit 768. Nun muß ich mal sehen, wie ich dann in meiner WhileLoop - Schleife die Daten richtig reinkopiere. Habs mal mit Arrays von Bereichen probiert, aber da kann wahrscheinlich Read/Write- FileQuick nicht umgehen.
WriteFileQuick(addr(cf$), bereich2#[], 0, 3840) |
|
|
| Benutze XPROFAN X3 + FREEPROFAN Wir sind die XProfaner. Sie werden von uns assimiliert. Widerstand ist zwecklos! Wir werden alle ihre Funktionen und Algorithmen den unseren hinzufügen.
Was die Borg können, können wir schon lange. | 08.02.2005 ▲ |
|
|
|
|
Frank Abbing | Hi,
doch, die Funktionen können mit jedem Speicher umgehen, Nur mußt du halt darauf achten, das alles richtig hintereinander geschrieben wird. Ich selber würde nur Bereiche verwenden und die API CopyMemory() oder MoveMemory() aus der Import Library. |
|
|
| |
|
|
|
H.Brill | Hallo Frank, Habs jetzt auch mit @BlockRead und BlockWrite realisiert.
Deine Funktionen kommen übrigens auch mit den Arrays von Bereichen klar, solange man einen Index mitgibt.
Das funktioniert nicht :
WriteFileQuick(addr(cf$), bereich2#[], 0, 3840) 5 x 768 Bytes
aber das :
WriteFileQuick(addr(cf$), bereich2#[1], 0, 768)
Das Problem war, daß ich das Bereichs-Array in einem Rutsch mit WritFileQuick speichern wollte. |
|
|
| Benutze XPROFAN X3 + FREEPROFAN Wir sind die XProfaner. Sie werden von uns assimiliert. Widerstand ist zwecklos! Wir werden alle ihre Funktionen und Algorithmen den unseren hinzufügen.
Was die Borg können, können wir schon lange. | 09.02.2005 ▲ |
|
|
|
|
Frank Abbing | Prima, Heinz! Wenn noch was ist, melde dich. |
|
|
| |
|
|