Platform SDK: Active Directory, ADSI, and Directory Services

Installing the Example Provider Component

After installing the ADSI SDK, from the installation directory, change directories to the samples\activeds\sampprov\setup subdirectory. Run install.bat as described in the README.TXT instructions.

For registry settings, under the HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\ADs\Providers subkey, the ADSI example provider component has the following subkeys and values:

ProgIDNamespace = SampleNamespace 

Under the HKEY_CLASSES_ROOT\CLSID subkey, provider namespace objects must have the following subkeys and values:

SampleNamespaceCLSID= Sample Namespace Object
SampleNamespaceCLSID\InProcServer32 = adssmp.dll
SampleNamespaceCLSID\InProcServer32\ThreadingModel=Both
SampleNamespaceCLSID\ProgID= Sample
SampleNamespaceCLSID\TypeLib=ProviderTypeLibCLSID
SampleNamespaceCLSID\Version = 0.0 

Under the HKEY_CLASSES_ROOT\CLSID subkey, provider top-level objects must have the following subkeys and values:

SampleCLSID = Sample Provider Object
SampleCLSID\InProcServer32 = adssmp.dll
SampleCLSID\InProcServer32\ThreadingModel=Both
SampleCLSID\ProgID= Sample
SampleCLSID\TypeLib=ProviderTypeLibCLSID
SampleCLSID\Version = 0.0 

For the specific example of the example provider component dll, the following registry entries are needed:

HKEY_LOCAL_MACHINE
    SOFTWARE
        +CLSID
        Sample
            Clsid          <No Name>:REG_SZ{323991f0-…}
        SampleNAMESPACE
            Clsid          <No Name>:REG_SZ{51d11c90--…} 

Other registry entries for the example provider component exist because the example provider component happened to implement its directory hierarchy in the registry. This in no way implies other providers would want to or should do the same.