我一直在嘗試創建一個位於win2k3 IIS 6服務器上的ac#asp.net頁面,並且當被遠程調用時,重新啓動/回收特定應用程序池服務器。通過WMI從ASP.NET重新啓動應用程序池問題
我一直沒有多看,有人知道我要去哪裏錯了嗎?我嘗試了很多組合,並嘗試從服務器直接運行,但無濟於事。
當我不通過憑證時,我總是收到「訪問被拒絕」或「win32:訪問被拒絕錯誤」。當我通過他們時,我得到「用戶憑證不能用於本地連接」。
我也嘗試提升anon帳戶的權限只是爲了測試,但它不會工作......這可能是我想要實現的嗎?
try
{
ManagementScope scope = new ManagementScope("root\\MicrosoftIISv2");
scope.Path.Server = "servername";
scope.Path.Path = "\\\\servername\\root\\MicrosoftIISv2";
scope.Path.NamespacePath = "root\\MicrosoftIISv2";
scope.Options.Username = "domain\\user";
scope.Options.Password = "password";
scope.Options.Authentication = AuthenticationLevel.Default;
scope.Options.Impersonation = ImpersonationLevel.Impersonate;
scope.Options.EnablePrivileges = true;
scope.Connect();
ManagementObject appPool = new ManagementObject(scope, new ManagementPath("IIsApplicationPool.Name='W3SVC/AppPools/AppPoolName'"), null);
appPool.InvokeMethod("Recycle", null, null);
}
catch (System.Exception ex)
{
}
忘了提及,我通過的域帳戶確實需要權限才能執行應用程序池重啓(dom admin) – Developr