Проблема с запуском веб-сайта на Vista & IIS 7 через .NET - PullRequest
1 голос
/ 29 сентября 2010

Мне нужно получить состояние сайта IIS программно через C #. Я обычно делаю это так:

DirectoryEntry DE = new DirectoryEntry( string.Format( "IIS://localhost/W3SVC/{0}", siteID ) );
Int32 serverState = (Int32)DE.Properties["ServerState"][0];
if ( serverState == IISHelper.MD_SERVER_STATE_STOPPED )
     DE.Invoke("Start", new object[] { });

Но этот код не работает в Windows Vista, serverState всегда равен 4 (остановлен), даже если сайт работает, а DE.Invoke («Пуск», новый объект [] {}) выдает исключение Interop.

Как я могу это сделать в Vista?

Спасибо.

...