Запуск следующего кода:
DirectoryEntry w3svc = new DirectoryEntry("IIS://localhost/w3svc");
int siteId = GetUniqueSiteId(Path);
private string DEFAULT_WEB_SITE_PHYSICAL_PATH = System.IO.Path.GetPathRoot(Environment.SystemDirectory) + @"inetpub\wwwroot";
object[] newsite = new object[] { "Default Web Site", new object[] { ":80:" }, DEFAULT_WEB_SITE_PHYSICAL_PATH, siteId };
w3svc.Invoke("CreateNewSite", newsite);
выдает следующее исключение:
System.Reflection.TargetInvocationException: Исключение было сгенерировано целью вызова.---> System.Runtime.InteropServices.COMException (0x800700B7): невозможно создать файл, если этот файл уже существует.(Исключение из HRESULT: 0x800700B7)
Я пытаюсь запустить этот код, только если «Веб-сайт по умолчанию» не существует.Исключение возникает только при запуске в Windows Server 2003. Более того, при запуске этого кода в цикле, который повторяется и засыпает на 1 секунду после каждого сбоя, этот код, наконец, работает после 3 попыток и создается веб-сайт по умолчанию.
Кто-нибудь знает, в чем может быть причина?