OVERVIEW OF VCLINK32 SDK    3/27/2001

A C++ project may access the Visual CADD DLLs in one of two ways: implicit or explicit linking. With implicit linking, the C++ project uses header files (*.h) to provide function prototypes of the external functions and links a LIB file to resolve those external functions into the respective external DLL.  The VCLink32.DLL provides the interface to the Visual CADD DLLs when using implicit linking. The C++ SDK includes these header and LIB files.

As new versions and updates of Visual CADD are released, the API will expand in functionality. In order to access the new routines an application will need to update the VCLINK32.LIB file to correspond with the new release. Although this VCLink32 SDK allows you to do this by building the VCLink32 project (.dsw or .dsp), it is unlikely you would ever need to do so, as a current LIB and DLL are included in a new C++ SDK whenever there are updates to the API.

With explicit linking, the C++ project uses calls to the Win32 API functions of LoadLibrary, GetProcAddress, and FreeLibrary, to load the Visual CADD DLLs and make explicit calls to the functions contained therein.  Neither VCLink32.DLL nor the LIB files are required for this approach.  However, the source code implementation of the required Win32 API function calls is required. The CPP files are included in this zip file for those who wish to dynamically link to the DLL through LoadLibrary and GetProcAddress (note that you also need to include the header files, included in the C++ SDK). The following CPP files must be included in your project:

VCMAIN32.CPP
VCTOOL32.CPP
VCTRAN32.CPP
VCUTIL32.CPP
VCDLG32.CPP


NOTES

If you should ever need to rebuild this VCLink32 project, keep the following in mind: 

-VCLINK32.LIB: This lib file is built with the MS Visual C++ compiler and intended for MSVC++ apps ONLY.

-VCLINKMS.LIB: This lib file is a renamed copy of VCLINK32.LIB. Many of the Visual CADD code samples require this naming convention. See the C++ SDK README file for more information. 

-VCLINKBC.LIB: This lib file is created by "ImpLib-ing" VCLINK32.DLL to create a Borland formatted equivalent of VCLINK32.LIB. For Borland C++ apps ONLY. To recreate this file, use Borlands Implib.exe utility. 

>From the dos prompt type: implib vclinkbc.lib vclink32.dll

NOTE: BE CAREFUL! Reversing the implib parameters destroys the DLL, trust me.

-When building an application in MS Visual C++ the project setting (C++/Code Generation/Calling Convension) must be changed to _stdcall. The default calling method is _cdecl.
		



