[英]Enable ASP.NET in IIS6 Programmatically
有沒有辦法通過 C# 在 IIS6 中啟用 ASP.NET Web 服務擴展? 我正在嘗試為以前沒有使用過 IIS 的人簡化網站設置程序。
C# 網絡。 框架使用:
Process.Start(@"C:\\Windows\\Microsoft.NET\\Framework\\v2.0.50727\\aspnet_regiis", "-i -enable");
CMD用法:
C:\\Windows\\Microsoft.NET\\Framework\\v2.0.50727\\aspnet_regiis -i -enable
它很有用。
來源: https : //serverfault.com/questions/1649/why-does-iis-refuse-to-serve-asp-net-content
你可以很容易地調用 WMI(System.Management 命名空間,IIRC),我相信你可以從那里設置它。 但是,手動設置它可能要簡單得多,您不能在 ASP.NET 站點內進行設置,因為您的服務器在設置之前將無法運行它...
可以在這里找到做類似事情的原則
環顧四周,所有這些示例都是用 vbscript 編寫的。 所以我作弊,想出了這個功能:
static void EnableASPNET()
{
var file = "wmi.vbs";
using (var writer = new StreamWriter(file))
{
writer.WriteLine("Set webServiceObject = GetObject(\"IIS://localhost/W3SVC\")");
writer.WriteLine("webServiceObject.EnableWebServiceExtension \"ASP.NET v2.0.50727\"");
writer.WriteLine("webServiceObject.SetInfo");
}
var process = Process.Start("cscript", file);
process.WaitForExit();
File.Delete(file);
}
// if windows 2003
if (Environment.OSVersion.Version.Major == 5 &&
Environment.OSVersion.Version.Minor == 2)
{
DirectoryEntry folderRoot = new DirectoryEntry("IIS://localhost/W3SVC");
folderRoot.Invoke("EnableWebServiceExtension", "ASP.NET v2.0.50727");
}
復制自: http : //lastdon.blogspot.com/2006/12/setup-web-application-on-windows-2003.html
我相信您也可以運行以下命令行:
C:\\Windows\\Microsoft.NET\\Framework\\v2.0.50727\\aspnet_regiis.exe -s W3SVC
這將為所有配置的網站遞歸啟用 AND.NET 框架 v2.0.50727。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.