XLL+ Class Library (7.0)

Project Settings

This topic describes the standard project settings created by the XLL+ AppWizard, and provides instructions for changing them.

Settings

Projects created by the XLL+ AppWizard have the following significant settings.

Section Setting Description
C/C++ Additional Include Directories The list of directories specified in the XLL+ IncludePath setting. By default, this contains the location of the XLL+ header files.
Debug Information Format This is set to Program Database (/Zi). It is essential that it not be set to Program Database for Edit & Continue (/ZI); /ZI will often cause XLL add-ins to fail to load.
Optimization For Debug configurations, optimization is disabled (/Od). For Release configurations, optimization is set to Maximum Speed (/O2). This setting may be changed by the developer to suit the requirements of a particular project.
Preprocessor Definitions WIN32 is set for all projects (required).
_DEBUG is set for debug configurations (required).
NDEBUG is set for release configurations (required).
XLL_LIB_MFC is set for MFC projects only. It must not be changed.
XLL_LIB_STL is set for STL projects only. It must not be changed.
WINVER=0x0400 supports the platform libraries provided with Visual Studio .NET. If later versions of the Microsoft Platform libraries are available, and lower versions of Windows do not need to be supported, it may be set to a higher version.
UNICODE and _UNICODE are set for Unicode builds only.
_MBCS is set for non-Unicode builds.
Enable C++ Exceptions This setting should support both C++ and C runtime exceptions. In VS 2005 and above, it is set to Yes With SEH Exceptions (/EHa); in VS .NET 2003, it is set to No, and /EHa is added explicitly to the Additional Options in the Command Line.
Runtime library For MFC builds, this is Multi-threaded DLL (/MD) or Multi-threaded Debug DLL (/MDd).
For STL builds, this is Multi-threaded (/MT) or Multi-threaded Debug (/MTd); it may be changed (see below).
Enable Run-time Type Info Yes. This setting is required.
Treat wchar_t as Built-in Type Yes.
Linker Output File $(OutDir)/[ProjectName].xll. Note that $(OutDir) may be a sub-directory of the project directory or a sibling, depending on whther you chose to create a directory for the solution when you invoked the AppWizard.
Additional Library Directories The list of directories specified in the XLL+ LibPath setting. By default, this contains the location of the XLL+ runtime library files.
Resources Additional Include Directories The list of directories specified in the XLL+ IncludePath setting. By default, this contains the location of the XLL+ header files, including the resource files which contain the XLL+ runtime messages.

C/C++ Runtime Library

For STL builds the C/C++ Runtime Library setting may be changed to use the runtime library in a DLL (/MD or /MDd). Changing the setting will automatically cause a different XLL+ runtime library to be used (see Runtime Libraries).

See Also

XLL+ Application Wizard - Application Settings | Runtime libraries