Delphi-PRAXiS
Seite 2 von 2     12   

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Object-Pascal / Delphi-Language (https://www.delphipraxis.net/32-object-pascal-delphi-language/)
-   -   Delphi Dll schnittstelle ohne ShareMem (https://www.delphipraxis.net/182679-dll-schnittstelle-ohne-sharemem.html)

himitsu 11. Nov 2014 09:27

AW: Dll schnittstelle ohne ShareMem
 
Zitat:

Zitat von Blamaster (Beitrag 1279331)
Okay super das C / Windows-API BOOL entspricht dann dem LongBool oder dem WordBool ?

Ich kenn es meistens als LongBool (BOOL/LongInt), also bei vielen APIs/WinAPIs.
Seltener als ByteBool. (ShortInt)
WordBool hab ich in freier Wildbahn eigentlich noch nie gesehn, aber im Variant/OleVariant wird das für Boolean verwendet.

NicoDE 11. Nov 2014 10:52

AW: Dll schnittstelle ohne ShareMem
 
In den Windows APIs sind meist BOOL (4 Bytes, LongBool), BOOLEAN (1 Byte, ByteBool) und, wie himitsu bereits schrieb, VARIANT_BOOL (2 Bytes, WordBool) üblich.

Wobei man mit den Werten "hinter" den Bools aufpassen muss. Eigentlich sind 0 für False und -1 für True üblich (es gibt mit Sicherheit bereits Diskussionen, in denen die korrekte Auswertung ausführlich behandelt wird). Aber es gab ganz früher (Windows 95) Fälle, in denen die API bei Callbacks auf bestimmte Werte abgefragt hatte. So funktionierte die Iteration über alle Hauptfenster in bestimmten Windows-Versionen nur mit Result := BOOL(1); (damit Delphi bei True nicht BOOL(-1) zurückgibt)...

Blamaster 11. Nov 2014 12:28

AW: Dll schnittstelle ohne ShareMem
 
Okay vielen Dank :)


Alle Zeitangaben in WEZ +1. Es ist jetzt 18:16 Uhr.
Seite 2 von 2     12   

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