Groups | Blog | Home
all groups > asp.net > february 2008 >

asp.net : How to tell what DLLs have been registered


wildman@noclient.net
2/1/2008 7:59:32 PM
Any way to tell what DLLs have been registered in a web project?

I know I can browse available objects, but how can I tell which ones
where manually registered into the project?

Mark Rae [MVP]
2/2/2008 11:16:24 AM
[quoted text, click to view]

Not quite sure what you mean...

Firstly, DLLs aren't registered in .NET apps - even COM objects which are
referenced by COMImterOp aren't registered in .NET apps, although they do
obviously have to be registered on the machine that the .NET app is running
on... :-) The elimination of "DLL hell" is one of the major advantages of
working in .NET...

Secondly, I don't believe there's any way to tell which of the assemblies in
a .NET app's \bin folder have been placed there by a developer and which
were placed there as part of the template from which the original project
was created. It's certainly possible to tell which assemblies are not in the
GAC, which might be of some use to you...

using System;
using System.Collections.Generic;
using System.Reflection;

AppDomain objCurrentDomain = AppDomain.CurrentDomain;
List<Assembly> lstAssemblies = new
List<Assembly>(objCurrentDomain.GetAssemblies());
foreach (Assembly objAssembly in lstAssemblies)
{
if (!objAssembly.GlobalAssemblyCache)
{
// do something
}
}


--
Mark Rae
ASP.NET MVP
http://www.markrae.net
AddThis Social Bookmark Button