2011-12-23 3 views
1

XE2 이후로 Delphi 단위의 범위가 지정됩니다.mutiplatform을 빌드하기 위해 데이터 및 시스템 범위 단위 만 사용하는 것이 안전합니다

Unit Scope Names

Unit Names

인가가 난 단지 시스템을 사용하고 데이터 단위를 범위의 경우 내 코드는 멀티 플랫폼 모두 Mac과 Windows 대상에 대해 컴파일 될 것이라고 말할 권리?

그리고 나머지 Vcl, Winapi 및 Posix 참조는 조건부 컴파일 플랫폼 기호에 의해 관리되어야합니까?

+0

글쎄, 코드도 있습니다. 당신도 x-plat인지 확인해야합니다! –

답변

1

Data - 일반적으로 아니오. 예를 들어 Data.DBXMsSQL (SQL Server dbExpress 드라이버)은 Windows에서만 지원됩니다. 또한 SystemData "루트"범위는 Win 하위 범위 일 수 있으며 Windows에서만 지원됩니다. 예 : Data.Win.ADODB (dbGo) 또는 System.Win.Registry (Windows 레지스트리). 그 외에도 SystemData은 교차 플랫폼입니다. 또한 Data의 경우 DataSnap 범위는 크로스 플랫폼입니다.

Vcl, WinapiPosix 당신은 IFDEF 할 수 있습니다. 다른 옵션은 uses에 플랫폼 특정 애플리케이션 유닛과 IFDEF를 생성하고 사용하는 것입니다.