January 3, 2010 at 4:39 pm
I created a SSIS package using Visual Studio 2008. On the flow i have a script Task. The script for this task is using a third party component. When running the code i am getting this error:
Message: System.Reflection.TargetInvocationException: Exception has been thrown by the target of an invocation. ---> System.IO.FileNotFoundException: Could not load file or assembly 'Interop.Nsdpgp3Lib, Version=1.0.0.0, Culture=neutral, PublicKeyToken=null' or one of its dependencies. The system cannot find the file specified.
File name: 'Interop.Nsdpgp3Lib, Version=1.0.0.0, Culture=neutral, PublicKeyToken=null'
The reference cannot be loaded and the object cannot be created. My question is does the DLL needs to be on a special folder and also on the GAC? It seems that this was a requisite on previous versions but not sure about 2008. The issue is that the DLL does not have a strong name.
thanks
January 3, 2010 at 7:08 pm
You are getting this from your workstation? Do you have 2005/2008 installed on the same system? If so, you have to make sure it is installed in the proper directory. The GAC is version specific.
Josef Richberg
2009 Exceptional DBA
http://www.josef-richberg.squarespace.com
http://twitter.com/sqlrunner
January 4, 2010 at 7:41 am
I only have 2008 but i dont think that is my issue. I just need to know if the reference DLL needs to be on the GAC.
Thanks
January 4, 2010 at 8:23 am
In SSIS 2008, the custom managed assembly can be stored in any folder on your local machine. For SSIS to find the managed assembly at run time, do the following:
1. Sign the assembly with a strong name.
2. Install the assembly in the GAC on the computer on which the package is run.
January 4, 2010 at 9:26 pm
Thanks, i added to the GAC but also added to the .NET windows folder (C:\Windows\Microsoft.NET\Framework\v2.0.50727). That took away the error not finding the DLL but then i was getting another error. After looking at the settings for the package it was set that if the SSIS engine was 64 to run the package under that engine. My dll does not run under 64 so i changed it to false and is now fully running.
Thanks for the help 🙂
Viewing 5 posts - 1 through 4 (of 4 total)
You must be logged in to reply to this topic. Login to reply