dev.net.ua

Українська Спільнота Розробникiв
 
Ласкаво просимо до dev.net.ua Увійти | Приєднатися | Допомога | Увійти Live ID

СРОЧНО нужна помощь с ADSI CreateNewSite !!

  •  20-07-2007, 11:24

    СРОЧНО нужна помощь с ADSI CreateNewSite !!

    Вот горит проект сегодня. не могу закончить из-за какой-то глупости.
    Необходимо из ASP.NET создавать новые сайты под IIS.
    Вроже со всем разобрался и сделал причем пробовал уже и через ADSI и чере WMI.

    Сайт создается ок, права на папку у пользователя есть,  но при попытке открыть страницу полчаю 404 ошибку.
    Вот если при этом зайду  на страницу свойств сайта в HomeDirectory и что-то там помнеяю и отменю (ну так чтобы только Apply стала активной) и жму ОК, то сайт работает нормлаьно.

    Мистика какая-от!

    Пробовал смотреть что в метабазе меняется - ничего не меняется. только UNCPassword добавляется секьюрный. но если его удалить, то вс е равно далее вс е работает. Кто с таким сталкивался?


    вот кусок кода с созданием сайта:

      public static int CreateWebsite(string serverComment, string serverBindings, string homeDirectory, string defaultfile, string logdir)
           {
              DirectoryEntry w3svc = new DirectoryEntry("IIS://localhost/w3svc");
            
              
             //Create a website object array
             object[] newsite = new object[]{serverComment, new object[]{serverBindings}, homeDirectory};
            
             //invoke IIsWebService.CreateNewSite
             object websiteId = (object)w3svc.Invoke("CreateNewSite", newsite);
             DirectoryEntry siteroot  = new DirectoryEntry("IIS://localhost/w3svc/" + ((int)websiteId).ToString()+"/root");
             //siteroot.Properties["AuthFlags"][0] = 5;
             siteroot.Properties["AccessFlags"][0] = 513;
             siteroot.Properties["AppFriendlyName"][0] = "serverComment";
             siteroot.Properties["AuthAnonymous"][0] = true;        
             siteroot.Properties["AnonymousPasswordSync"][0] = true;
             siteroot.Properties["EnableDefaultDoc"][0] = true;           
             siteroot.Properties["DefaultDoc"][0] = defaultfile;
             siteroot.CommitChanges();
              
             // siteroot.Invoke("AppCreate2", new object[] {1});      
             // siteroot.Properties["AppFriendlyName"][0] = "NewApp";
              
             siteroot.CommitChanges();
             DirectoryEntry site = new DirectoryEntry("IIS://localhost/w3svc/" + ((int)websiteId).ToString());
             site.Invoke("Start", null);
              
            return (int)websiteId;
         
          }


    Лучше побыть дураком 5 минут, чем остаться им на всю жизнь ...
    Помічено як: , ,
Перегдянути всі повідомлення треда