We have three server farms (Microsoft Windows Server 2003) which have been in place for many years now. Our goal is to combine these farms together on a single, larger set of servers. This way there is only one farm, one server build, etc. To get to this point I need to determine the state of the current servers across the three farms. A major part of this is installed COM+ objects. I have discovered that different DLL versions may exist in different farms. What I would like to do is run a script (or app, whatever) to grab all the COM+ objects loaded and get the version of the DLL running.

What is the best way to go about this? Are there application out there already that do this?

I am comfortable with vbscript and .net languages and am open to learn Powershell if it's a viable option (just don't know how to get to the information).

link|improve this question

72% accept rate
I really thought there would be better feedback on this; I guess people really don't use COM+ that much any longer – Brettski Oct 6 '10 at 4:25
feedback

1 Answer

ListDLLs will give you this the name, path, and version of DLLs running on a system, and passing a process name or id will filter to just the DLLs loaded for that process.

Caveat: If you limit debug-privileges, as we do, you will need to allow these temporarily to run ListDLLs.

link|improve this answer
Thank you, though I am not sure how I am going to isolate all of that data. Is there a certain file that COM+ components run under (e.g. dllhost.dll)? – Brettski Oct 1 '10 at 18:27
Try dllhost.exe, but I would imagine you can get more specific information to correlate processes and dlls using Process Explorer. – nedm Oct 1 '10 at 21:07
feedback

Your Answer

 
or
required, but never shown

Not the answer you're looking for? Browse other questions tagged or ask your own question.