Run SSIS Package from VB.Net 2008 program

  • Have been creating packages for various purposes for several years. Love to work with them, they can do so much. However, now I need to run a package from a program that will be put on users' pc's. The code I originally used works great in development. See below:

    Imports System.IO

    Imports Microsoft.SqlServer

    Imports Microsoft.SqlServer.Dts.Runtime

    Imports System.Data

    Imports System.Data.SqlClient

    Public Class Form1

    Private Sub btnRunPkg_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles btnRunPkg.Click

    Try

    Dim app As New Application

    Dim pkg As New Package

    Dim pkgResults As DTSExecResult

    app.PackagePassword = "temp"

    pkg = app.LoadPackage("\\server\SSISPackages\myPkg.dtsx", Nothing)

    pkgResults = pkg.Execute()

    lblProgress.Text = pkgResults.ToString

    Catch ex As Exception

    MsgBox(ex.ToString)

    End Try

    End Sub

    However, when put on a test pc like the users have it errors saying: "MS.SqlServer.Dts.Runtime.DtsComException: An Integration Services class cannot be found." In essence it says to make sure Integration Services is installed on the computer running the application and to make sure it is 64 bit if the app is 64 bit. Is IS really needed on the client computer to run this package???? :w00t:

    The cost of licensing prohibits that so how can I set it up so users can run this package with my vb.net program installed on their pc's?

  • The short answer is - Yes, you do need to install SSIS on the client machine.

    Your application needs to be able to load the SSIS binaries just the same as when it is trying to instantiate any other object from within your application. You can still load/run SSIS packages that are stored on another server (subject to permissions etc).

    As for licensing - I can't answer that one. Maybe someone else can help out there.

Viewing 2 posts - 1 through 1 (of 1 total)

You must be logged in to reply to this topic. Login to reply