December 16, 2013 at 8:44 am
I have a vendor provided connection manager (Vendor is Advent Geneva). The connection manager is registered in the GAC and works fine in BIDS 2008. We are doing a Geneva upgrade and we've set up to use SQL Server 2012 (which the vendor says is supported). The Geneva Connection Manager DLL is installed in the GAC but I'm not seeing it as an available connection manager.
Any thoughts on how to get a custom SSIS Connection Manager intended for 2008 to show up in the 2012 environment? Is this as simple as re-registering the DLL or is there something special I need to do to allow 2012 to pull in the Connection Manager.
Any help here is appreciated!
Thanks James
December 17, 2013 at 8:12 am
OK, so the vendor replied to me with the information I needed specific to them but was going to share the "gist" of it if anyone else encounters a custom connectionmanager that works in 2008 but is unavailable in 2012. It involves some DLL copying and pasting and then an edit to the config file of the SQL Server Data Tools IDE. YMMV but rather than leave the thread open and unanswered I figured I would share my information and hopefully this will assist someone down the line (or at least get someone going in the right direction to resolve their issue).
Locate your specific custom connections DLLs in the 2008 DTS\Connections directories and copy them to 2012 DTS\Connections directories (there may be two - one for data access and one for the UI as there were in my case):
Copy:
C:\Program Files (x86)\Microsoft SQL Server\100\DTS\Connections\CustomConnMgr.dll
C:\Program Files (x86)\Microsoft SQL Server\100\DTS\Connections\CustomConnMgrUI.dll
To:
C:\Program Files (x86)\Microsoft SQL Server\110\DTS\Connections
Also, check and copy Connection Managers here if applicable:
From:
C:\Program Files\Microsoft SQL Server\100\DTS\Connections\CustomConnMgr.dll
C:\Program Files\Microsoft SQL Server\100\DTS\Connections\CustomConnMgrUI.dll
To:
C:\Program Files\Microsoft SQL Server\110\DTS\Connections.
Next, there was a DLL for PipelineComponents. I had to copy the PipelineComponents DLL from 100 to 110 directories:
Copy from:
C:\Program Files\Microsoft SQL Server\100\DTS\PipelineComponents\CustomConn.dll
C:\Program Files (x86)\Microsoft SQL Server\100\DTS\PipelineComponents\CustomConn.dll
To respective 2012 directories:
C:\Program Files\Microsoft SQL Server\110\DTS\PipelineComponentsC:\Program Files (x86)\Microsoft SQL Server\110\DTS\PipelineComponents
I was then told to add these 3 DLLs (2 connections DLLs and 1 PipelineComponent DLL) to the GAC. I skipped this step as they were already part of the GAC as part of the 2008 install. If you have not added these 3 dlls to the GAC and you're pulling the DLLs from some installation path then add them to the GAC at c:\windows\assembly
Finally, go to devenv.exe.config file in the Visual Studio 10 IDE Common directory at : C:\Program Files (x86)\Microsoft Visual Studio 10.0\Common7\IDE
* Find devenv.exe.config, copy and paste it and back it up...most important step!
* Edit the devenv.exe.config file in notepad or notepad++ or whatever text editor you use.
* Find the key <UseSmallInternalThreadStacks enabled="true"/> in the config file and add the following code just below it.
<!-- BEGIN SSIS 2012 -->
<assemblyBinding xmlns="urn:schemas-microsoft-com:asm.v1">
<dependentAssembly>
<assemblyIdentity name="Microsoft.SqlServer.ManagedDTS" publicKeyToken="89845dcd8080cc91" culture="neutral" />
<bindingRedirect oldVersion="10.0.0.0" newVersion="11.0.0.0"/>
</dependentAssembly>
</assemblyBinding>
<assemblyBinding xmlns="urn:schemas-microsoft-com:asm.v1">
<dependentAssembly>
<assemblyIdentity name="Microsoft.SqlServer.DTSRuntimeWrap" publicKeyToken="89845dcd8080cc91" culture="neutral" />
<bindingRedirect oldVersion="10.0.0.0" newVersion="11.0.0.0"/>
</dependentAssembly>
</assemblyBinding>
<assemblyBinding xmlns="urn:schemas-microsoft-com:asm.v1">
<dependentAssembly>
<assemblyIdentity name="Microsoft.SqlServer.DTSPipelineWrap" publicKeyToken="89845dcd8080cc91" culture="neutral" />
<bindingRedirect oldVersion="10.0.0.0" newVersion="11.0.0.0"/>
</dependentAssembly>
</assemblyBinding>
<assemblyBinding xmlns="urn:schemas-microsoft-com:asm.v1">
<dependentAssembly>
<assemblyIdentity name="Microsoft.SqlServer.PipelineHost" publicKeyToken="89845dcd8080cc91" culture="neutral" />
<bindingRedirect oldVersion="10.0.0.0" newVersion="11.0.0.0"/>
</dependentAssembly>
</assemblyBinding>
<assemblyBinding xmlns="urn:schemas-microsoft-com:asm.v1">
<dependentAssembly>
<assemblyIdentity name="Microsoft.SqlServer.Dts.Design" publicKeyToken="89845dcd8080cc91" culture="neutral" />
<bindingRedirect oldVersion="10.0.0.0" newVersion="11.0.0.0"/>
</dependentAssembly>
</assemblyBinding>
<!-- END SSIS 2012 -->
So, there it is. That worked for me and I'm moving forward on this one. This resolved my issue so maybe it will help put someone in the right direction if they come across it themselves.
J
Viewing 2 posts - 1 through 1 (of 1 total)
You must be logged in to reply to this topic. Login to reply