Безопасно ли использовать только модули Data и System для построения mutiplatform - PullRequest
1 голос
/ 24 декабря 2011

Начиная с XE2, единицы измерения Delphi ограничены.

Имена областей применения

Имена единиц

Правильно ли говорить, что если я буду использовать только модули System и Data, мой код будет мультиплатформенным и скомпилирован для целей Mac и Windows?

а остальные ссылки на Vcl, Winapi и Posix должны определяться символами платформы условной компиляции?

1 Ответ

1 голос
/ 25 декабря 2011

Data - в общем, нет. Например, Data.DBXMsSQL (драйвер dbExpress SQL Server) поддерживается только в Windows. Кроме того, System и Data «корневые» области могут иметь область действия Win, поддерживаемую только в Windows. Например, Data.Win.ADODB (dbGo) или System.Win.Registry (реестр Windows). Кроме того, System и Data являются кроссплатформенными. В дополнение к Data область действия DataSnap является кроссплатформенной.

Vcl, Winapi и Posix вы можете IFDEF. Другой вариант - создать и использовать модули приложений для конкретной платформы и IFDEF их в uses.

...