Windows API

Windows API
2003-08-21T17:37:47+02:00
2005-03-22T12:49:07+01:00
2022-11-01T02:00:36+01:00
  • Köszi a tippet!
    Igazándiból én voltam nagyon láma, a megoldás:

    P := GlobalLock( hMem ); ReadFile( F, P^, Size, BytesRead, Nil);

    A hiba az volt, hogy a P mellől lemaradt a ^ (kalap)... mostmár remekül műxik!
    Mutasd a teljes hozzászólást!
  • Próbáltad már a GetFileSize(..) függvénnyel belőni a file méretét, aztán ciklussal beolvasni?
    A ReadFile asszem csak eyg DWORD-nyi adatot képes beolvasni.
    pl c-sen
    DWORD readed; while(buf==0xFFFFFFFF){ ReadFile(filehandle,databuffer,0xFFFFFFFF,&readed, NULL); // a többi cucc ami kell az adat lekezeléséhez }
    Nem túl elegáns, de hatásos lehet.

    -b-
    Mutasd a teljes hozzászólást!
  • Már két napja küzdök az alábbi problémával: Delphi 5.0-ban WinAPI hívásokkal változó méretű (1kByte .. 1MByte) file-t kell beolvasnom a memória korábban lefoglalt területére.

    Azért kell az API hívásokkal küzdenem, mert a lefoglalt, majd a file byte-jaival feltöltött memóriaterület THandle (WinAPI: HGLOBAL) típusú handle-jét (ezt a memóriafoglalást végző API függvény adja vissza) további adatfeldolgozás céljából át kell adnom egy másik függvénynek.

    Na és most jön a tényleges gond:
    tapasztalatom szerint ha a file mérete meghaladja a kb. 30kB-ot, az API-s ReadFile() függvény visszatérési értéke False lesz, a GetLastError() pedig 998-as hibakóddal jelez hibát (ennek jelentése: invalid access to memory location) a 0 hibakód helyett. Ugyanakkor a mem. foglalással semmi gond, sok megabyte-ig képes memóriát foglalni (tesz célból minden memóriafoglalás ill. kezelés után a GetLastError()-t meghívom, a kapott hibakódott MessageDlg()-vel kiíratom).

    Szal akinek van valami ötlete, ne kíméljen!
    Mutasd a teljes hozzászólást!
  • Mivel a Delphi fele a Win32-re épül, keress rá a Neten arra, hogy "Delphi and Win32". Több ezer oldalt fogsz találni, ahol sima Pascal kódban vannak leírva a dolgok.
    Jó szörcsölést.
    Mutasd a teljes hozzászólást!
  • Hello!

    Engem az erdekelne, hogy a TV Tuner kartyan lévő képet hogyan tudom lementeni C++Builder-ben.
    BJ
    Mutasd a teljes hozzászólást!
  • Sziasztok!
    Azt szeretném megtudni, hogyan használhatok API-t C++ Builderben.
    +próbálkoztam azzal, hogy importáltam a dll-t, megkerestem a fv belépési pontját, de nem ment. Lehet, h én voltam balfék...:)
    Mutasd a teljes hozzászólást!
  • sziasztok, egy nagyon egyszerű problámám lenne, hogy kell(ene) jobbra ütköztetni a számokat az edit mezőkbe. akár delphibe, akár visual objectbe dolgozok, erre még nem jöttem rá. Az alapvető baj, hogy proporcionális karakter készletnél(és ugye majd mind az) a szóköz fele 'akkora',mint a számok, és igy a különböző számok nincsenek egymás alatt. courier new betűtipusnál nincs baj, de az elég csúnyácska. Az excel progiba pl. hogy oldják meg, hogy katonásan jobbra illeszkedik. nem találtam a single line edit-hez alignment tulajdonságot. vagy vak vagyok? :o)
    Már arra is gondoltam, hogy egyszerűen kellene egy spéci times new roman, ahol a szóköz akkora, mint a számok, de halvány fogalmam sincs, hogy kell ilyet csinálni.
    Mutasd a teljes hozzászólást!
  • ftp://ftp.cs.virginia.edu/pub/lcc-win32/win32hlp.exe
    Mutasd a teljes hozzászólást!
  • Mégsem írtam félre, ez is jó
    Mutasd a teljes hozzászólást!
  • Látom én teljesen félreírtam a címet, ideje nyaralni mennem
    Mutasd a teljes hozzászólást!
  • Köszi!
    Mutasd a teljes hozzászólást!
  • Mutasd a teljes hozzászólást!
  • www.msdn.com/library

    Teljes Windows API (és még rengeteg minden más) leírás, példákkal, mindennel
    Mutasd a teljes hozzászólást!
  • Hi! Én Free Pascalban programozok,
    és szeretnék Win32-es programokat írni, csak hát nem nagyon ismerem az API-t. És szeretnék valami linket vagy leírás ami segít kezdeni.
    Mutasd a teljes hozzászólást!
Tetszett amit olvastál? Szeretnél a jövőben is értesülni a hasonló érdekességekről?
abcd