亚洲免费在线-亚洲免费在线播放-亚洲免费在线观看-亚洲免费在线观看视频-亚洲免费在线看-亚洲免费在线视频

System.DirectoryServices

系統 1586 0
可以的,ADSI, ? WMI, ? System.Directory, ? ABO等四種方式都可以操作 ?
? 具體可以查看一下MSDN里的Web ? Development\Server ? Technologies\Internet ? Information ? Services ? SDK\IIS ? Programmatic ? Administration ? SDK\Using ? IIS ? Programmatic ? Administration,里面有很多例子。 ?
? 不過你要確保訪問A服務器上的asp.net的應用程序具有B服務器的IIS的管理權限。 ?
? ?
? 下面這個是用System.DirectoryServices創建site和vitual ? directory的例子 ?
? ?
? Internet ? Service ? Providers ? (ISPs) ? that ? provide ? Web ? hosting ? services ? to ? customers, ? need ? to ? configure ? their ? IIS ? servers ? frequently. ? Some ? ISPs ? use ? forms ? to ? programmatically ? enroll ? new ? customers ? and ? add ? a ? new ? Web ? site ? or ? virtual ? directory ? for ? them. ? The ? new ? site ? or ? virtual ? directory ? can ? be ? put ? in ? a ? new ? application ? pool ? to ? isolate ? it ? from ? other ? applications ? on ? the ? server. ?
? ?
? Example ? Code ?
? The ? following ? example ? shows ? you ? how ? to ? use ? the ? C# ? programming ? language ? to ? add ? a ? new ? Web ? site ? and ? virtual ? directory ? with ? System.DirectoryServices. ?
? ?
? To ? keep ? this ? code ? example ? concise, ? it ? does ? not ? include ? code ? access ? security ? (CAS) ? parameters ? or ? parameter ? checking. ? For ? more ? information, ? see ? Code ? Access ? Security ? and ? Validating ? User ? Input ? to ? Avoid ? Attacks. ? Additionally, ? you ? can ? instantiate ? your ? System.DirectoryServices.DirectoryEntry ? object ? with ? an ? authentication ? parameter. ? ?
? ?
? C# ? ? Copy ? Code ? ?
? using ? System; ?
? using ? System.IO; ?
? using ? System.DirectoryServices; ?
? using ? System.Reflection; ?
? using ? System.Runtime.InteropServices; ?
? using ? System.Collections; ?
? ?
? namespace ? System_DirectoryServices_DirectoryEntry_ConfigIIS ?
? { ?
? ? ? class ? Program ?
? ? ? { ?
? ? ? ? ? static ? void ? Main(string[] ? args) ?
? ? ? ? ? { ?
? ?
? ... ?
? ? ? ? ? ? ? ? ? CreateSite("IIS://Localhost/W3SVC", ? "555", ? "MySite", ? "D:\\Inetpub\\Wwwroot"); ?
? ?
? ... ?
? ? ? ? ? ? ? ? ? SetSingleProperty("IIS://Localhost/W3SVC/555", ? "ServerBindings", ? ":8080:"); ?
? ?
? ... ?
? ? ? ? ? ? ? ? ? CreateVDir("IIS://Localhost/W3SVC/1/Root", ? "MyVDir", ? "D:\\Inetpub\\Wwwroot"); ?
? ?
? ... ?
? ? ? ? } ?
? ?
? ... ?
? ? ? ? ? static ? void ? CreateSite(string ? metabasePath, ? string ? siteID, ? string ? siteName, ? string ? physicalPath) ?
? ? ? ? ? { ?
? ? ? ? ? ? ? // ? ? metabasePath ? is ? of ? the ? form ? "IIS://<servername>/<service>" ?
? ? ? ? ? ? ? // ? ? ? ? for ? example ? "IIS://localhost/W3SVC" ? ?
? ? ? ? ? ? ? // ? ? siteID ? is ? of ? the ? form ? "<number>", ? for ? example ? "555" ?
? ? ? ? ? ? ? // ? ? siteName ? is ? of ? the ? form ? "<name>", ? for ? example, ? "My ? New ? Site" ?
? ? ? ? ? ? ? // ? ? physicalPath ? is ? of ? the ? form ? "<drive>:\<path>", ? for ? example, ? "C:\Inetpub\Wwwroot" ?
? ? ? ? ? ? ? Console.WriteLine("\nCreating ? site ? {0}/{1}, ? mapping ? the ? Root ? application ? to ? {2}:", ? ?
? ? ? ? ? ? ? ? ? ? ? metabasePath, ? siteID, ? physicalPath); ?
? ?
? ? ? ? ? ? ? try ?
? ? ? ? ? ? ? { ?
? ? ? ? ? ? ? ? ? DirectoryEntry ? service ? = ? new ? DirectoryEntry(metabasePath); ?
? ? ? ? ? ? ? ? ? string ? className ? = ? service.SchemaClassName.ToString(); ?
? ? ? ? ? ? ? ? ? if ? (className.EndsWith("Service")) ?
? ? ? ? ? ? ? ? ? { ?
? ? ? ? ? ? ? ? ? ? ? DirectoryEntries ? sites ? = ? service.Children; ?
? ? ? ? ? ? ? ? ? ? ? DirectoryEntry ? newSite ? = ? sites.Add(siteID, ? (className.Replace("Service", ? "Server"))); ?
? ? ? ? ? ? ? ? ? ? ? newSite.Properties["ServerComment"][0] ? = ? siteName; ?
? ? ? ? ? ? ? ? ? ? ? newSite.CommitChanges(); ?
? ?
? ? ? ? ? ? ? ? ? ? ? DirectoryEntry ? newRoot; ?
? ? ? ? ? ? ? ? ? ? ? newRoot ? = ? newSite.Children.Add("Root", ? "IIsWebVirtualDir"); ?
? ? ? ? ? ? ? ? ? ? ? newRoot.Properties["Path"][0] ? = ? physicalPath; ?
? ? ? ? ? ? ? ? ? ? ? newRoot.Properties["AccessScript"][0] ? = ? true; ?
? ? ? ? ? ? ? ? ? ? ? newRoot.CommitChanges(); ?
? ?
? ? ? ? ? ? ? ? ? ? ? Console.WriteLine(" ? Done. ? Your ? site ? will ? not ? start ? until ? you ? set ? the ? ServerBindings ? or ? SecureBindings ? property."); ?
? ? ? ? ? ? ? ? ? } ?
? ? ? ? ? ? ? ? ? else ?
? ? ? ? ? ? ? ? ? ? ? Console.WriteLine(" ? Failed. ? A ? site ? can ? only ? be ? created ? in ? a ? service ? node."); ?
? ? ? ? ? ? ? } ?
? ? ? ? ? ? ? catch ? (Exception ? ex) ?
? ? ? ? ? ? ? { ?
? ? ? ? ? ? ? ? ? Console.WriteLine("Failed ? in ? CreateSite ? with ? the ? following ? exception: ? \n{0}", ? ex.Message); ?
? ? ? ? ? ? ? } ?
? ? ? ? ? } ?
? ?
? ... ?
? ? ? ? ? static ? void ? SetSingleProperty(string ? metabasePath, ? string ? propertyName, ? object ? newValue) ?
? ? ? ? ? { ?
? ? ? ? ? ? ? // ? ? metabasePath ? is ? of ? the ? form ? "IIS://<servername>/<path>" ?
? ? ? ? ? ? ? // ? ? ? ? for ? example ? "IIS://localhost/W3SVC/1" ? ?
? ? ? ? ? ? ? // ? ? propertyName ? is ? of ? the ? form ? "<propertyName>", ? for ? example ? "ServerBindings" ?
? ? ? ? ? ? ? // ? ? value ? is ? of ? the ? form ? "<intStringOrBool>", ? for ? example, ? ":80:" ?
? ? ? ? ? ? ? Console.WriteLine("\nSetting ? single ? property ? at ? {0}/{1} ? to ? {2} ? ({3}):", ?
? ? ? ? ? ? ? ? ? ? ? metabasePath, ? propertyName, ? newValue, ? newValue.GetType().ToString()); ?
? ?
? ? ? ? ? ? ? try ?
? ? ? ? ? ? ? { ?
? ? ? ? ? ? ? ? ? ? ? DirectoryEntry ? path ? = ? new ? DirectoryEntry(metabasePath); ?
? ? ? ? ? ? ? ? ? ? ? PropertyValueCollection ? propValues ? = ? path.Properties[propertyName]; ?
? ? ? ? ? ? ? ? ? ? ? string ? oldType ? = ? propValues.Value.GetType().ToString(); ?
? ? ? ? ? ? ? ? ? ? ? string ? newType ? = ? newValue.GetType().ToString(); ?
? ? ? ? ? ? ? ? ? ? ? Console.WriteLine(" ? Old ? value ? of ? {0} ? is ? {1} ? ({2})", ? propertyName, ? propValues.Value, ? oldType); ?
? ? ? ? ? ? ? ? ? ? ? if ? (newType ? == ? oldType) ?
? ? ? ? ? ? ? ? ? ? ? { ?
? ? ? ? ? ? ? ? ? ? ? ? ? ? ? path.Properties[propertyName][0] ? = ? newValue; ?
? ? ? ? ? ? ? ? ? ? ? ? ? ? ? path.CommitChanges(); ?
? ? ? ? ? ? ? ? ? ? ? ? ? ? ? Console.WriteLine("Done"); ?
? ? ? ? ? ? ? ? ? ? ? } ?
? ? ? ? ? ? ? ? ? ? ? else ?
? ? ? ? ? ? ? ? ? ? ? ? ? ? ? Console.WriteLine(" ? Failed ? in ? SetSingleProperty; ? type ? of ? new ? value ? does ? not ? match ? property"); ?
? ? ? ? ? ? ? } ?
? ? ? ? ? ? ? catch ? (Exception ? ex) ?
? ? ? ? ? ? ? { ?
? ? ? ? ? ? ? ? ? ? ? if ? ("HRESULT ? 0x80005006" ? == ? ex.Message) ?
? ? ? ? ? ? ? ? ? ? ? ? ? ? ? Console.WriteLine(" ? Property ? {0} ? does ? not ? exist ? at ? {1}", ? propertyName, ? metabasePath); ?
? ? ? ? ? ? ? ? ? ? ? else ?
? ? ? ? ? ? ? ? ? ? ? ? ? ? ? Console.WriteLine("Failed ? in ? SetSingleProperty ? with ? the ? following ? exception: ? \n{0}", ? ex.Message); ?
? ? ? ? ? ? ? } ?
? ? ? ? ? } ?
? ?
? ... ?
? ? ? ? ? static ? void ? CreateVDir(string ? metabasePath, ? string ? vDirName, ? string ? physicalPath) ?
? ? ? ? ? { ?
? ? ? ? ? ? ? // ? ? metabasePath ? is ? of ? the ? form ? "IIS://<servername>/<service>/<siteID>/Root[/<vdir>]" ?
? ? ? ? ? ? ? // ? ? ? ? for ? example ? "IIS://localhost/W3SVC/1/Root" ? ?
? ? ? ? ? ? ? // ? ? vDirName ? is ? of ? the ? form ? "<name>", ? for ? example, ? "MyNewVDir" ?
? ? ? ? ? ? ? // ? ? physicalPath ? is ? of ? the ? form ? "<drive>:\<path>", ? for ? example, ? "C:\Inetpub\Wwwroot" ?
? ? ? ? ? ? ? Console.WriteLine("\nCreating ? virtual ? directory ? {0}/{1}, ? mapping ? the ? Root ? application ? to ? {2}:", ?
? ? ? ? ? ? ? ? ? ? ? metabasePath, ? vDirName, ? physicalPath); ?
? ?
? ? ? ? ? ? ? try ?
? ? ? ? ? ? ? { ?
? ? ? ? ? ? ? ? ? DirectoryEntry ? site ? = ? new ? DirectoryEntry(metabasePath); ?
? ? ? ? ? ? ? ? ? string ? className ? = ? site.SchemaClassName.ToString(); ?
? ? ? ? ? ? ? ? ? if ? ((className.EndsWith("Server")) ? || ? (className.EndsWith("VirtualDir"))) ?
? ? ? ? ? ? ? ? ? { ?
? ? ? ? ? ? ? ? ? ? ? DirectoryEntries ? vdirs ? = ? site.Children; ?
? ? ? ? ? ? ? ? ? ? ? DirectoryEntry ? newVDir ? = ? vdirs.Add(vDirName, ? (className.Replace("Service", ? "VirtualDir"))); ?
? ? ? ? ? ? ? ? ? ? ? newVDir.Properties["Path"][0] ? = ? physicalPath; ?
? ? ? ? ? ? ? ? ? ? ? newVDir.Properties["AccessScript"][0] ? = ? true; ?
? ? ? ? ? ? ? ? ? ? ? // ? These ? properties ? are ? necessary ? for ? an ? application ? to ? be ? created. ?
? ? ? ? ? ? ? ? ? ? ? newVDir.Properties["AppFriendlyName"][0] ? = ? vDirName; ?
? ? ? ? ? ? ? ? ? ? ? newVDir.Properties["AppIsolated"][0] ? = ? "1"; ?
? ? ? ? ? ? ? ? ? ? ? newVDir.Properties["AppRoot"][0] ? = ? "/LM" ? + ? metabasePath.Substring(metabasePath.IndexOf("/", ? ("IIS://".Length))); ?
? ?
? ? ? ? ? ? ? ? ? ? ? newVDir.CommitChanges(); ?
? ?
? ? ? ? ? ? ? ? ? ? ? Console.WriteLine(" ? Done."); ?
? ? ? ? ? ? ? ? ? } ?
? ? ? ? ? ? ? ? ? else ?
? ? ? ? ? ? ? ? ? ? ? Console.WriteLine(" ? Failed. ? A ? virtual ? directory ? can ? only ? be ? created ? in ? a ? site ? or ? virtual ? directory ? node."); ?
? ? ? ? ? ? ? } ?
? ? ? ? ? ? ? catch ? (Exception ? ex) ?
? ? ? ? ? ? ? { ?
? ? ? ? ? ? ? ? ? Console.WriteLine("Failed ? in ? CreateVDir ? with ? the ? following ? exception: ? \n{0}", ? ex.Message); ?
? ? ? ? ? ? ? } ?
? ? ? ? ? } ?
? ?
? ... ?
? ? ? } ?
? }

System.DirectoryServices


更多文章、技術交流、商務合作、聯系博主

微信掃碼或搜索:z360901061

微信掃一掃加我為好友

QQ號聯系: 360901061

您的支持是博主寫作最大的動力,如果您喜歡我的文章,感覺我的文章對您有幫助,請用微信掃描下面二維碼支持博主2元、5元、10元、20元等您想捐的金額吧,狠狠點擊下面給點支持吧,站長非常感激您!手機微信長按不能支付解決辦法:請將微信支付二維碼保存到相冊,切換到微信,然后點擊微信右上角掃一掃功能,選擇支付二維碼完成支付。

【本文對您有幫助就好】

您的支持是博主寫作最大的動力,如果您喜歡我的文章,感覺我的文章對您有幫助,請用微信掃描上面二維碼支持博主2元、5元、10元、自定義金額等您想捐的金額吧,站長會非常 感謝您的哦!!!

發表我的評論
最新評論 總共0條評論
主站蜘蛛池模板: 狠狠噜噜 | 亚洲人成网站色7799在线观看 | 日本一区二区三区四区公司 | 操你妹影院 | 久艾草国产成人综合在线视频 | 看a网站 | 欧美激情在线一区二区三区 | 黄色成人在线观看 | 亚洲黄色高清 | 女人a级毛片 | 亚洲欧美18v中文字幕高清 | 97精品视频在线观看 | 欧美大片在线观看成人 | 久99频这里只精品23热 视频 | 欧美日本在线一区二区三区 | 成人黄性视频 | 黄色a∨| 日本亚洲欧洲高清有码在线播放 | 99视频在线永久免费观看 | 免费一级毛片免费播放 | 色综合久久中文字幕综合网 | 国产亚洲综合色就色 | 深夜在线免费观看 | 国产一区二区福利久久 | 日韩精品123 | 精品久久久久久国产91 | 国产大片免费观看中文字幕 | 国产一级一片免费播放 | 精品久久天干天天天按摩 | 四虎精品免费久久 | 老司机亚洲精品 | 欧美天天性 | 欧美一级亚洲一级 | 中文字幕一区视频一线 | 成人另类视频 | 免费看日韩欧美一级毛片 | 日韩毛片在线 | 一级毛片 在线播放 | 久久久噜噜噜久久老司机 | 青草青草久热精品视频在线观看 | 黄色片在线免费观看视频 |