Macros and compiler directives for UltraLite C/C++ applications

Unless otherwise stated otherwise, directives apply to both embedded SQL and C++ API applications.

You can supply compiler directives:

  • On your compiler command line. You commonly set a directive with the /D option. For example, to compile an UltraLite application with user authentication, a makefile for the Microsoft Visual C++ compiler may look as follows:
    CompileOptions=/c /DPRWIN32 /Od /Zi /DWIN32
    /DUL_USE_DLL 
    
    IncludeFolders= \
    /I"$(VCDIR)\include" \
    /I"$(SQLANY11)\SDK\Include"
    
    sample.obj: sample.cpp
     cl $(CompileOptions) $(IncludeFolders) sample.cpp

    VCDIR is your Visual C++ directory and SQLANY11 is your SQL Anywhere installation directory.

  • In the compiler settings window of your user interface.
  • In source code. You supply directives with the #define statement.

UL_AS_SYNCHRONIZE macro
UL_SYNC_ALL macro
UL_SYNC_ALL_PUBS macro
UL_TEXT macro
UL_USE_DLL macro
UNDER_CE macro
UNDER_PALM_OS macro