views:

104

answers:

1

Or: how do I find the IIS metabase paths in Windows 7?

I used to just run aspnet_regiis -lk, but this is "Not supported in Windows Vista" according to aspnet_regiis help...

+2  A: 

This is because starting with Windows Vista, a new version of IIS is shipped (IIS 7) which is a LOT different in many ways than the older IIS architecture.

To control the new IIS, you should either be using the IIS manager (UI) or if you want a console tool take a look at C:\Windows\System32\inetsrv\AppCmd.exe

If you want to list the app pools and their .NET versions:

> appcmd list apppool
APPPOOL "FlexLabs Bak" (MgdVersion:v4.0,MgdMode:Integrated,state:Stopped)
APPPOOL "OpenIdTest" (MgdVersion:v2.0,MgdMode:Integrated,state:Started)
APPPOOL "TestApp" (MgdVersion:v4.0,MgdMode:Integrated,state:Started)

Get the list of applications in IIS:

> appcmd list app
APP "FlexLabs/" (applicationPool:FlexLabs)
APP "TestApp/" (applicationPool:TestApp)

Get the list of Sites:

> appcmd list site
SITE "TestApp" (id:4,bindings:http/*:82:,state:Started)

(Note: these are examples, not all the actual data from my machine :P )

It can do a lot more then list, of course.. and in some ways it's a lot more powerful than than IIS manager.
Anything specific you're looking for?

UPD: Quiting from here: http://mvolo.com/blogs/serverside/archive/2007/07/21/Anatomy-of-an-IIS7-configuration-path.aspx

If you have worked with IIS6 and previous versions of IIS, you are most likely familiar with the IIS metabase paths. You know, the ones that look like LM/W3SVC/1/ROOT. These metabase paths serve as a mechanism to identify a part of the IIS website hierarchy, or a url therein, for the purposes of read/writing their configuration settings.
[...]
IIS7 repaces the metabase with a whole new configuration system, based on a distributed hierarchy of XML configuration files also used by the .NET Framework/ASP.NET. This confguration system is fundamentally different from the metabase

Definitely check out this article, as I think it's exactly what you're looking for in this case

Also, see more info about it here: http://learn.iis.net/page.aspx/125/metabase-compatibility-with-iis-7/ Basically you can install the "IIS 6 Metabase Compatibility" server role, and have some control over it with some old tools and scripts :)

Artiom Chilaru
Hi thanks for the help, but how can appcmd help me see a list of the IIS metabase paths for an application?
joshcomley
Metabase have been deprecated since IIS 7, and have been replaced with a completely different structure.. check out the update to the post )
Artiom Chilaru