Problem registering a COM+ component

ChatNoir

New member
Joined
Apr 29, 2008
Messages
4
Programming Experience
1-3
Hi

I have a web application written on framework 1.1, that calls a component
wrapped within a COM+ application. The component has recently been changed,
and now I need to unregister the old one and register the new one.

To do this, I shut the COM+ application down from component services, and
delete it. I then use regsvcs.exe to register the latest .dll from the web
app's \bin folder. When the web app's execution reaches the point where it
activates the COM+ component, I get a TypeInitializationException
(0x80131534) in the web app's event log. Unregistering the new .dll and
registering the old one restores the application to a working state. It seems
that the COM+ application still points to the old dll. The target machine is
running Windows 2000 Server. The aforementioned registration procedure works
in Windows XP.

Thanks in advance.
 
I managed to resolve the problem and I thought I'd share the solution.
The HR 0x80131534 error is undocumented and it tells developers nothing
about what's causing it. At first I thought that the COM+ application was
pointing to the old .NET assembly but that didn't make any sense.

So I used FUSLOGVW.exe to determine whether the COM+ component binded to its
dependencies correctly. What I discovered was that there were assembly
binding failures related one of its dependencies. It turned out that we were
operating under the assumption that the dependency was present on the target
machine. Guess what: it wasn't. Installing the dependency in the target
server's GAC resolved the issue.
 
Back
Top