Linker error in IW15.2.65

<< Click to Display Table of Contents >>

Navigation:  Forum >

Linker error in IW15.2.65

Forum link

 

Pages: 1 2

 


 

08-11-2022, 01:28 PM:

 

I get a linker error in Intraweb 15.2.65 with C++Builder 11.1 

 

[ilink32 Fehler] Error: Nicht auflösbares externes 'InternetOpenW' referenziert von C:\ATOZED11\INTRAWEB 15\LIBD11W32\INTRAWEB_15_D11.LIB|IWUtils

 

[ilink32 Fehler] Error: Nicht auflösbares externes 'InternetOpenUrlW' referenziert von C:\ATOZED11\INTRAWEB 15\LIBD11W32\INTRAWEB_15_D11.LIB|IWUtils

 

[ilink32 Fehler] Error: Nicht auflösbares externes 'InternetReadFile' referenziert von C:\ATOZED11\INTRAWEB 15\LIBD11W32\INTRAWEB_15_D11.LIB|IWUtils

 

[ilink32 Fehler] Error: Nicht auflösbares externes 'InternetCloseHandle' referenziert von C:\ATOZED11\INTRAWEB 15\LIBD11W32\INTRAWEB_15_D11.LIB|IWUtils

 

Regards

 

Juergen

 


 

08-11-2022, 02:50 PM:

 

Try adding this:

 

#pragma link "wininet.lib"

 


 

08-11-2022, 07:56 PM:

 

Thanks for the tip, but I'm not using this API.

 

Apparently the API library is now required by the intraweb library but probably not included.

 


 

08-11-2022, 09:04 PM:

 

>>Apparently the API library is now required by the intraweb library but probably not included.

 

Correct.  If you add it you will be able to link without error, I had to do the same.

 


 

08-12-2022, 10:33 AM:

 

Yes, you're right, but it's not my construction site.

 

The intraweb library needs to work without my help.

 

I just upgraded from IW 15.2.64 to IW 15.2.65!

 


 

08-12-2022, 05:13 PM:

 

Isn't IntraWeb written in Delphi? Delphi links to external libraries very differently than C++ does. I would not expect this kind of error to come from a Delphi-written library, even if it is being used in C++Builder. This is the kind of error you would see when C++ code calls a DLL function but the C++ project doesn't link to the DLL, since C++ uses different stages for compiling and linking. Delphi doesn't work that way.

 


 

08-12-2022, 06:38 PM:

 

I think AToZed just needs to add something like below to IWUtils.pas to fix it up for C++ Builder:

 

{$IFDEF CPUX64}

 

  (*$HPPEMIT '#pragma link "wininet.???"'*)

 

{$ELSE}

 

  (*$HPPEMIT '#pragma link "wininet.lib"'*)

 

{$ENDIF}

 

Probably an oversight.  Maybe also add a minimal C++ Builder project to FinalBuilder to detect errors like this.

 


 

08-13-2022, 07:23 AM:

 

Exactly (wininet.a)

 


 

08-22-2022, 07:06 AM:

 

Can you please tell me your C++ project linking options?

 

I believe MJS is right but not Delphi compiler (or unit test) nor C++ compiler (yes, maybe a unit test) can ever say me that.

 


 

08-22-2022, 10:58 AM:

 

The example contains a new, empty project.

 

As soon as linking is done without runtime packages, the error occurs.

 

Options->Packages->RuntimePackages: OFF