Hello,

I'm using the latest Synapse trunk (146) with RAD Studio XE (C++ personality).

I'm using FTPSend and I can use the class member functions with no problem, but when I try to use the extern functions FtpPutFile() and FtpGetFile(), I get a linker error. The code below shows the call from my application, the declaration in the HPP file, and the linker error. The linker seems to be looking for a function which has the letter "A" appended to the name. Is this a C++ name-mangling issue? I'm also using type SMTPSend in a very similar way, and I can call SendToEx(), with no trouble. Am I doing something wrong?

// Call to FtpPutFile() from application. All arguments are type UnicodeString. Ftpsend::FtpPutFile( TargetHost, TargetPort, FileName, FileName, UserName, Password );

// Declaration in FtpSend.hpp (generated by C++ Builder)
extern PACKAGE bool __fastcall FtpPutFile(const System::UnicodeString IP, const System::UnicodeString Port, const System::UnicodeString FileName, const System::UnicodeString LocalFile, const System::UnicodeString User, const System::UnicodeString Pass);

// Linker error message
[ILINK32 Error] Error: Unresolved external '__fastcall Ftpsend::*FtpPutFileA*(const System::UnicodeString, const System::UnicodeString, const System::UnicodeString, const System::UnicodeString, const System::UnicodeString, const System::UnicodeString)' referenced from C:\FENWAY\FTPSEND\OBJ\MAINFORM.OBJ

Thanks,

Joe
------------------------------------------------------------------------------
All of the data generated in your IT infrastructure is seriously valuable.
Why? It contains a definitive record of application performance, security 
threats, fraudulent activity, and more. Splunk takes this data and makes 
sense of it. IT sense. And common sense.
http://p.sf.net/sfu/splunk-d2d-c2
_______________________________________________
synalist-public mailing list
synalist-public@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/synalist-public

Reply via email to