Versions of PDFNet SDK for C++ static libraries.

Q:

With PDFNet SDK for C++ you are delivering for different libraries:
- pdfMT11.lib Multithreaded, /MT, _MT
- pdfMTD11.lib Multithreaded, debug, /MTd, _DEBUG _MT
- pdfMD11.lib Multithreaded DLL, /MD, _MD
- pdfMDD11.lib Multithreaded DLL, debug, /MDd, _DEBUG _MD

I would like to understand them more. Can you describe their purpose
and their goal?

What libraries are you delivering with PDFNet SDK for the other
platforms (Linux, Mac OS X)?
----
A:

These libraries correspond to different versions of MS C run-time
libraries as well as their associated compiler options and
preprocessor directives.

The choice of PDFNet library would depend on the ' C/C++' > 'Code
Generation' > 'Runtime Library' setting in your application project
properties dialog:

Multithreaded, /MT, _MT -> Use pdfMT11.lib
Multithreaded, debug, /MTd, _DEBUG _MT -> Use pdfMTD11.lib
Multithreaded DLL, /MD, _MD -> Use pdfMD11.lib
Multithreaded DLL, debug, /MDd, _DEBUG _MD -> Use pdfMDD11.lib

Please note that if your application is not statically linked to the
run-time library, you will need to make sure that Visual C++ Runtime
DLL-s are present on user machines. To avoid this requirement it is
typically a better idea to statically link with the run-time. In this
case your application or DLL will not need to assume that run-time
libraries are present on client machines.

The main difference between 'debug' and 'release' versions is that
debug versions include extra code for error checking. Also debug
libraries track allocated memory and are better suited during
application debugging.

For more information on Microsoft C run-time libraries, compiler
options and preprocessor directives, please see:
  http://msdn2.microsoft.com/en-us/library/abx4dbyh(VS.80).aspx

or search for "C Run-Time Libraries (CRT)".

What libraries are you delivering with PDFNet SDK for the other platforms (Linux, Mac OS X)?

On other platforms (Linux, Mac OS X, Solaris) we are also delivering
static libraries for GCC compiler(s). In some cases we also offer
libraries packaged as shared object (so) files.

Am I right with the following statements:
- Multithreaded DLL are the dynamic libraries and
- the Multithreaded ones are static?

All 4 versions of PDFNet library are static, but they link to
different VS C Runtime libraries. If you are using DLL run-time
linking (/MD or /MDd) your application/DLL will depend on msvcr80.dll
etc. If you are not using DLL run-time linking (/MT or /MTd) your
application/DLL will not depend on presence of 'msvcr80.dll' on client
machines.

Can you tell me why these libraries are called "Multithreaded"?

They are called Multithreaded because they link to VS C Runtime that
is safe for use in multi-threading applications.