Pipeline Component in BTDF

Topics: Bindings File, Settings Management and SSO
Jan 27, 2011 at 3:34 AM

i have created a pipeline receive component in my project and used in my Pipeline Project.

what changes should i make to my .btproj file to deploy my Project.



Jan 27, 2011 at 4:39 AM

Set <IncludePipelineComponents> to true and add an ItemGroup (like Schemas) named PipelineComponents.  Hopefully you added the pipeline component to a separate assembly from the rest of your artifacts.


Feb 1, 2011 at 11:07 AM

Thanks its working.

i got one doubt ,do i need to manually place the PipelineComponent dll file in this location "C:\Program Files (x86)\Microsoft BizTalk Server 2009\Pipeline Components" or it will get placed by the Biztalk Deployment framework itself.Please do clear this doubt.

here what i did is i have copied the dll and pasted it manually.but i am getting a warning saying that

"D:\Projects\BTDFPipelineProject\BTDFPipelineProject\BTDFPipelineProject.Deployment\BTDFPipelineProject.Deployment.btdfproj" (Deploy target) (1) ->
(DeployPipelineComponents target) ->
  MSBUILD : warning MSB3021: Unable to copy file "D:\Projects\BTDFPipelineProject\BTDFPipelineProject\BTDFPipelineProject.PipelineClassLibrary\bin\Debug\BTDFPipelineProject.PipelineClassLibrary.dll" to "C:\Program Files (x86)\Microsoft BizTalk Server 2009\Pipeline Components\BTDFPipelineProject.PipelineClassLibrary.dll". The process cannot access the file 'C:\Program Files (x86)\Microsoft BizTalk Server 2009\Pipeline Components\BTDFPipelineProject.PipelineClassLibrary.dll' because it is being used by another process.

    1 Warning(s)
    0 Error(s)

Time Elapsed 00:00:36.98



Feb 1, 2011 at 8:30 PM

You do not need to manually copy it there.  Pipeline component assemblies are often locked by BizTalk (or sometimes by Visual Studio), which is part of why the Deployment Framework must restart the host instances.


Feb 2, 2011 at 6:09 AM
Thanks Tom, But if iam not manually copying the pipeline component .dll file to the folder "C:\Program Files (x86)\Microsoft BizTalk Server 2009\Pipeline Components" then how will i be able to find the pipeline component in the toolbox when i create a Custom Pipeline Project,i am bit confused about it. Please clear my doubt. Thanks Mala.
Feb 2, 2011 at 10:57 PM

If you go to the pipeline designer and choose the Add Item function in the Toolbox, it should automatically show up under the BizTalk Pipeline Components tab once the DLL is present in the BizTalk PipelineComponents folder.  So you would just deploy once, then create your pipeline.

Now, due to Visual Studio's big issues with DLL locking, there is never a great way to work with references in the pipeline designer.  I sometimes add a project reference to my PipelineComponents project, sometimes let the Add Item dialog add a reference to BizTalk's PipelineComponents folder.  Either way, you will probably run into at least some issues with that DLL being locked by Visual Studio.  Particularly whenever you have opened the pipeline designer.


Feb 4, 2011 at 5:44 AM

thanks Tom.