"Le serveur RPC est indisponible" en utilisant la requête WMI

J'ai un groupe de travail de serveurs web windows Server 2008 R2 dans lequel je suis en train de gérer un script qui vérifie l'espace disque de tous. J'avais mis cela en place il y a quelques mois lorsque les serveurs ont été mis en place et je crois que ça marchait très bien. Maintenant, je vais vérifier et qu'il donne un message d'erreur indiquant que "Le serveur RPC n'est pas disponible". Le script C# ASP.NET page, si j'ai essayé comparable appels en PowerShell, et il donne le même message d'erreur. Le script fonctionne très bien pour accéder aux informations de la machine locale, mais ne peut pas accéder à distance à des informations sur le serveur.

J'ai passé les dernières heures de creuser à travers tout ce que je peux trouver, mais rien ne fonctionne. J'ai mis des autorisations pour WMI (remote & locale), DCOM (remote & locale), et le disque entier de l'ordinateur, je suis accès à. J'ai utilisé le nom de l'ordinateur, l'adresse IP, le nom complet de l'ordinateur (xxx.echomountain.com), et essayé de nombreuses usurpation d'identité et les paramètres d'authentification sur le ConnectionOptions objet.

Je sais que le nom d'utilisateur/mots de passe que j'utilise sont corrects puisque je ne peux accéder à l'éclat des répertoires de l'un de l'autre

Toute idée de qu'est ce que j'ai pu vérifier que pourrait causer cette erreur?

ConnectionOptions oConn = new ConnectionOptions();
    oConn.Impersonation = ImpersonationLevel.Impersonate;
    oConn.EnablePrivileges = true;
    oConn.Username = username;
    oConn.Password = password;
    //oConn.Authentication = AuthenticationLevel.PacketPrivacy;
    string strNameSpace = @"\\";

    if (srvname != "")
        strNameSpace += srvname + ".echomountain.com";
    else
        strNameSpace += ".";

    strNameSpace += @"\root\cimv2";

    ManagementScope oMs = new ManagementScope(strNameSpace, oConn);

    //get Fixed disk state
    ObjectQuery oQuery = new ObjectQuery("select FreeSpace,Size,Name from Win32_LogicalDisk where DriveType=3");

    //Execute the query
    ManagementObjectSearcher oSearcher = new ManagementObjectSearcher(oMs, oQuery);

    //Get the results
    ManagementObjectCollection oReturnCollection = oSearcher.Get();

    //loop through found drives and write out info
    double D_Freespace = 0;
    double D_Totalspace = 0;
    foreach (ManagementObject oReturn in oReturnCollection)
    {
        //Disk name
        //MessageBox.Show("Name : " + oReturn["Name"].ToString());
        //Free Space in bytes
        string strFreespace = oReturn["FreeSpace"].ToString();
        D_Freespace = D_Freespace + System.Convert.ToDouble(strFreespace);
        //Size in bytes
        string strTotalspace = oReturn["Size"].ToString();
        D_Totalspace = D_Totalspace + System.Convert.ToDouble(strTotalspace);
        boxSize = (D_Totalspace / GB).ToString("##.00");
        boxFree = (D_Freespace / GB).ToString("##.00");
        Response.Write(srvname + ":" + boxSize + ":" + boxFree);
    }

Erreur de serveur dans l'Application'/'.

Le serveur RPC n'est pas disponible. (Exception de HRESULT: 0x800706BA)

Description: Une exception non gérée s'est produite pendant l'exécution de la demande web actuelle. Veuillez consulter la trace de la pile pour plus d'informations sur l'erreur et où elle a son origine dans le code.

Détails De L'Exception: System.Moment de l'exécution.InteropServices.COMException: Le serveur RPC n'est pas disponible. (Exception de HRESULT: 0x800706BA)

Source De L'Erreur:

Ligne 64:
La ligne 65: //Obtenir les résultats
Ligne 66: ManagementObjectCollection oReturnCollection = oSearcher.Get();
Ligne 67:
Ligne 68: //boucle à travers trouvé de lecteurs et d'écrire info

Fichier Source: c:\Web\medelaimages.com\iis\tool\boxinfoagent.aspx Ligne: 66

Trace De La Pile:

[COMException (0x800706ba): Le serveur RPC n'est pas disponible. (Exception de HRESULT: 0x800706BA)]
Système.Moment de l'exécution.InteropServices.Maréchal.ThrowExceptionForHRInternal(Int32 errorCode, IntPtr errorInfo) +0
Système.De la gestion.ManagementScope.InitializeGuts(Object o) +674
Système.De la gestion.ManagementScope.Initialize() +347
Système.De la gestion.ManagementObjectSearcher.Initialize() +189
Système.De la gestion.ManagementObjectSearcher.Get() +54
ASP.tool_boxinfoagent_aspx.Page_Load(Object sender, EventArgs e) dans c:\Web\medelaimages.com\iis\tool\boxinfoagent.aspx:66
Système.Web.Util.CalliHelper.EventArgFunctionCaller(IntPtr fp, l'Objet o, t Objet, EventArgs e) +25
Système.Web.L'INTERFACE utilisateur.De contrôle.LoadRecursive() +71
Système.Web.L'INTERFACE utilisateur.Page.ProcessRequestMain(Boolean includeStagesBeforeAsyncPoint, Boolean includeStagesAfterAsyncPoint) +3048

Informations De Version: Microsoft .NET Framework Version:4.0.30319; ASP.NET Version:4.0.30319.1

source d'informationauteur jwynveen