oikoyama schreef op 11 March 2003 @ 00:31:
[...]
Ik heb daar ook al zitten te zoeken, omdat die window nogal Win achtig is, dus ik d8 daar zal wel een simpele API call voor zijn, maar heb helaas niets kunnen vinden. Weet toevallig iemand die wel?
API calls zijn een hoop dingen, maar bijna nooit simpel

Nah, ik klets natuurlijk, maar je moet het even doorhebben.
Meestal is het enige resultaat van een functie een indicatie of hij gelukt is, de rest van de info (als je iets opvraagt) staat in de parameters van je functieaanroep. Er zijn genoeg voorbeeldjes te vinden, dus die behandel ik maar even niet (buiten het feit dat ik ze zelf nog nodig heb

), maar ik heb vaak TOpenDialog gebruikt, en MemCheck heeft nog nooit lekken gevonden. Ik denk dat het gewoon de taskmanager is die je beeld verkloot.
Ik heb nooit naar de code achter het OpenDialog-component gekeken, maar ik gok dat je niet zo gek veel meer dan wat API-calls tegenkomt.
Waar API-Calls dan goed voor zijn als er toch een Delphi-tegenhanger / implementatie is?
Als je bijvoorbeeld iets kleins wilt schrijven maar wel een MessageDlg wilt gebruiken. Je kunt dan kiezen voor het Usen van Dialogs (GROOT) of het rechtstreeks aanroepen van de API-call.
Ook kan het sneller zijn, zeker als je alles weglaat wat je toch niet gebruikt.
Waar je bij het zelf aanroepen van API-calls WEL goed op moet letten is het goed vrijgeven van alles. API-calls hangen van de pointers, buffers en char-arrays aan elkaar, en de meeste daarvan moeten geFREEd worden.
[
Voor 30% gewijzigd door
Paul op 11-03-2003 00:38
]