Someone before here mentioned compiler errors with CB and ICS. Errors like:

[BCC32 Error] ws2def.h(213): E2238 Multiple declaration for 'sockaddr'
[BCC32 Error] winsock.h(486): E2344 Earlier declaration of 'sockaddr'
[BCC32 Error] ws2def.h(222): E2146 Need an identifier to declare
[BCC32 Error] ws2def.h(391): E2184 Enum syntax error
[BCC32 Error] ws2def.h(444): E2040 Declaration terminated incorrectly

I had the same thing. The problem was when I tried to include in
single cpp/hpp unit ICS and Indy. In particular the issue causing this
was IdMessage in combination with OverbyteIcsMimeDec

These two headers conflict:

#include "OverbyteIcsMimeDec.hpp"
#include "IdMessage.hpp"

I wasn't able to place them in single unit to compile successfully.
Only after putting Indy in different unit (on another form) and
changing the include order of form include files it finally compiled.

I'm not sure which of these headers didn't check if ws2def.h or
winsock.h wasn't already included but I would suggest a check when
building these headers in ICS to place a check whether a particular
header is already included so it doesn't get included twice.
To unsubscribe or change your settings for TWSocket mailing list
please goto
Visit our website at

Reply via email to