Looking at the new Delphi XE2 with Firemonkey. Considering that it compiles for Windows, Mac OSX and iOS, VCL components are useless in a FireMonkey application.
My question is: Is there/will there be an Indy Firemonkey Edition? Cause I seriously need the IdHTTP.Post();
. If not, is there a way to do this in FireMonkey?
I have been googling for quite awhile now, not finding anything. :S
VCL
meansVisual Component Library
. There's nothing aboutIndy
that is "visual" (meaning "seen at runtime"), meaning that "VCL components are useless in aFireMonkey
application" has no relevance toIndy
.You can create a new
FireMonkey HD
application inDelphi XE2
, targetOS X
, and theIndy
component pages are still available in the IDE, meaning that they are compatible with supportedFireMonkey
cross-platform targets. They're also available forFireMonkey HD
Windows targets (32 and 64 bit).I made a client server example using tcp indy http://www.freelancecode.net/community/viewtopic.php?f=35&t=246
Indy ships with the IDE (and has since D6) so there is nothing extra to buy if you already have XE2 installed. Also, Indy is open-source, so you can upgrade an Indy installation using source code from Indy's public access SVN server or mirror.
Regarding FireMonkey, Indy does work in FireMonkey. Indy uses whatever the native socket API is on a given platform (WinSock on Windows, Posix on Mac, libc on Kylix, etc).
The only known gotcha with Indy under FireMonkey at the moment is the
TIdAntiFreeze
component is not available at design-time. The IDE cannot resolve it correctly due to the non-standard way it is packaged (to be adressed in Indy 11). You can instantiate it programmably in code at run-time, though.The Components Not Used in iOS Apps DocWiki page for Delphi XE2 lists most of the Indy classes: