Warum der WParam WParam und der LParam LParam heißt

Als Windows entwickelt wurde, damals noch 16-Bit, konnten jeder Nachricht zwei Parameter mitgegeben werden, den WPARAM und den LPARAM. Der WPARAM war 16-Bit groß und somit ein Word, woraus das Präfix "W" resultiert. Der zweite Parameter war ein Longword, 32-Bit, woraus das Präfix "L" resultiert.

Als Windows dann 32-Bit wurde, ist der erste Parameter intern auch 32-Bit groß geworden, die Nameskonventionen wurde aber beibehalten.

Im WPARAM übergibt man üblichwerweise Integer-Werte oder Handles, während hingegegen im LPARAM üblicherweise Zeiger übergeben werden. Dies zu wissen ist recht hilfreich, da dies auch heute noch so ist. Benutzt man zum Beispiel die Nachricht WM_GETTEXT so kann man sich mit dem Wissen über den Ursprung der Namensgebung herleiten, dass im WPARAM die Buffergröße stehen muss und im LPARAM ein Zeiger auf den Buffer, der die Daten empfängt.

Quelle: WebLog von Raymond Chen

2010-12-29T23:44:59 +0100, mail+homepage[at]michael-puff.de