Thread overview |
---|
March 12, 2003 Missing definitions in commctrl.h | ||||
---|---|---|---|---|
| ||||
The following definitions (plus others that I don't need just yet) are missing from the commctrl.h file: typedef struct tagINITCOMMONCONTROLSEX { DWORD dwSize; DWORD dwICC; } INITCOMMONCONTROLSEX,*LPINITCOMMONCONTROLSEX; #define ICC_WIN95_CLASSES 255 #define ICC_DATE_CLASSES 256 BOOL WINAPI InitCommonControlsEx(LPINITCOMMONCONTROLSEX); I put them in my own header temporarily and everything resolves OK except for the last one. BOOL WINAPI InitCommonControlsEx(LPINITCOMMONCONTROLSEX); This one can't be resolved during link. I get the following message: link win+GUI,,,gdi32+user32+kernel32,d:\GUI\dmc\win/RC:win/noi; OPTLINK (R) for Win32 Release 7.50B1 Copyright (C) Digital Mars 1989 - 2001 All Rights Reserved GUI.obj(GUI) Error 42: Symbol Undefined ?InitCommonControlsEx@@YGHPAUtagINITCOMMONCONTROLSEX @@@Z (int stdcall InitCommonControlsEx(tagINITCOMMONCONTROLSEX *)) --- errorlevel 1 Can you help, please. Thanks. Gary |
March 12, 2003 Re: Missing definitions in commctrl.h | ||||
---|---|---|---|---|
| ||||
Posted in reply to Gary | Try enclose function prototype with extern "C" { }. (note the mangling of function name in linker output) Nic Tiger. "Gary" <gedumer@bcpl.net> ÓÏÏÂÝÉÌ/ÓÏÏÂÝÉÌÁ × ÎÏ×ÏÓÔÑÈ ÓÌÅÄÕÀÝÅÅ: news:b4o4vj$28u3$1@digitaldaemon.com... > The following definitions (plus others that I don't need just yet) are missing from the commctrl.h file: > > typedef struct tagINITCOMMONCONTROLSEX { > DWORD dwSize; > DWORD dwICC; > } INITCOMMONCONTROLSEX,*LPINITCOMMONCONTROLSEX; > #define ICC_WIN95_CLASSES 255 > #define ICC_DATE_CLASSES 256 > BOOL WINAPI InitCommonControlsEx(LPINITCOMMONCONTROLSEX); > > I put them in my own header temporarily and everything resolves OK except for the last one. > > BOOL WINAPI InitCommonControlsEx(LPINITCOMMONCONTROLSEX); > > This one can't be resolved during link. I get the following message: > > link win+GUI,,,gdi32+user32+kernel32,d:\GUI\dmc\win/RC:win/noi; > OPTLINK (R) for Win32 Release 7.50B1 > Copyright (C) Digital Mars 1989 - 2001 All Rights Reserved > > GUI.obj(GUI) > Error 42: Symbol Undefined > ?InitCommonControlsEx@@YGHPAUtagINITCOMMONCONTROLSEX > @@@Z (int stdcall InitCommonControlsEx(tagINITCOMMONCONTROLSEX *)) > > --- errorlevel 1 > > Can you help, please. > > Thanks. > > Gary > > |
March 12, 2003 Re: Missing definitions in commctrl.h | ||||
---|---|---|---|---|
| ||||
Posted in reply to Nic Tiger | Now I get... GUI.obj(GUI) Error 42: Symbol Undefined _InitCommonControlsEx@4 Is there something else I can do? Gary "Nic Tiger" <nictiger@progtech.ru> wrote in message news:b4o5js$29h1$1@digitaldaemon.com... > Try enclose function prototype with extern "C" { }. > (note the mangling of function name in linker output) > > Nic Tiger. > |
March 12, 2003 Re: Missing definitions in commctrl.h | ||||
---|---|---|---|---|
| ||||
Posted in reply to Gary | You can now try to find where (what DLL) this function resides and then create .def file for it and create import library via implib.exe. Read DMC online help to learn more about .def files an implib. Nic Tiger. "Gary" <gedumer@bcpl.net> ÓÏÏÂÝÉÌ/ÓÏÏÂÝÉÌÁ × ÎÏ×ÏÓÔÑÈ ÓÌÅÄÕÀÝÅÅ: news:b4o68f$2a2b$1@digitaldaemon.com... > Now I get... > > GUI.obj(GUI) > Error 42: Symbol Undefined _InitCommonControlsEx@4 > > Is there something else I can do? > > Gary > > "Nic Tiger" <nictiger@progtech.ru> wrote in message news:b4o5js$29h1$1@digitaldaemon.com... > > Try enclose function prototype with extern "C" { }. > > (note the mangling of function name in linker output) > > > > Nic Tiger. > > > > |
March 12, 2003 Re: Missing definitions in commctrl.h | ||||
---|---|---|---|---|
| ||||
Posted in reply to Nic Tiger | Actually, this should be addressed by Walter Bright, since this is all part of the win32api support that the compiler system should provide. Obviously, this is something that slipped through the cracks. Hopefully, Walter will read this and respond. Thanks for your suggestions though, Gary. "Nic Tiger" <nictiger@progtech.ru> wrote in message news:b4o6tc$2al2$1@digitaldaemon.com... > You can now try to find where (what DLL) this function resides and then create .def file for it and create import library via implib.exe. > > Read DMC online help to learn more about .def files an implib. > > Nic Tiger. > > "Gary" <gedumer@bcpl.net> ÓÏÏÂÝÉÌ/ÓÏÏÂÝÉÌÁ × ÎÏ×ÏÓÔÑÈ ÓÌÅÄÕÀÝÅÅ: news:b4o68f$2a2b$1@digitaldaemon.com... > > Now I get... > > > > GUI.obj(GUI) > > Error 42: Symbol Undefined _InitCommonControlsEx@4 > > > > Is there something else I can do? > > > > Gary > > > > "Nic Tiger" <nictiger@progtech.ru> wrote in message news:b4o5js$29h1$1@digitaldaemon.com... > > > Try enclose function prototype with extern "C" { }. > > > (note the mangling of function name in linker output) > > > > > > Nic Tiger. > > > > > > > > > |
March 13, 2003 Re: Missing definitions in commctrl.h | ||||
---|---|---|---|---|
| ||||
Posted in reply to Gary | On Wed, 12 Mar 2003 18:13:32 -0500, Gary wrote: > Actually, this should be addressed by Walter Bright, since this is all part of the win32api support that the compiler system should provide. Obviously, In the meantime you could have a look at http://cmeerw.org/prog/dm/ms_sdk.html on how to use the latest Platform SDK with DMC++. bye, Christof -- http://cmeerw.org JID: cmeerw@jabber.at mailto cmeerw at web.de ...and what have you contributed to the Net? |
March 14, 2003 Re: Missing definitions in commctrl.h | ||||
---|---|---|---|---|
| ||||
Posted in reply to Gary | Thanks to all who replied... I simply failed to link the comctl32.lib file. Works great now. Gary "Gary" <gedumer@bcpl.net> wrote in message news:b4o4vj$28u3$1@digitaldaemon.com... > The following definitions (plus others that I don't need just yet) are missing from the commctrl.h file: > > typedef struct tagINITCOMMONCONTROLSEX { > DWORD dwSize; > DWORD dwICC; > } INITCOMMONCONTROLSEX,*LPINITCOMMONCONTROLSEX; > #define ICC_WIN95_CLASSES 255 > #define ICC_DATE_CLASSES 256 > BOOL WINAPI InitCommonControlsEx(LPINITCOMMONCONTROLSEX); > > I put them in my own header temporarily and everything resolves OK except for the last one. > > BOOL WINAPI InitCommonControlsEx(LPINITCOMMONCONTROLSEX); > > This one can't be resolved during link. I get the following message: > > link win+GUI,,,gdi32+user32+kernel32,d:\GUI\dmc\win/RC:win/noi; > OPTLINK (R) for Win32 Release 7.50B1 > Copyright (C) Digital Mars 1989 - 2001 All Rights Reserved > > GUI.obj(GUI) > Error 42: Symbol Undefined > ?InitCommonControlsEx@@YGHPAUtagINITCOMMONCONTROLSEX > @@@Z (int stdcall InitCommonControlsEx(tagINITCOMMONCONTROLSEX *)) > > --- errorlevel 1 > > Can you help, please. > > Thanks. > > Gary > > |
March 18, 2003 Re: Missing definitions in commctrl.h | ||||
---|---|---|---|---|
| ||||
Posted in reply to Gary | That symbol is in \dm\lib\comctl32.lib. Need to add it to the list of libraries presented to the linker. "Gary" <gedumer@bcpl.net> wrote in message news:b4o68f$2a2b$1@digitaldaemon.com... > Now I get... > > GUI.obj(GUI) > Error 42: Symbol Undefined _InitCommonControlsEx@4 > > Is there something else I can do? > > Gary > > "Nic Tiger" <nictiger@progtech.ru> wrote in message news:b4o5js$29h1$1@digitaldaemon.com... > > Try enclose function prototype with extern "C" { }. > > (note the mangling of function name in linker output) > > > > Nic Tiger. > > > > |
Copyright © 1999-2021 by the D Language Foundation