Njain,
Handle haben nichts mit Pointern zu tun. (auch wenn einige weniger
Handle aktuell intern als Pointer verwaltet werden, wie z.B. das
Handle von geladenen Modulen, wie DLLs)
Stell die
Handle eher als Index in einer Liste vor.
Bei Messages wie WM_TEXT haben die Parameter eine vorgegebene Funktion, bzw. ein definiertes Datenformat, welches Windows kennt.
Demnach kann Windows dort auch den entsprechenden Speicher kopieren, wenn er in ein anderes Programm rüber muß.
Bei WM_COPYDATA wird ebenfalls angegeben wie und wo Daten liegen und Windows kann sich ebenfalls um das Kopieren kümmern.
Ansonsten (vorallem bei eigenen Messages) kann man eben nur Integer übergeben.
Oder Anderes, welches als global eindeutiger Wert darin übergeben werden kann. (z.B. globale
Handle)