[fpc-pascal]Re: Method in WndClassEX

Jonas Maebe jonas at zeus.rug.ac.be
Sat Oct 13 23:14:29 CEST 2001

On Sat, 13 Oct 2001, Luis Del Aguila wrote:

>> No, you cannot assign methods to normal procedure variables, only normal
>> procedures. The reason is that methods always expect an extra parameter
>> containing the self pointer of the object/class instance they are
>> working on. If you do the above, then when windows calls you "wndproc"
>> (which isn't really a wndproc, since you have to add an explicit type
>> cast for the compiler to accept the statement), it won't pass any self
>> pointer and as such the method will not work correctly.
> Existe alguna manera de pasar un metodo al registro lpfnWndProc usando
> ensamblador o algo mejor?
> Do you know when allocate a metthod in the field lpfnWndProc of the
> WndClassEX using Assembler or something best?

As I said: no, there is no way to use a method instead of a normal
procedure as a call-back if the call-back is supposed to be a normal
procedure. No matter how much assembler you use, Windows will never pass a
self pointer to your method.


More information about the fpc-pascal mailing list