You can an “Invalid Pipeline Component” error when you browse to a .DLL in the “Choose Toolbox Items” dialog box.
“You have selected an invalid pipeline component assembly. Please check security settings for the assembly if you are loading it from an UNC path.”
This Patric Wellink blog put on the right path to solving, but it was not very clear exactly what to do.
The following steps solved for me:
1. Find your namespace in your code, and copy it:
2. Right click on the Pipeline Components Project in Visual Studio Solution Explorer.
Paste the namespace above into the “Default namespace” below.
See below, how the value in the red box is different from the namespace in the red box above.
I used the BizTalk Pipeline Component Wizard available for free download here: https://btsplcw.codeplex.com. It automatically creates the .resx (resource) file. But then I changed the namespace in the code, but not in the project properties. I believe the resource file inherits the namespace from the project properties. And if your code has a different namespace, that is the cause of the problem.
You can also work around by not using the resource manager. You can hard-code some of the names that are in the resource, such as: ComponentDescription, ComponentName, ComponentVersion.
At first I started in that direction, but hit a road block on how to load an icon properly.
You can also get the error if you don’t have the appropriate attributes “mark up”, such as:
[ComponentCategory(CategoryTypes.CATID_PipelineComponent)] (see http://bencops.blogspot.com/2006/02/you-have-selected-invalid-pipeline.html).