Question

I've created a custom data source using the instructions given in the following link: http://msdn.microsoft.com/en-us/library/ms136088.aspx

However once i build the project and try to add the new datasource to the toolbox, i get the following error:

There are no components in 'C:\Somepath\bin\Debug\CustomDataSource.dll' that can be placed on the toolbox

following are the tools i've used:

To create and build the custom datasource; Visual Studio 2010 & build in Framework 3.5

To create the SSIS package SSIS - SQL Server 2008 R2 & SQL Server Business Intelligence Development Studio (VS2008)

Any help would be greatly appreciated.

Nandun

Was it helpful?

Solution

i found the answer to my problem; here's the solution and hope it helps someone.

ref - http://msdn.microsoft.com/en-us/library/ms403356.aspx

  1. copy the dll to the following folder(s). the exact folder depends on whether your on x64 or x86 (doesn't hurt to have it on both):

    C:\Program Files (x86)\Microsoft SQL Server\100\DTS\PipelineComponents
    C:\Program Files\Microsoft SQL Server\100\DTS\PipelineComponents

  2. Install the dll to your GAC. you will need to have it signed to do this.

  3. In BI Dev Studio, go to Tools > Choose Toolbox Items. you will find your data source in the "SSIS Dataflow Items" tab

For steps 1 & 2 you might find it helpful to have a post build event like follows:

"C:\Program Files (x86)\Microsoft SDKs\Windows\v7.0A\bin\NETFX 4.0 Tools\gacutil.exe" -u $(TargetName) 
"C:\Program Files (x86)\Microsoft SDKs\Windows\v7.0A\bin\NETFX 4.0 Tools\gacutil.exe" -iF $(TargetFileName) 
copy $(TargetPath) "C:\Program Files\Microsoft SQL Server\100\DTS\PipelineComponents" 
copy $(TargetPath) "C:\Program Files (x86)\Microsoft SQL Server\100\DTS\PipelineComponents"

Small Edit to the answer:

If you're using SSIS 2012 with BIDS 2010, the toolbox items get added automatically (i.e. u don't have to go to Tools > Choose Toolbox Items) you just need to copy it to the dll right places (ref - http://fendy-huang.blogspot.com/2011/09/how-to-add-ssis-custom-component-to.html):

C:\Program Files\Microsoft SQL Server\110\DTS\PipelineComponents   
C:\Program Files (x86)\Microsoft SQL Server\110\DTS\PipelineComponents   
C:\Program Files\Microsoft SQL Server\110\DTS\Tasks   
C:\Program Files (x86)\Microsoft SQL Server\110\DTS\Tasks

OTHER TIPS

There is a report here that a similar problem was resolved by making the class public. (Also, signing the assembly and placing it in the GAC.)

Here is a case where someone needed to to implement IComponent and inherit from Component class.

I see number of other posts when I google the error message. Did any of these help?

Licensed under: CC-BY-SA with attribution
Not affiliated with StackOverflow
scroll top