views:

311

answers:

1

We have a classic ASP page that is instantiating a .Net object through a COM interface. It was working fine for a long time, but over the weekend we applied some Windows updates and it is no longer working reliably in our production environment. Sometimes it works, sometimes it doesn't and it seems random when it works. It doesn't fail in a test environment or even on the production servers when we take them out of the cluster (seems to only fail under load).

The error is "-2147024894 - File or assembly name FusionEngine, or one of its dependencies, was not found." The number converted to hex is 80070002.

We created a test page that is pretty basic. It basically just instantiates the object and calls a simple property on it to display.

<%
On Error Resume Next
set oFusion = Server.CreateObject("Fusion.Engine")
%>
Error: <%=err.Number%> - <%=err.Description%><br>
[<%=oFusion.DPI%>]<br>

We tried recreating the object if an error was detected (10 times with a 1 second interval) but if it doesn't work once, it doesn't work 10 times either.

The fusion object is very simple. It only references System.dll and System.Drawing.dll (it generates images).

A: 

The problem turned out to be that we were running two different versions of .Net (1.1 and 2.0). We were able to get it to work by making sure that they were running under different application pools.

Brian