Overview
IIS - ASP. - COM-, ADSI WMI, . ASP.Net, Microsoft , Microsoft.Web.Administration. ( System.DirectoryServices, - ADSI.)
1 - COM ADSI
COM, . ADSI, WMI, , . ADSI , vdirs, apps ...
, , CreateNewSite():
Dim myNewSiteID, oIIsWebServiceObj, oBindings
oBindings = Array(0)
Set oBindings(0) = providerObj.get("ServerBinding").SpawnInstance_()
oBindings(0).IP = "192.168.1.1"
oBindings(0).Port = "80"
oBindings(0).Hostname = "yournewsite.example.com"
Set oIIsWebServiceObj = GetObject("IIS://MachineName/W3SVC")
myNewSiteID = oIIsWebServiceObj.CreateNewSite("NewSite", oBindings, _
"C:\Sites\yournewsite")
, :
Dim IIsWebVDirRootObj, IIsWebVDirObj
Set IIsWebVDirRootObj = GetObject("IIS://localhost/W3SVC/1/Root")
Set IIsWebVDirObj = IIsWebVDirRootObj.Create("IIsWebVirtualDir", "NewVDir")
IIsWebVDirObj.Put "Path", "C:\NewContent"
IIsWebVDirObj.Put "AccessRead", True
IIsWebVDirObj.Put "AccessScript", True
IIsWebVDirObj.SetInfo
95% , ADSI WMI IIS6, COM- , IIS . IIS6, . MSDN IIS 7.5 MSDN IIS8.
2 -.Net Microsoft.Web.Administration
.Net, Microsoft.Web.Administration System.DirectoryServices. , .Net , , asp, .Net. , CCW - COM-Callable Wrapper. , .Net COM-, .Net. , .net CCW, CCW'd.Net , :
ServerManager serverManager = new ServerManager();
Site mySite = serverManager.Sites.Add("NewSite", "C:\\Sites\\yournewsite", 80);
mySite.ServerAutoStart = true;
serverManager.CommitChanges();
, CCW, . MSDN.
... .
, : IUSR, IUSR_MachineName, - , IIS. , . asp, - . , , , , IUSR.
Basic Auth. , , .