IWindow->Handle returns an IHandle interface, not a dword handle. If you need the dword handle you need to use IHandle->Handle, that is IWindow->Handle->Handle.
Btw, instead of "GetWindows()->operator [](0)" I think you can do "GetWindows()->Items[0]". Looks nicer to my eyes.
P.S: Why don't you use Application->Handle instead? Shouldn't that give you the same handle as GetWindows()->Items[0]?