WindowsAPIではコールバックは関数ポインタを渡すよね?
 メソッドは関数ポインタの他にオブジェクトインスタンスアドレスも渡さなければならない

最近作られたAPIの多くはハンドル作成時にコールバック時に渡すアドレスを渡せるけど
肝心のWinProcには無い。(SetWindowsLongで埋めようと思えば埋めれrけどね)

これを解決するのにDelphiでは インスタンスの作成時に、短いコードを動的に作って
その関数内部でインスタンスアドレスを作り出している

Win16の頃は、DLLは共有されていた。 このDLLからコールバックを受ける為には
関数ポインタのほかにセグメントレジスタが必要になる そこでやっぱり短いコードを
動的に作ってこの関数を経由して呼び出す事で解決していた。この技術をマイクロソフトはサンクと呼んでいた