http://pc.2ch.net/test/read.cgi/tech/1012574089/4
が動かない件ですが

if hWindow=0 then
MessageBox(0, PChar(SysErrorMessage(getLastError)), nil, mb_Ok);

を入れてみると 'ウィンドウ クラスを見つけることができません。' とメッセージが出ます
あれ、上で RegisterClass してるのにと見ると

function WinRegister: Boolean;
var
WindowClass: TWndClassEx;
begin

と肝心のクラス定義がローカル変数というオチのようです