[lazarus][win32] Error compiling win32 interface

Mattias Gaertner nc-gaertnma at netcologne.de
Fri Dec 13 05:33:26 EST 2002


On Fri, 13 Dec 2002 10:21:37 +0100
"Vincent Snijders" <VSDS at RND.VB.CBS.NL> wrote:

> I am not a win32 developer, but I looked into it. 
> The error in the win32 interface is propably caused by the the changes
> Mattias made yesterday in lcltype. There he added MakeIntResource.
> 
> Mattias, do you need it in LCLType? (Probably yes)

I added MakeIntResource for compatibility, so that porting components is
easier. It works exactly the same as under Delphi. MakeIntResource is simply
a typecast to PAnsiChar.

 
> To repair the consequences you could change the line to
> Cursor := Windows.MakeIntResource(Word(Integer(((Sender As
> TControl).Cursor))));

Or by removing the unnecessary Word typecast. I did so. Should now work. It
worked before, because fpc defines MakeIntResource as a function, which is a
little bit different to Delphis definition.

> Then we get the original behaviour back in win32object. I doubt it is
> doing what we want it to do, but it probably will compile again. (Not
> tested, no sources and compiler at work).

Same for me.


Mattias


> 
> Regards,
> Vincent.
> 
> 
> 
> > -----Original Message-----
> > From: hernan.et at pg.com [mailto:hernan.et at pg.com]
> > Sent: vrijdag 13 december 2002 5:09
> > To: lazarus at miraclec.com
> > Subject: Re: [lazarus][win32] Error compiling lcllinux.pp line 134
> > 
> > 
> > Just download the fpc 1.0.7 from ftp.us.freepascal.org and 
> > created the compiler.
> > What is it that this compiler was not able to detect the 
> > problem in lcllinux.pp
> > as pointed in my previous message??????
> > 
> > And by the way, any win32 developer around? Kindly check 
> > win32Object.inc line
> > 1393
> > Cursor := MakeIntResource(Word(Integer(((Sender As 
> > TControl).Cursor))));
> > 
> > The statement says illegal conversion... something. I changed it to
> > Cursor := MakeIntResource(IntToStr(Word(Integer((Sender  As 
> > TControl).Cursor))));
> > 
> > Did I do it right?
> > 
> > Yoyong
> > 
> > 
> >                                                                 
> >  Internet Mail Message                                          
> >  Received from host:                                            
> >  svcr-216-37-230-2.dsl.svcr.epix.net                            
> >  [216.37.230.2]                                                 
> >                                                                 
> > 
> > 
> > From: andrew johnson <acjgenius at earthlink.net> on 12/13/2002 
> > 12:47 AM GMT
> >                                                               
> >                   
> >             andrew johnson           To:   
> > lazarus at miraclec.com                 
> >  <acjgenius at earthlink.net>           Cc:    (bcc: Yoyong 
> > Hernan-ET/PGI)         
> >                              Subject:      Re: 
> > [lazarus][win32] Error compiling 
> >                                   lcllinux.pp line 134        
> >                   
> >        12/13/2002 08:47 AM                                    
> >                   
> >          Please respond to                                    
> >                   
> >       lazarus at miraclec.com                                    
> >                   
> >                                                               
> >                   
> > 
> > 
> > 
> > 
> > 
> > well, I can't guarantee good results with 1.1 compiler.. currently any
> > lazarus built with it doesn't run at all.
> > 
> > (Though that indeed may be a typo.)
> > 
> > Andrew
> > 
> > On Thu, 2002-12-12 at 19:35, hernan.et at pg.com wrote:
> > >
> > > Tried compiling lazarus under win32 causes the following error.
> > >
> > > C:\lazarus>make
> > > C:/PP/BIN/WIN32/MAKE.EXE -C lcl all
> > > MAKE.EXE[1]: Entering directory `C:/lazarus/lcl'
> > > C:/PP/BIN/WIN32/rm.exe -f units/allunits.ppw
> > > C:/PP/BIN/WIN32/ppc386.exe -gl -Fuinterfaces/abstract -Fu.
> > -Fuc:/pp/units/win32/
> > > rtl -Fuc:/pp/units/win32/paszlib -Fuc:/pp/units/win32/fcl
> > -Fuc:/pp/units/win32/m
> > > ysql -Fuc:/pp/units/win32/ibase -Fiinclude -FUunits -di386 
> > allunits.pp
> > > Free Pascal Compiler version 1.1 [2002/12/13] for i386
> > > Copyright (c) 1993-2002 by Florian Klaempfl
> > > lcllinux.pp(134,37) Error: Illegal qualifier
> > > lcllinux.pp(231) Fatal: There were 1 errors compiling 
> > module, stopping
> > > MAKE.EXE[1]: *** [allunits.ppw] Error 1
> > > MAKE.EXE[1]: Leaving directory `C:/lazarus/lcl'
> > > C:\PP\BIN\WIN32\MAKE.EXE: *** [lcl] Error 2
> > >
> > > This is the line pointed to by the compiler, looks like a 
> > typo error.
> > >
> > > LowerCaseChars[c]:=lowercase(c)[1];
> > >                                                             
> >        ^^^   Do we
> > need this index, c is of type char.
> > >
> > > Regards,
> > >
> > > Yoyong
> > >
> > >
> > > _________________________________________________________________
> > >      To unsubscribe: mail lazarus-request at miraclec.com with
> > >                 "unsubscribe" as the Subject
> > >    archives at http://www.lazarus.freepascal.org/mailarchives
> > 
> > 
> > _________________________________________________________________
> >      To unsubscribe: mail lazarus-request at miraclec.com with
> >                 "unsubscribe" as the Subject
> >    archives at http://www.lazarus.freepascal.org/mailarchives
> > 
> > 
> > _________________________________________________________________
> >      To unsubscribe: mail lazarus-request at miraclec.com with
> >                 "unsubscribe" as the Subject
> >    archives at http://www.lazarus.freepascal.org/mailarchives
> > 
> 
> _________________________________________________________________
>      To unsubscribe: mail lazarus-request at miraclec.com with
>                 "unsubscribe" as the Subject
>    archives at http://www.lazarus.freepascal.org/mailarchives






More information about the Lazarus mailing list