1

I have an SSIS Package that utilizes a COM Interop (Interop.RFCOMAPILib.dll) around RightFax's COM API (rfcomapi.dll).

The Interop assembly has been GAC'd so that we can use it within the SSIS package

The package runs just fine on my local machine. But it also works just fine on the server if it is manually started (meaning all of the configuration on the server is correct)


(source: codinghorror.com)

But when we go to put the package on a scheduled job (on the same server that it we were able to manually run it on) and have the job start the package it fails on the following line.

Dim faxServer As New FaxServerClass()

and with the following error

Error: 2009-07-16 15:32:01.39
    Code: 0x00000002
    Source: Send PO Notification Faxes and Mark as Processed 
    Description: The script threw an exception: Object reference not set to an instance of an object.
End Error

This line is the first time in the entire package that a class is trying to be instantiated from the COM Interop assembly.

What could be going on? A threading issue or something?

Community
  • 1
  • 1
Jon Erickson
  • 112,242
  • 44
  • 136
  • 174
  • 2
    +1: Simply for the works on my machine call out... If I had a buck for every time I wanted to get away with that..... – RSolberg Jul 17 '09 at 00:07

2 Answers2

1

It turns out that the COM Interop assembly had issues running in 64bit (which the server was on) we switched it to 32bit and it ran fine.

Jon Erickson
  • 112,242
  • 44
  • 136
  • 174
0

Try Method 3 from this support article.

Change the SSIS Package ProtectionLevel property to EncryptSensitiveWithPassword. This setting uses a password for encryption. You can then modify the SQL Server Agent job step command line to include this password.

JP Alioto
  • 44,864
  • 6
  • 88
  • 112