![]() |
|
TIWSSLOptions::SetPortA - Printable Version +- Atozed Forums (https://www.atozed.com/forums) +-- Forum: Atozed Software (https://www.atozed.com/forums/forum-1.html) +--- Forum: IntraWeb (https://www.atozed.com/forums/forum-3.html) +---- Forum: English (https://www.atozed.com/forums/forum-16.html) +----- Forum: IntraWeb General Discussion (https://www.atozed.com/forums/forum-4.html) +----- Thread: TIWSSLOptions::SetPortA (/thread-3785.html) |
TIWSSLOptions::SetPortA - JuergenS - 01-14-2024 Edition: IntraWeb Ultimate Edition IntraWeb Version: 15.5.5 C++Builder: 12 [ilink32 Fehler] Error: Nicht auflösbares externes '__fastcall Iwservercontrollerbase::TIWSSLOptions::SetPortA(const int)' referenziert von ...\WIN32\DEBUG\SERVERCONTROLLER.OBJ [ilink32 Fehler] Error: Linken kann nicht ausgeführt werden As of version IW15.5.4, the port property function has been changed in IWServerControllerBase.hpp: old: __property int Port = {read=FPort, write=FPort, default=0}; new: __property int Port = {read=FPort, write=SetPort, default=0}; Unfortunately, the pragma entry required to redirect the property functions SetPortA()/SetPortW is missing. (please refer //-- user supplied --) RE: TIWSSLOptions::SetPortA - rlebeau - 01-14-2024 (01-14-2024, 10:37 AM)JuergenS Wrote: [ilink32 Fehler] Error: Nicht auflösbares externes '__fastcall Iwservercontrollerbase::TIWSSLOptions::SetPortA(const int)' referenziert von ...\WIN32\DEBUG\SERVERCONTROLLER.OBJ Oh, how fun that SetPort() is still rearing its ugly head after decades of plaguing people! (01-14-2024, 10:37 AM)JuergenS Wrote: As of version IW15.5.4, the port property function has been changed in IWServerControllerBase.hpp: In Indy, there are several Port properties that are affected by this issue. I resolved it the same way Borland/Embarcadero did in the VCL - by adding appropriate C++ #pragma alias statements via HPPEMIT directives to each affected Delphi unit, eg: Code: // in IdIOHandler.pas: procedure SetPort(AValue: Integer); virtual;Code: // in IdIPMCastBase.pas: procedure SetPort(const Value: integer); virtual;Code: // in IdTCPClient.pas: procedure SetPort(const AValue: TIdPort); virtual;And a few others... Note the difference in the decorated names due to the different ways that the input parameter to SetPort() is declared. In retrospect, it would have been cleaner to just rename each class's SetPort() method instead to something more unique that didn't clash with the Win32 API, such as SetPortNumber() or something like that. RE: TIWSSLOptions::SetPortA - JuergenS - 01-15-2024 Any solution is welcome RE: TIWSSLOptions::SetPortA - Alexandre Machado - 01-17-2024 It's been fixed in our code base and will be delivered in a new update soon. RE: TIWSSLOptions::SetPortA - Alexandre Machado - 01-17-2024 @Remy, not as funny as it looks from the outside :-) That's the second time that something like that happens in our codebase, IIRC. Thanks for your input. It saved me some time scratching my head.... RE: TIWSSLOptions::SetPortA - JuergenS - 01-30-2024 It's working now with IW 15.5.6 Thanks for your help RE: TIWSSLOptions::SetPortA - JuergenS - 09-02-2025 Hi Alexandre, this error apears again with Intraweb 16.1.3. I'm back to Intraweb 16.1.2. Regards Juergen RE: TIWSSLOptions::SetPortA - JuergenS - 09-29-2025 Hi, can someone from ATOZED have a look at this please. Regards Juergen RE: TIWSSLOptions::SetPortA - Alexandre Machado - 10-09-2025 Unfortunately this got broken with version 16.1.3, that's right. It has been fixed and a new build is in the pipeline |