Как программно определить версию ASP.NET для данного приложе
От: UnbrokeN Беларусь  
Дата: 13.09.06 08:08
Оценка:
Необходимо программно определить версию ASP.NET, ассоциированную с веб-приложением. Подскажите, пожалуйста, как это можно сделать? Вариант "запустить aspnet_regiis.exe -lk и распарсить выводимые им данные" крайне нежелателен.

13.09.06 13:00: Перенесено модератором из 'Веб программирование' — der Igel
Re: Как программно определить версию ASP.NET для данного при
От: shepard  
Дата: 14.09.06 12:35
Оценка:
Здравствуйте, UnbrokeN, Вы писали:

UN>Необходимо программно определить версию ASP.NET, ассоциированную с веб-приложением. Подскажите, пожалуйста, как это можно сделать? Вариант "запустить aspnet_regiis.exe -lk и распарсить выводимые им данные" крайне нежелателен.


может System.Environment.Version ?
Re[2]: Как программно определить версию ASP.NET для данного
От: UnbrokeN Беларусь  
Дата: 14.09.06 15:40
Оценка:
Здравствуйте, shepard, Вы писали:

S>может System.Environment.Version ?


Если вызвать из самого приложения, то должно сработать. Прикол в том, что делать это надо из другого приложения. То есть это другое приложение должно как-то просмотреть конфигурацию системы, как это делает aspnet_regiis, запущенный с параметром командной строки -lk
Re: Как программно определить версию ASP.NET для данного при
От: Gollum Россия  
Дата: 14.09.06 17:04
Оценка: 46 (1)
Здравствуйте, UnbrokeN, Вы писали:

UN>Необходимо программно определить версию ASP.NET, ассоциированную с веб-приложением. Подскажите, пожалуйста, как это можно сделать? Вариант "запустить aspnet_regiis.exe -lk и распарсить выводимые им данные" крайне нежелателен.


Вот код, который меняет версию ASP.NET на нужную. Что из этого кода взять, думаю разберетесь.

string site_index = "1"; // siteindex

DirectoryEntry ent = new DirectoryEntry("IIS://localhost/w3svc"); 
DirectoryEntry siteVDir = new DirectoryEntry(); 
siteVDir = ent.Children.Find(site_index,"IIsWebServer"); 

PropertyValueCollection scriptMapVals = siteVDir.Properties["ScriptMaps"]; 
ArrayList objScriptMaps = new ArrayList(); 
string frameworkVersion = 
ConfigurationManager.AppSettings["frameworkVersion"]; 
Regex versionRegex = new Regex(@"(?<=\\v)\d{1}\.\d{1}\.\d{1,5}(?=\\)"); 
//Assuming the version will always be something like n.n.nnnnn 

foreach (string scriptMapVal in scriptMapVals) 
{ 
  if (scriptMapVal.Contains("Framework")) 
  { 
    objScriptMaps.Add(versionRegex.Replace(scriptMapVal, frameworkVersion)); 
  } 
  else 
  { 
    objScriptMaps.Add(scriptMapVal); 
  } 
} 

siteVDir.Properties["ScriptMaps"].Value = objScriptMaps.ToArray(); 
siteVDir.CommitChanges();
And please don't stick Thy servants, Lord, in a Rotissomat.
Eugene Agafonov on the .NET

Re[2]: Как программно определить версию ASP.NET для данного
От: Аноним  
Дата: 14.09.06 17:15
Оценка:
Сделайте ComVisible .NET класс, который возвращает номер версии .NET и вызывайте его из не-.NET приложения.

( Блог программиста )


данное сообщение получено с www.gotdotnet.ru
ссылка на оригинальное сообщение
Re[2]: Как программно определить версию ASP.NET для данного
От: Аноним  
Дата: 14.09.06 17:18
Оценка:
Упс... не так понял что именно хочет автор

( Блог программиста )


данное сообщение получено с www.gotdotnet.ru
ссылка на оригинальное сообщение
 
Подождите ...
Wait...
Пока на собственное сообщение не было ответов, его можно удалить.