Hey,
I developed an WinForms App and SSIS package which I want to run using this App.\
I'm using folliwng script to run it:
using Microsoft.SqlServer.Dts.Runtime;
class PackageExecutor { public string PackageFolder = ConfigurationManager.AppSettings["PackageFolder"]; Logger _logger = new Logger(); public void ExecutePackage(string location, string packagename) { Package pckg; Microsoft.SqlServer.Dts.Runtime.Application app; DTSExecResult pckgResult; Variables vars; app = new Microsoft.SqlServer.Dts.Runtime.Application(); pckg = app.LoadPackage(location, null); vars = pckg.Variables; vars["User::PckgConnection"].Value = ConfigurationManager.ConnectionStrings["SSIS"].ConnectionString; pckgResult = pckg.Execute(null, vars, null, null, null); if (pckgResult == DTSExecResult.Success) { MessageBox.Show("Wykonano poprawnie"); string msg = DateTime.Now.ToString() + " " + ExtensionMethods.LoginData.strUserName + " " + packagename + " Success"; _logger.WritePackageLog(msg); } else { string err = ""; foreach (Microsoft.SqlServer.Dts.Runtime.DtsError local_DtsError in pckg.Errors) { string error = local_DtsError.Description.ToString(); err = err + error; } MessageBox.Show("Wystąpił błąd więcej informacji w logu."); string msg = DateTime.Now.ToString() + " " + ExtensionMethods.LoginData.strUserName + " " + packagename + " Failure with error: " + err; _logger.WritePackageLog(msg); } } }
This one works perfectly on my PC which have SSIS installed, however a client is reciving an error:
"An Integration Services class cannot be found. Make sure that Integration Services is correctly installed on the computer that is running the application. Also, make sure that the 64-bit version of Integration Services is installed if you are running a 64-bit application".
Inside SSIS project I turned of "Run64BitRuntime".
I'm running on x64 bit windows with x32 SSIS installed, can't tell on what Windows (x32/x64) is client running. I can get that info if necessary.
Any idea how may I solve this? Point of everything was to run SSIS package placed on server on any machine without installing any additional software there.