digitalmars.empire - error compiling winmain.d ?
- Byron Smith (36/36) Aug 21 2004 I get the following errors compiling empire 2.03 (for D) when it gets to...
- Regan Heath (17/53) Aug 22 2004 Byron,
- Byron Smith (5/74) Aug 22 2004 Thanks! I am going to try it tomorrow... (gotta sleep and do the work
- bsmith3 at gt dot rr dot com (18/45) Sep 24 2004 OK... (a LONG time later)...
I get the following errors compiling empire 2.03 (for D) when it gets to winmain.d (I have no idea what to do about them): Anyone here have the same problem? Are there any solutions? (Most likely I am doing something wrong...) (Oh by the way, this is running make after it cleanly ran for everything before winmain with no errors...) C:\EMPIRE~1>make \dmd\bin\dmd -O -c winmain winmain.d(397): function DialogBoxParamA (HANDLE hInstance,char*lpTemplateName,H ANDLE hWndParent,int(Windows *lpDialogFunc)(HANDLE,uint,uint,int),int dwInitPara m) does not match argument types (HANDLE,char[7],HANDLE,int(Windows *)(),int) winmain.d(398): cannot implicitly convert expression *(#global + 44) of type int (Windows *)() to int(Windows *)(HANDLE,uint,uint,int) winmain.d(454): function DialogBoxParamA (HANDLE hInstance,char*lpTemplateName,H ANDLE hWndParent,int(Windows *lpDialogFunc)(HANDLE,uint,uint,int),int dwInitPara m) does not match argument types (HANDLE,char[8],HANDLE,int(Windows *)(),int) winmain.d(455): cannot implicitly convert expression *(#global + 16) of type int (Windows *)() to int(Windows *)(HANDLE,uint,uint,int) winmain.d(1071): function DialogBoxParamA (HANDLE hInstance,char*lpTemplateName, HANDLE hWndParent,int(Windows *lpDialogFunc)(HANDLE,uint,uint,int),int dwInitPar am) does not match argument types (HANDLE,char[13],HANDLE,int(Windows *)(),int) winmain.d(1071): cannot implicitly convert expression *(#global + 28) of type in t(Windows *)() to int(Windows *)(HANDLE,uint,uint,int) --- errorlevel 1
Aug 21 2004
Byron,
It appears Walter has been slack with his casting, the function call on
line 397 looks like:
DialogBoxParamA(global.hinst, "InitBox", hwnd,
global.lpfnInitDlgProc, 0);
which should read:
DialogBoxParamA(global.hinst, "InitBox", hwnd,
cast(DLGPROC)global.lpfnInitDlgProc, 0);
The same goes for the others, here are the fixed versions:
line 454: DialogBoxParamA(global.hinst, "AboutBox", hwnd,
cast(DLGPROC)global.lpfnAboutDlgProc, 0) ;
line 1071: DialogBoxParamA(global.hinst, "CitySelectBox", global.hwnd,
cast(DLGPROC)global.lpfnCitySelectDlgProc, 0) ;
Regan
On Sat, 21 Aug 2004 20:58:07 -0500, Byron Smith <bsmith3 gt.rr.com> wrote:
I get the following errors compiling empire 2.03 (for D) when it gets to
winmain.d (I have no idea what to do about them):
Anyone here have the same problem? Are there any solutions? (Most likely
I am doing something wrong...)
(Oh by the way, this is running make after it cleanly ran for everything
before winmain with no errors...)
C:\EMPIRE~1>make
\dmd\bin\dmd -O -c winmain
winmain.d(397): function DialogBoxParamA (HANDLE
hInstance,char*lpTemplateName,H
ANDLE hWndParent,int(Windows *lpDialogFunc)(HANDLE,uint,uint,int),int
dwInitPara
m) does not match argument types (HANDLE,char[7],HANDLE,int(Windows
*)(),int)
winmain.d(398): cannot implicitly convert expression *(#global + 44) of
type int
(Windows *)() to int(Windows *)(HANDLE,uint,uint,int)
winmain.d(454): function DialogBoxParamA (HANDLE
hInstance,char*lpTemplateName,H
ANDLE hWndParent,int(Windows *lpDialogFunc)(HANDLE,uint,uint,int),int
dwInitPara
m) does not match argument types (HANDLE,char[8],HANDLE,int(Windows
*)(),int)
winmain.d(455): cannot implicitly convert expression *(#global + 16) of
type int
(Windows *)() to int(Windows *)(HANDLE,uint,uint,int)
winmain.d(1071): function DialogBoxParamA (HANDLE
hInstance,char*lpTemplateName,
HANDLE hWndParent,int(Windows *lpDialogFunc)(HANDLE,uint,uint,int),int
dwInitPar
am) does not match argument types (HANDLE,char[13],HANDLE,int(Windows
*)(),int)
winmain.d(1071): cannot implicitly convert expression *(#global + 28) of
type in
t(Windows *)() to int(Windows *)(HANDLE,uint,uint,int)
--- errorlevel 1
--
Using M2, Opera's revolutionary e-mail client: http://www.opera.com/m2/
Aug 22 2004
Thanks! I am going to try it tomorrow... (gotta sleep and do the work
thing...I'd rather get paid to stay home and play with Empire source
code, though, if I had *MY* way).
Byron
Regan Heath wrote:
Byron,
It appears Walter has been slack with his casting, the function call on
line 397 looks like:
DialogBoxParamA(global.hinst, "InitBox", hwnd,
global.lpfnInitDlgProc, 0);
which should read:
DialogBoxParamA(global.hinst, "InitBox", hwnd,
cast(DLGPROC)global.lpfnInitDlgProc, 0);
The same goes for the others, here are the fixed versions:
line 454: DialogBoxParamA(global.hinst, "AboutBox", hwnd,
cast(DLGPROC)global.lpfnAboutDlgProc, 0) ;
line 1071: DialogBoxParamA(global.hinst, "CitySelectBox", global.hwnd,
cast(DLGPROC)global.lpfnCitySelectDlgProc, 0) ;
Regan
On Sat, 21 Aug 2004 20:58:07 -0500, Byron Smith <bsmith3 gt.rr.com> wrote:
I get the following errors compiling empire 2.03 (for D) when it gets
to winmain.d (I have no idea what to do about them):
Anyone here have the same problem? Are there any solutions? (Most
likely I am doing something wrong...)
(Oh by the way, this is running make after it cleanly ran for
everything before winmain with no errors...)
C:\EMPIRE~1>make
\dmd\bin\dmd -O -c winmain
winmain.d(397): function DialogBoxParamA (HANDLE
hInstance,char*lpTemplateName,H
ANDLE hWndParent,int(Windows *lpDialogFunc)(HANDLE,uint,uint,int),int
dwInitPara
m) does not match argument types (HANDLE,char[7],HANDLE,int(Windows
*)(),int)
winmain.d(398): cannot implicitly convert expression *(#global + 44)
of type int
(Windows *)() to int(Windows *)(HANDLE,uint,uint,int)
winmain.d(454): function DialogBoxParamA (HANDLE
hInstance,char*lpTemplateName,H
ANDLE hWndParent,int(Windows *lpDialogFunc)(HANDLE,uint,uint,int),int
dwInitPara
m) does not match argument types (HANDLE,char[8],HANDLE,int(Windows
*)(),int)
winmain.d(455): cannot implicitly convert expression *(#global + 16)
of type int
(Windows *)() to int(Windows *)(HANDLE,uint,uint,int)
winmain.d(1071): function DialogBoxParamA (HANDLE
hInstance,char*lpTemplateName,
HANDLE hWndParent,int(Windows *lpDialogFunc)(HANDLE,uint,uint,int),int
dwInitPar
am) does not match argument types (HANDLE,char[13],HANDLE,int(Windows
*)(),int)
winmain.d(1071): cannot implicitly convert expression *(#global + 28)
of type in
t(Windows *)() to int(Windows *)(HANDLE,uint,uint,int)
--- errorlevel 1
Aug 22 2004
OK... (a LONG time later)... I finally got the Empire source code in D to compile... yay!!! I had three problems, though: First, was the casting bit that Regan so helpfully corrected for me (see copy of his post below). Second, I kept getting an error on not finding "va_list" in printf.d or something like that. From reading dsource.org, I figured out I needed to include the line "include std.stdarg;" in printf.d and all was well...until... Third, make died on empire.rc because it couldn't find cursor.bmp or empire.ico. I commented out the two lines because I have no idea where to get the files. So I get an executable, but it's not really complete. Am I supposed to have this much fun trying to compile something? I'm just a newbie at all of this, and I almost couldn't figure it out. Is Walter going to update his empire D source code? -- Byron In article <cgbn8f$1o0l$1 digitaldaemon.com>, Byron Smith says...Thanks! I am going to try it tomorrow... (gotta sleep and do the work thing...I'd rather get paid to stay home and play with Empire source code, though, if I had *MY* way). Byron Regan Heath wrote:Byron, It appears Walter has been slack with his casting, the function call on line 397 looks like: DialogBoxParamA(global.hinst, "InitBox", hwnd, global.lpfnInitDlgProc, 0); which should read: DialogBoxParamA(global.hinst, "InitBox", hwnd, cast(DLGPROC)global.lpfnInitDlgProc, 0); The same goes for the others, here are the fixed versions: line 454: DialogBoxParamA(global.hinst, "AboutBox", hwnd, cast(DLGPROC)global.lpfnAboutDlgProc, 0) ; line 1071: DialogBoxParamA(global.hinst, "CitySelectBox", global.hwnd, cast(DLGPROC)global.lpfnCitySelectDlgProc, 0) ; Regan
Sep 24 2004








bsmith3 at gt dot rr dot com <bsmith3_member pathlink.com>