Hi, welcome back,
We may want to get the list of Active Directory Providers ("LDAP:", "WinNT:", "IIS:"...) with .NET the same way we do it with this VBScript:
Set ads = GetObject("ADs:") For Each provider In ads Wscript.Echo provider.Name Next
The information we need is here in the registry: HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\ADs\Providers. So the following sample code will get the info we need:
using Microsoft.Win32; ... // Get the HKLM registry key RegistryKey RegKey = Registry.LocalMachine; // Open the sub-key which contains all the providers RegistryKey ProviderKey = RegKey.OpenSubKey(@"Software\Microsoft\ADs\Providers"); // Get the list of the sub-keys string[] SubKeys = ProviderKey.GetSubKeyNames(); // Create the string array which will hold the provider list string[] ListOfProviders = new string[SubKeys.Length]; // Now add all providers to the array for (int Count = 0; Count < SubKeys.Length; Count++) { ListOfProviders[Count] = SubKeys[Count] + ":"; } // Show the list of providers foreach (string providerName in ListOfProviders) { MessageBox.Show(providerName); } ...
I hope this helps.
Cheers,
Alex (Alejandro Campos Magencio)