Delphi and windows are tightly coupled, so its API introduces a lot of Windows concepts (such as file searches, opening and loading library files, etc.).
FreePascal is designed to be portable, so features that are too close to windows are discarded. Here are the points to note:
Widestrings. Widestring management is isn't automatic in free Pascal, since various platforms
has different ways of dealing with widestring encodings and multi-byte Character sets. Ip
Supports widestrings, but could not use the same encoding as on Windows.
Note that in order to has correct widestring management, you need to include the cwstring
Unit on Unix/linux platforms:this unit initializes the Widestring manager with the necessary
Callbacks which use the C library to implement all needed widestring functionality.
- FreePascal the console application is generated by default. You need to enable this feature when building a Windows GUI application:
{$APPTYPE GUI}
- The Windows unit provides access to most of the Win32 core API features. Some of these calls pass parameters (the var keyword) through pointers (just like the C language) rather than by reference. For most of these types of calls, FreePascal provides an overloaded version.
- A wide string.
FreePascal Users Guide 2.6 7.3.2 Missing Calls/api incompatibilities