How to fix snap-in failed to initialize

Author: NetworkAdminKB.com
Created: 2011-04-22
Modified: 2011-07-24

Issue:

You receive one or more of these messages when launching an MSC/MMC.  The CLSID may vary by the problem MSC/MMC, the CSLID shown below is for the tscc.msc or Terminal Services Configuration MMC.

 

Snap-in failed to initialize

  Name: - not available –

  CLSID: {B91B6008-32D2-11D2-9888-00A0C925F917}

 

 

Snap-in failed to initialize.

  Name: Terminal Services Configuration

  CLSID: {B91B6008-32D2-11D2-9888-00A0C925F917}

 

 

The select snap-in did not initialize properly

 

 

Cause:

The MSC file is not properly registered with the registry.  One or more of the following registry keys are missing, corrupted, or contain incorrect information, etc.

 

HKEY_CLASSES_ROOT\CLSID\{CLSID}

HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\MMC\SnapIns\{CLSID}

 

Other possibilities are missing or corrupted DLLs.

 

Solution:

The solutions may vary by what message you receive and you may receive different messages as you work through the issue.

 

Issue #1

Name: - not available –

Indicates the HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\MMC\SnapIns\{CLSID} is missing, corrupted, etc.

 

On a working computer, search the above registry for the MMC snap-in name.  You should find the corresponding CLSID and export it, then import it to the problem computer.

 

Issue #2

When the Name: Snap-in name is present the most likely cause is the HKEY_CLASSES_ROOT\CLSID\{CLSID}  key is missing or corrupted.

 

Each snap-in CLSID for Issue #1 must also registered in the HKEY_CLASSES_ROOT\CLSID location with the same CLSID.  Export the appropriate CLSID from a working computer, and import the registry setting to the problem computer.

 

Issue #3

If the error message is simply The selected snap-in did not initialize properly, a DLL may be corrupted, or a registry key for a DLL is missing.

 

To replace a corrupted DLL, boot into safe mode, delete the DLL, then copy a new DLL.  Do not copy over an existing DLL.

 

You may need to use Registry Monitor or Process Monitor from Microsoft on a working computer to determine which registry keys and/or files are missing on the failed computer.

 

General steps to solve the Issue #3

Solving for issue #3 requires the most work, and process of elimination.  Find a computer in which the MMC is working for comparison.

 

On the working computer, check the shortcut for the appropriate MSC file name.  Then find the associated DLLs by using Process Monitor or research on the internet, etc.  After the correct files are determined check the failed computer for any missing files and restore them as needed. 

 

Next you need to check the registry on the working computer, using the CLSID search the registry for the associated MMC CLSID the following registry keys.

 

HKEY_CLASSES_ROOT\CLSID\{CLSID}

HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\MMC\SnapIns\{CLSID}

 

Export the registry {CLSID} keys from the working computer to the failed computer, then reboot the failed computer.

 

The next step would be to use Registry Monitor on the failing computer and configure filters just for the mmc.exe process.  Launch the MMC/MSC and note what line is last displayed, check the lines immediately prior to this line for result NOTFOUND.  Pay close attention to HKCR and HKLM, you can usually ignore the HKCU and HKU subkeys.

 

Finally, use Regedit on the working computer and look for the possible registry keys that failed with NOTFOUND.  If you find the missing registry keys on the working computer export them and import them on the failing computer.

 

Exmaple:

 

The screen shot above was what I use to determine that tscc.msc was missing key registry setting for the cfgbkend.dll associated with the {BB0D7187-3C44-11D2-BB98-3078302C2030} CLSID.  Once I found these settings on a working computer and exported them to the failing computer I resolved my problem.

 

Here are the final registry imports I required to get tscc.msc to work properly.

 

[HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\MMC\SnapIns\{B91B6008-32D2-11D2-9888-00A0C925F917}]

"NameString"="Terminal Services Configuration"

"About"="{B91B6008-32D2-11D2-9888-00A0C925F917}"

 

[HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\MMC\SnapIns\{B91B6008-32D2-11D2-9888-00A0C925F917}\NodeTypes]

 

[HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\MMC\SnapIns\{B91B6008-32D2-11D2-9888-00A0C925F917}\NodeTypes\{FE8E7E84-6F63-11D2-98A9-00A0C925F917}]

 

[HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\MMC\SnapIns\{B91B6008-32D2-11D2-9888-00A0C925F917}\StandAlone]

 

[HKEY_CLASSES_ROOT\CLSID\{B91B6008-32D2-11D2-9888-00A0C925F917}]

@="Compdata Class"

 

[HKEY_CLASSES_ROOT\CLSID\{B91B6008-32D2-11D2-9888-00A0C925F917}\InprocServer32]

@="C:\\WINNT\\system32\\tscc.dll"

"ThreadingModel"="Apartment"

 

[HKEY_CLASSES_ROOT\CLSID\{B91B6008-32D2-11D2-9888-00A0C925F917}\ProgID]

@="Compdata.Compdata.1"

 

[HKEY_CLASSES_ROOT\CLSID\{B91B6008-32D2-11D2-9888-00A0C925F917}\VersionIndependentProgID]

@="Compdata.Compdata"

 

[HKEY_CLASSES_ROOT\CLSID\{BB0D7187-3C44-11D2-BB98-3078302C2030}]

@="CfgComp Class"

 

[HKEY_CLASSES_ROOT\CLSID\{BB0D7187-3C44-11D2-BB98-3078302C2030}\InprocServer32]

@="C:\\WINNT\\system32\\cfgbkend.dll"

"ThreadingModel"="Apartment"

 

[HKEY_CLASSES_ROOT\CLSID\{BB0D7187-3C44-11D2-BB98-3078302C2030}\ProgID]

@="CfgComp.CfgComp.1"

 

[HKEY_CLASSES_ROOT\CLSID\{BB0D7187-3C44-11D2-BB98-3078302C2030}\VersionIndependentProgID]

@="CfgComp.CfgComp"

 

Article ID: 369, Created On: 9/20/2011, Modified: 9/20/2011