Toon posts:

[Win API and C]Hoe doe ik een seek

Pagina: 1
Acties:
  • 34 views sinds 30-01-2008

Verwijderd

Topicstarter
Ben bezig met een klein windows programma in C dat een file moet lezen. De file is 'plat' en bevat records.
Ik gebruik nu CreateFile en ReadFile, maar heb geen idee hoe ik naar een bepaalde positie moet gaan. Moet ik de file overlapped creeren om te kunnen seeken? Of is er een andere weg?
Kan uiteraard altijd weer terug naar fopen en fseek, maar dat wilde ik dit keer niet.

Gezocht met google en hier op het forum (4 hits (of zo) op seek and handle)

  • Infinitive
  • Registratie: Maart 2001
  • Laatst online: 25-09-2023
Je zou eens kunnen kijken naar memory mapped IO. Ik weet dat het er is in de win api, maar heb het zelf nog nooit gebruikt, dus wat betreft de details kan ik je niet verder helpen.

Het idee van memory mapped IO is dat je de file als een stuk geheugen ziet. Dat maakt seeken natuurlijk erg makkelijk, gewoon op het juiste overeenkomende geheugenadres kijken. Het is bovendien efficient, doordat je operating system bepaald welke gedeelten van de file naar het geheugen moeten en weer terug. Kortom, een handige abstractie (denk ik).

putStr $ map (x -> chr $ round $ 21/2 * x^3 - 92 * x^2 + 503/2 * x - 105) [1..4]


  • SWfreak
  • Registratie: Juni 2001
  • Niet online
SetFilePointer
Overlapped is niet nodig...

Verwijderd

Topicstarter
Je moet er maar op komen 8)7 Zal er eens naar kijken

  • .oisyn
  • Registratie: September 2000
  • Laatst online: 22-05 23:07

.oisyn

Moderator Devschuur®

Demotivational Speaker

volgende keer wat beter in de docs kijken, de functies zijn immers mooi ingedeeld op categorie

Give a man a game and he'll have fun for a day. Teach a man to make games and he'll never have fun again.


Dit topic is gesloten.