Home     Products      Support      Corporate     Sign In 
Support Knowledge Base, Article 1244
Product
FileUp
Title
FileUp instantiation fails in ASP after installing Microsoft hotfix
Problem

After installing the following Microsoft update on Windows 2003:

KB937143 (security bulletin MS07-045)

The FileUp and FileUpProgress objects fail to instantiate in classic ASP with the following error:

CreateObject of '(null)' caused exception C0000005.

It appears that something in this Microsoft hotfix has affected the .NET/COM interoperability which is used by some of our dlls.

FileUp ships with two sets of dlls, COM and .NET. Some of the .NET dlls are "mixed-mode" assemblies which contain both COM and .NET code. If the .NET Framework is installed on the server, our installer registers the mixed-mode dlls, which can also be placed in the bin directory of your .NET applications. This is a convenience, allowing one set of dlls to be used for both ASP and ASP.NET applications. These dlls have worked fine in both environments until the recent Microsoft patch.

Solution

The solution to this problem is to manually register the COM dlls. They are usually found in your program folder, here:

"[Drive letter]:\Program Files\SoftArtisans\FileUp\COM"

Only the following dlls need to be registered (using the command line regsvr32 utility).

  • safileup.dll
  • SAPrgres.dll

After registering the dlls, restart IIS (by typing "iisreset" at the command line).

If you are using FileUp in both ASP and ASP.NET, you can continue using the .NET versions of the dlls in your applications. Make sure to keep the version numbers in sync with the COM dlls that are registered on the server.

If you have a very old installation of FileUp that does not have a "COM" directory in the program folder, this is because those installers didn't unpack the COM dlls when they detected .NET on the machine. In order to get the COM dlls for your old version of FileUp, there are two options:

  1. Run the installer on a machine that doesn't have .NET. Then copy the dlls from the program folder to the server having the problem and register them.
  2. If you don't have a machine without .NET, contact SoftArtisans (please provide your order number) and we will send you the dlls.
Created : 9/20/2007 1:30:11 PM (last modified : 12/24/2007 4:52:43 PM)
Rate this article!
Comments