Безопасно ли использовать только модули Data и System для построения mutiplatform
Начиная с XE2, модули Delphi ограничены.
Правильно ли говорить, что если я буду использовать только модули System и Data, мой код будет мультиплатформенным и скомпилированным для целей Mac и Windows?
а остальные ссылки на Vcl, Winapi и Posix должны определяться символами платформы условной компиляции?
1 ответ
Data
- в общем нет. Например, Data.DBXMsSQL
(Драйвер SQL Server dbExpress) поддерживается только в Windows. Также System
а также Data
"корневые" области могут иметь Win
subscope, поддерживается только в Windows. Например, Data.Win.ADODB
(dbGo) или System.Win.Registry
(Реестр Windows). Кроме того System
а также Data
кроссплатформенные. Дополнительно к Data
DataSnap
сфера кроссплатформенная.
Vcl
, Winapi
, а также Posix
Вы можете IFDEF. Другой вариант - создавать и использовать модули приложений для конкретной платформы и использовать их в uses
,