Troubleshooting Class (.dll) Registration Issues with PDM Add-ins

 

This guide provides a number of solutions to the common error:

"Failed to extract add-in from '<PATH>\<ADD-IN NAME>.CAF' Class not registered."

This guide is partially derived from the SOLIDWORKS KB Articles "S-075202" and "S-05144".

 

p1.png

An example of the error affecting the "AddReferences" add-in.

 

Contents:

Out-of-date Add-ins

.NET Version Issues

Multiple CLSID Registrations

Incorrect Registry Permissions

Manual Registration

 

 

Out-of-date Add-ins

Please verify the version of the add-in specified in the error message. If it is out-of-date and a later version is available, please update it and re-test the issue.

Here is our guide to verifying and updating PDM add-ins:

 

Updating SOLIDWORKS PDM Add-ins

 

If the add-in is out-of-date and no later version exists (common with custom add-ins), please proceed to the next step, or remove the add-in if your company no longer uses it.

 

 

.NET Version Issues

Often this error occurs because a prior version of .NET is missing or disabled. Older PDM Add-ins require earlier .NET versions but newer Windows Operating Systems may only have current .NET enabled.

1. Go to Control Panel, then "Programs and Features".

2. Select "Turn Windows Features on or off".

3. Ensure that ".NET Framework 3.5" (includes .NET 2.0 and 3.0) and ".NET Framework 4.7" are checked.

4. Click the OK button.

5. Restart your computer and test the issue again.

 

 

Multiple CLSID Registrations

The ‘SWPDFTaskAddIn.dll‘ file is implemented as a COM class based on the C# programming language. Each COM class is identified by a CLSID, which is a unique 128-bit GUID that the server must register. The CLSID may be pointing to multiple versions of the DLL, which under certain conditions may result in failure to load or register the add-in.

 

 

Other SOLIDWORKS PDM Add-ins are also implemented as COM classes, and their respective CLSIDs will be specified in the error message:

 

p2.png

 

To troubleshoot this issue:

1. If you have a multiple vaults, make sure they all use the same version of the add-in.

2. Check for multiple CLSID registrations:

 

a. Close the Administration tool and exit SOLIDWORKS PDM from the tray icon if loaded.

 

b. Open the task manager and end the ‘explorer.exe’ process. Restart the process by going to ‘File’ > ‘New Task’ >  and then type ‘explorer’.

 

c. Browse to:

C:\Users\<USER_PROFILE>\AppData\Local\SolidWorks\SolidWorks Enterprise PDM\Plugins\<VAULT_NAME>

This is the location from which add-ins are extracted and registered.

 

d. Delete all folders in this location. The folders will look similar to {0C9509F7-6B90-41F9-BB83-14512459765E}

 

 

e. Open the Registry Editor (Start Menu search "regedit" > right-click > "run as administrator") and browse to the following key (substituting the bold ID with the one in your particular error message):

HKEY_CLASSES_ROOT\CLSID\{0C9509F7-6B90-41F9-BB83-14512459765E}

 

f. Export this key (right-click > export), and then delete it (right-click > delete).

 

g. Start Explorer, navigate to the vault, and then right-click to trigger the add-in registration. The client computer will retrieve the vault add-ins from the archive server, create folders with the GUID of each add-in, and then extract the add-in DLL, and register the DLLs.

 

 

 

Incorrect Registry Permissions

In a number of cases, incorrectly configured Windows permissions for the registry have caused Class Registration issues.

1. Open the Registry Editor (Start Menu search "regedit" > right-click > "run as administrator") and browse to the following key (substituting the bold ID with the one in your particular error message):

HKEY_CLASSES_ROOT\CLSID\{0C9509F7-6B90-41F9-BB83-14512459765E}

 

2. Right-click the key then select "Permissions":

 

p3.png

 

 

3. Click on "Advanced". Verify that your Local User account, Administrator Account and SYSTEM account have "Full Control".

 

p4.png

 

 

4. If you're missing permissions, click Add > Select a Principal, then add the user in the format DOMAIN\USER, select "Full Control", then click OK to confirm the changes.

 

p5.png

 

5. Reboot and re-test the issue.

 

 

Manual Registration

In some cases, performing a manual registration of the .dll through a Command Prompt window may resolve the issue:

1. Open a Windows command line by searching for "Command Prompt" in the Start Menu Search Bar, then right-click it and select "Run as Administrator".

2. Type regsvr32 "C:\path\Filename.dll” (where the filename is the dll file that appears in the error message).

3. Press Enter. 

4. If the file registers successfully, a message will appear to indicate this.

5. Re-test the issue after restarting your computer.

 

 

 

 

If you have any questions regarding the information above, please contact Hawk Ridge Systems Technical Support at 1-877-266-4469  (US), 1-866-587-6803  (CAN), or support@hawkridgesys.com.

 

Was this article helpful?
0 out of 0 found this helpful

Comments

0 comments

Please sign in to leave a comment.