Cannot add 2005 component to Toolbox

Oct 11, 2010 at 8:42 PM

I am trying to install and use the Multiple Hash 2005 component, but after a successful installation, it is not available to add to the BIDS 2005 toolbox via Choose Toolbox Items (SSIS Data Flow Items) tab.  (Note:  I have successfully installed and added the 2008 component on a different PC.)

Environment:

OS Name: Microsoft(R) Windows(R) Server 2003 Enterprise x64 Edition
Version: 5.2.3790 Service Pack 2 Build 3790
Microsoft Visual Studio 2005 Version 8.0.50727.42
Microsoft .NET Framework Version 2.0.50727 SP2
SQL Server 2005 SP3

I have confirmed that the MultipleHash2005.dll is located in the following directories:

C:\Program Files (x86)\Microsoft SQL Server\90\DTS\PipelineComponents\
C:\WINDOWS\assembly\                            ---> version 1.0.0.0, public key token 51c551904274ab44

I have restarted Visual Studio, and rebooted the PC.  I still cannot get the component to show up in the toolbox.

Any suggestions?  thanks!

 

Coordinator
Oct 12, 2010 at 7:55 AM

My only suggestion is to try the copying the DLL file to C:\Program Files\Microsoft SQL Server\90\DTS\PipelineComponents\, and then after restarting visual studio attempting the choose items.  Given that the DLL is in the two location's it is supposed to be, it's rather strange the BIDS can't see it.

I haven't got that particular environment for testing (It's got SQL 2008 on it at the moment), so I will have to setup a new test machine.

 

Coordinator
Oct 13, 2010 at 12:21 PM

I have built a testing environment that is Windows 2003 R2 x64, SQL Server 2005 SP3, BIDS with VS2005 SP1.

The Multiple Hash component shows up in the Choose Toolbox Items, on the SSIS Data Flow Items tab.

If I remove the MultipleHash2005.dll file from C:\Program Files (x86)\Microsoft SQL Server\90\DTS\PipelineComponents\, then it doesn't show up in the Choose Toolbox Items.

If I remove permissions from the MultipleHash2005.dll file from C:\Program Files (x86)\Microsoft SQL Server\90\DTS\PipelineComponents\, then it doesn't show up in the Choose Toolbox Items.

If I ensure that my user account has permissions, then it shows back up in the Choose Toolbox Items.

 

Oct 13, 2010 at 6:41 PM

Thanks for the tips, but unfortunately this didn't work.  I was already administrator on the PC, but I gave full control to all users on the MultiHash2005.dll file and even the PipelineComponents folder.  No luck. 
I tried using gacutil.exe to uninstall and reinstall.  No luck.  I tried using the RESET TOOLBOX option on the Choose Toolbox Items dialogue box.  No luck.

Strangely, two of my teammates have been able to install it successfully, plus we were finally able to install it on our development database server.  However, I still cannot get it on my PC.  We are still in the process of comparing environments & service packs to see if we can identify any differences.

In order to get it to install successfully on the development database server, we had to add the MultipleHash2005.dll file to the directory located in the Registry Key (below), run the gacutil.exe, and reboot the server. 
HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\.NETFramework\AssemblyFolders\DTS Pipeline Components

 We really want to use this component, so any other ideas would be appreciated.  We are hesitant to use anything we cannot install every where\every time.  THANKS!

Coordinator
Oct 13, 2010 at 11:41 PM

The installer for MultipleHash has a "bad" assumption built into it that the location that BIDS and Integration Services will look for it's files is the default install location.

As evidenced by your development database server, this isn't the location in your case, hence the manual copy of the file requirement.  A reboot shouldn't have been required, and the DLL should already have been in the GAC, installed directly, rather than from the file path by the installer.

In a 64 bit environment, where the default installation location hasn't been done, there are two registry keys that BIDS uses to locate where to look.

  • HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\.NETFramework\AssemblyFolders\DTS Pipeline Components
  • HKEY_LOCAL_MACHINE\SOFTWARE\Wow6432Node\Microsoft\.NETFramework\AssemblyFolders\DTS Pipeline Components

Can you please check on your machine if these are not set to the following values?

  • c:\Program Files\Microsoft SQL Server\90\DTS\PipelineComponents
  • c:\Program Files (x86)\Microsoft SQL Server\90\DTS\PipelineComponents

And if not, then please copy the MultipleHash2005.dll to those locations, and see if it will then show up in the Choose Toolbox Items dialogue box.

 

I will roll my test machine back, and re-install with non-default path's and see if I can replicate the issue that way.

ps. I recommend using v1.3, as it doesn't have a potentially nasty issue with nulls and empty strings.  It was released last night.

nb. There will be a v1.3.1 when I work out how to do a lookup of a registry key to use as the file location in the installer.

Coordinator
Oct 14, 2010 at 12:50 PM

I have uploaded two new installers for Version 1.3

Can you please try these as they are working against my test server where the SSIS components are not in a standard location.

Keith.

Marked as answer by kmartin on 7/8/2014 at 6:35 AM
Oct 14, 2010 at 2:01 PM

Thanks Keith!  That worked perfectly!  I downloaded the new SetupMultipleHash2005_V1.3.exe and was able to successfully install it, add it to the toolbox, and use it in an SSIS package.  Thank you so much for your responsiveness!

We are planning to move forward with this component in our data warehouse ETL to replace the Checksum component that we were using before.  Unfortunately, the checksum component was not detecting a change when there were many fields with NULL values or bit data changes.

We are currently developing both SSIS 2005 & SSIS 2008 packages.  Do you know of any outstanding issues with this component (using the MD5 hash) that are currently not resolved?  Anything that would be a risk for us in a production environment?

Thanks again!

Coordinator
Oct 14, 2010 at 9:50 PM

I know of no issues with the 1.3 component.  (And if you encounter any I will be addressing them quickly as it's in use at other production sites including mine)...

1.3 was a bug fix to address what sounds like similar null issues as to your other component.