sgcWebSockets の条件付きコンパイル

· インストール

sgcWebSockets ライブラリには、すべての条件付きコンパイルが含まれる設定ファイルがソースフォルダーに含まれています。このファイルは sgcVer.inc です。

このファイルを開くと、多数の条件付きデファインが含まれていることがわかります。基本的に Delphi / C++ Builder の各バージョンに対して、複数の条件付きデファインが定義されています。たとえば、Rad Studio 10.3 の場合は以下のようになっています。


{$IFDEF VER330} { Delphi  10.3 }
  {$DEFINE D2006}
  {$DEFINE D2007}
  {$DEFINE D2009}
  {$DEFINE D2010}
  {$DEFINE DXE}
  {$DEFINE DXE2}
  {$DEFINE DXE3}  
  {$DEFINE DXE4} 
  {$DEFINE DXE5} 
  {$DEFINE DXE6} 
  {$DEFINE DXE7} 
  {$DEFINE DXE8} 
  {$DEFINE D10} 
  {$DEFINE D10_1}
  {$DEFINE D10_2}
  {$DEFINE D10_3}
  {$DEFINE INDY10_1}
  {$DEFINE INDY10_2}
  {$DEFINE INDY10_5_5}
  {$DEFINE INDY10_5_7}
  {$DEFINE INDY10_6}
  {$DEFINE INDY10_6_2_5366}
  {$IFNDEF BCB}
    {$IFNDEF MACOS}
    {$IFNDEF ANDROID}
      {.$DEFINE IWIX}
      {.$DEFINE IWXI}
      {.$DEFINE IWXIV}  
    {$ENDIF}
    {$ENDIF}
    {$IFNDEF NEXTGEN}
      {$DEFINE SGC_JSON_INTF}
    {$ENDIF}
  {$ENDIF}
{$ENDIF} 

コンパイラーブロック

最初のディレクティブは IDE バージョンを指しており、各 IDE バージョンには固有のコンパイラーがあります。通常、これらを変更することは推奨されません。

次に、Indy バージョンに対応するいくつかのコンパイラーディレクティブがあります。デフォルトでは、sgcVer.inc は Rad Studio に付属する Indy バージョンで動作するよう設定されていますが、Indy ライブラリを最新バージョンに更新することが有用な場合もあります。ここで使用する Indy バージョンをカスタマイズし、コンパイラーディレクティブをコメントアウトまたはコメント解除できます。

最後に、Intraweb 用のいくつかのコンパイラーディレクティブがあります。Intraweb は新しいバージョンでは非推奨となっており、デフォルトでは不要ですが、Intraweb コンポーネントを使用したい場合は、ここで使用する Intraweb バージョンを設定できます。