using (DirectoryEntry deIIS = new DirectoryEntry("IIS://" + computer)) { IISComputer iis = (IISComputer) deIIS.NativeObject; //TODO ArrayList backups = new ArrayList(); //RecursiveShow(Console.Out, iis, 1); int index; object version; object locations; object date; try { for (index = 0; ; index++) //enumerate until we get an error { deIIS.Invoke("EnumBackups", index, version, locations, date); //iis.EnumBackups(BackupName, index, out version, out locations, out date); //TODO //backups.Add(version); } } catch (Exception) { } }