Delphi-PRAXiS

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Object-Pascal / Delphi-Language (https://www.delphipraxis.net/32-object-pascal-delphi-language/)
-   -   Delphi Ausschnitt aus MMF View ersetzen ? (https://www.delphipraxis.net/24120-ausschnitt-aus-mmf-view-ersetzen.html)

supermuckl 15. Jun 2004 19:36


Ausschnitt aus MMF View ersetzen ?
 
ich habe ein View ( memory mapped file view )
und da will ich nun an bestimmten positionen daten schreiben ( die alten überschreiben falls welche vorhanden )

der code zum reinen kopieren von a nach b kopiert halt von stelle 0 an was ich aber nich will ( ich find keine funktion wo man angeben kann ab welcher pos geschrieben werden soll, wo mit diesen View Handles umgehen kann ?! )

das is der copy code
wo ich ersetzen will durch copy to pos
DataFile ist vom typ Pbyte und das ist der View Pointer vom MMF
packet ist der string den ich schreiben möchte
Delphi-Quellcode:

iLen := SizeOF(packet);
StrLCopy(Pchar(DataFile),pchar(packet),iLen);
die funktion sollte natürlich schnell schreiben können und net erst eine 2 GB große datei durchwurschteln sollen ( dann wäre MMF ja für die katz )

fiasko 15. Jun 2004 20:00

Re: Ausschnitt aus MMF View ersetzen ?
 
Irgendwie so?!

Delphi-Quellcode:
StrLCopy(PChar(Ptr(integer(DataFile)+offset)),pchar(packet),iLen);
(die Adresse wo DataFile hinzeigt als Integer, Verschiebung um offset drauf und daraus wieder einen Zeiger und den zu'nem PChar)

supermuckl 15. Jun 2004 20:05

Re: Ausschnitt aus MMF View ersetzen ?
 
hey das is ne coole idee.. lowlevelig aber das hätt ich auch so gemacht wenn ich wüsste das man das so knuffig lösen kann :)

ich teste das gleich aus


Alle Zeitangaben in WEZ +1. Es ist jetzt 16:08 Uhr.

Powered by vBulletin® Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz