An extension DLL is a specially written dynamic linked library that enables SoftCopy to work non-interactively.
Normally, when SoftCopy encounters a print job, it pops up a dialog box to ask the user for the output filename and image type. However, when the extension DLL is installed, SoftCopy will request the extension DLL for the output filename and image type instead.
In addition, when a print job is completed, SoftCopy will do nothing by default. However, with the extension DLL installed, SoftCopy will call a function in the extension DLL instead. This allows the extension DLL to perform any postprocessing operations such as displaying an alert to the user etc.
There are three types of extension DLLs: Win32 DLL, ActiveX DLL and .NET assembly. They export specific functions that can be called by another process. Certain development platforms, such as Visual Basic, can only generate ActiveX DLLs, while others such as Visual C++ can generate both Win32 and ActiveX DLLs. The more recent .NET development tools only generate .NET assemblies. The choice largely boils down to your development platform and the DLL type that you are more familiar with.