?
Solved

COM+ Problem

Posted on 2003-02-19
7
Medium Priority
?
248 Views
Last Modified: 2007-12-19
I've got a few COM+ applications that all register on the web server - a particular class within one application's DLL cannot be instantiated. The others work fine - even other applications that are installed before and after this particular one work fine.

The same DLL has been installed on other servers and work fine - and all classes can be instantiated without problem. From a scrap of vbs which calls the object, I get a "error loading DLL: 'createobject'" and from the web app (ASP) I get a page error "create object failed" "an error occurred while creating object 'objectname'"
It is not working in VBS and it is not working in ASP. Two components of the DLL ARE working, but 5 out of 7 are not. These 5 components instantiate one of the two components that DO work.
eg.
component prodversion returns the DLL version - this works
component dbobject runs sql server stored procedures - this works
component clients uses dbobject to verify user database permissions (by using dbobject) - but doesn't work
it does this like so:

Const m_modname As String = "myapp.clients"
Private m_dbobject As dbobject

Private Sub Class_Initialize()
   Set m_dbobject = CreateObject("myapp.clients")
End Sub

I think it fails at the CreateObject.
The code is identical for other apps - the same classes, the same code - just the application name (myapp) is changed.
It also works on other servers.

So to round up...
The same code compiled as a DLL for COM+, works on servers A & C but not server B. Other applications with the same code work on A B & C. Other applications installed on B before and after the problem application work fine.

I have no idea how to solve this - if I had more points to allocate to an answer I would.

0
Comment
Question by:kenkthulhu
[X]
Welcome to Experts Exchange

Add your voice to the tech community where 5M+ people just like you are talking about what matters.

  • Help others & share knowledge
  • Earn cash & points
  • Learn & ask questions
7 Comments
 
LVL 4

Expert Comment

by:Wakie
ID: 7985728
What does the COM component do?
0
 
LVL 7

Expert Comment

by:lavinder
ID: 7985798
Hi

Try to check whether the component is registered on server B or not also Check its progID, (it is there in the registry or not).

hth!!
0
 
LVL 8

Expert Comment

by:bukko
ID: 7986908

If I were you I'd trawl the registry to search for the ProgId of the component which is giving you trouble. Remove all instances and re-register.

bukko
0
What does it mean to be "Always On"?

Is your cloud always on? With an Always On cloud you won't have to worry about downtime for maintenance or software application code updates, ensuring that your bottom line isn't affected.

 
LVL 8

Expert Comment

by:bukko
ID: 7986912

...should have said...

(1) Drop the component from COM+
(2) Trawl the registry & remove all instances
(3) Add to COM+

(adding to COM+ does all the regsvr32 stuff)

bukko
0
 

Author Comment

by:kenkthulhu
ID: 8014193
The Registry seems pretty scary - I wouldn't like to start hacking into some of that stuff without knowing what it is. Shouldn't removing the application clean up any instances?
0
 
LVL 8

Accepted Solution

by:
bukko earned 1200 total points
ID: 8015723

In theory, yes, but unfortunately not always.
And you are right to be scared of the registry. Do not make any mods unless you are confident in what you are doing. Is there a techy within your organisation who can help you do this?

bukko
0
 

Author Comment

by:kenkthulhu
ID: 8149461
bukko

I really will never know if your suggestion will work - the web dba tried again a few days later and the app installed and registered correctly.

The points are yours anyway - perhaps you can answer my other question about web page time outs.

~ken
0

Featured Post

Free Tool: ZipGrep

ZipGrep is a utility that can list and search zip (.war, .ear, .jar, etc) archives for text patterns, without the need to extract the archive's contents.

One of a set of tools we're offering as a way to say thank you for being a part of the community.

Question has a verified solution.

If you are experiencing a similar issue, please ask a related question

I recently decide that I needed a way to make my pages scream on the net.   While searching around how I can accomplish this I stumbled across a great article that stated "minimize the server requests." I got to thinking, hey, I use more than one…
I was asked about the differences between classic ASP and ASP.NET, so let me put them down here, for reference: Let's make the introductions... Classic ASP was launched by Microsoft in 1998 and dynamically generate web pages upon user interact…
If you’ve ever visited a web page and noticed a cool font that you really liked the look of, but couldn’t figure out which font it was so that you could use it for your own work, then this video is for you! In this Micro Tutorial, you'll learn yo…
Visualize your data even better in Access queries. Given a date and a value, this lesson shows how to compare that value with the previous value, calculate the difference, and display a circle if the value is the same, an up triangle if it increased…
Suggested Courses

764 members asked questions and received personalized solutions in the past 7 days.

Join the community of 500,000 technology professionals and ask your questions.

Join & Ask a Question