J'ai trouvé la réponse ici: link text La méthode fileVersion dose ne fonctionne pas sous Windows 2008, l'ineserv exe est ailleurs.
public Version GetIisVersion()
{
using (RegistryKey componentsKey = Registry.LocalMachine.OpenSubKey(@"Software\Microsoft\InetStp", false))
{
if (componentsKey != null)
{
int majorVersion = (int)componentsKey.GetValue("MajorVersion", -1);
int minorVersion = (int)componentsKey.GetValue("MinorVersion", -1);
if (majorVersion != -1 && minorVersion != -1)
{
return new Version(majorVersion, minorVersion);
}
}
return new Version(0, 0);
}
}
Je l'ai testé, il fonctionne parfaitement sous Windows XP, 7 et 2008
côté côté serveur ou client (par exemple appeler un site Web IIS à partir d'une application winforms)? Je suppose que vous voulez dire côté serveur. – splattne
Je voulais dire d'un winapp (en fait le scénario développe un installateur personnalisé qui veut vérifier la version de l'IIS installé pour appeler les API appropriées) devrait l'écrire dans la question principale .. (désolé) .. –