Vous avez trouvé la réponse ici: texte du lien La méthode fileVersion ne fonctionne pas sous Windows 2008, le fichier exetserv exe est ailleurs, je suppose.
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