Installing the Microsoft Cluster Server SDK

The Microsoft® Cluster Server SDK supports Microsoft Developer Studio™ for Visual C++ version 4.2 and Microsoft Visual Studio™ for Visual C++ version 5.0. The steps for installation are slightly different depending on the development environment you elect to use.

    To install the Microsoft Cluster Server SDK
  1. Install Microsoft Windows NT® Server network operating system version 4.0 with Service Pack 3.
  2. Install Microsoft Cluster Server, selecting either Form a New Cluster if your development machine is the first member of the cluster, or Join an Existing Cluster if another machine has already established the cluster. When asked, specify a disk on the shared SCSI bus to use as the quorum resource.

    Although it is possible to create cluster-aware applications and DLLs on a non-clustered system, keep in mind that you will be need a two-machine cluster for testing. Two nodes are needed to successfully test failover. Therefore, it makes sense to do your development on a machine that is a member of an active cluster.

    For more information about the installation process, see the Microsoft Cluster Server Administrator's Guide.

  3. Verify that you have either Microsoft Visual C++® version 4.2 or version 5.0 with the Unicode MFC libraries and the MIDL compiler version 3.00.44 or greater. The MIDL compiler is available with the Microsoft Platform SDK.
  4. If you have Visual C++ version 4.2, download the Visual C++ 4.2b Technology Update from the Downloads and Patches area of the Visual C++ home page on the web located at http://www.microsoft.com/visualc.
  5. If you have Visual C++ version 4.2, install the Active Template Library (ATL) version 2.0 or greater. With Visual C++ version 5, ATL 2.1 is included.
  6. If you will be programming in Microsoft Visual Basic®, verify that you have Microsoft Visual Basic version 4.0 or greater on your machine.
  7. Install the Cluster Server SDK by running the SETUPSDK.EXE program from the SDK directory of the installation CD. The SETUPSDK program will ask for the location of the root directory of your Microsoft Visual C++ development environment and place its files in the appropriate subdirectory.

    The Cluster Server SDK contains header files, libraries, interface definition languages files, and sample code. It also contains a custom Resource Type AppWizard, accessible through the development environment of Microsoft Visual C++, that creates skeleton versions of resource and Cluster Administrator extension DLLs.

When you have finished installing, you will notice that:

The following table describes the SDK files that are added to directories in your Visual C++ version 4.2 development environment:

Directory Cluster Server SDK File
BIN Cluster Administrator extension registration program (REGCLADM.EXE).
HELP Documentation files (MCMSDK files).
INCLUDE CLUSAPI.H, RESAPI.H, CLUADMEX.H, CLUADMEX.IDL, and MSCLUS.IDL.
LIB CLUADMEX, CLUSAPI, and RESUTILS libraries and the MSCLUS type library.
SAMPLES SmbSmp is a resource DLL, written in C.

SmbSmpEx is a Cluster Administrator extension DLL for a File Share resource, written in C++.
TEMPLATE Resource Type AppWizard (RESTYPAW.DLL).

The following table describes the SDK files that are added to directories in your Visual C++ version 5.0 development environment:

Directory Cluster Server SDK File
BIN Cluster Administrator extension registration program (REGCLADM.EXE).
HELP Documentation files (MCMSDK files).
INCLUDE CLUSAPI.H, RESAPI.H, CLUADMEX.H, CLUADMEX.IDL, and MSCLUS.IDL.
LIB CLUADMEX, CLUSAPI, and RESUTILS libraries and the MSCLUS type library.
SAMPLES SmbSmp is a resource DLL, written in C.
SmbSmpEx is a Cluster Administrator extension DLL for a File Share resource, written in C++.
SharedIDE Resource Type AppWizard (RESTYPAW.DLL).

SmbSmp and SmbSmpEx demonstrate how to write a basic resource DLL and a Cluster Administrator extension DLL, respectively. The sample directories contain the source code and all other supporting files needed to build these DLLs. Because these samples manage the same resource type, they are stored in a single workspace and use a single makefile.

Another sample, DebugEx, is installed in the cluster directory of your system directory, typically C:\WINNT\CLUSTER. DebugEx is a Cluster Administrator extension that you can use to debug your resource DLL. To set up DebugEx, specify the debugger that you wish to use. If the resource is configured to run in its own Resource Monitor, the Cluster Service will attach the specified debugger to the Resource Monitor for that resource after it has started but before any entry points in the resource DLL have been called. The common resource property, DebugPrefix, holds the path to the debugger that will be attached to the Resource Monitor for the resource.