2017-01-21 1 views
0

Aidez-moi s'il vous plaît!Erreur lors de la création de la liaison CreateServer pour WMI Créer un site Web (C#)

J'ai passé en revue environ 100 pages de source.

Je ne pouvais tout simplement pas le faire.

Je travaille 2 jours.

Mon dernier point est la création d'une liaison.

Je reçois une erreur «Accès refusé».

[TR] Commentaires Yaklaşık 100 kaynak sayfa inceledim.

Bir türlü yapamadım.

2 gündür uğraşıyorum.

Fils geldiğim nokta Binding oluşturma.

"Accès refusé" hatası alıyorum.

Erreur;

enter image description here

public void Creator() 
{ 

    string hostName = "BuBirSitedir"; 
    string domainName = "www.bubirsitedir.com"; 

    ConnectionOptions options = new ConnectionOptions(); 
    options.Impersonation = System.Management.ImpersonationLevel.Impersonate; 
    options.Authentication = AuthenticationLevel.Connect; 
    options.EnablePrivileges = true; 
    options.Impersonation = ImpersonationLevel.Default; 

    ManagementClass classInstance = new ManagementClass("root\\WebAdministration", "Site", null); 

    ManagementScope scope = new ManagementScope(string.Format(@"\\{0}\root\MicrosoftIISV2", "DESKTOP-MGA1F3C"), options); 
    scope.Connect(); 

    ManagementBaseObject[] serverBindings = new ManagementBaseObject[3]; 
    serverBindings[0] = CreateServerBinding(scope, string.Format("{0}", hostName, domainName), "127.0.0.1", 40804); 
    serverBindings[1] = CreateServerBinding(scope, string.Format("30603", hostName, domainName), "127.0.0.1", 30603); 
    serverBindings[2] = CreateServerBinding(scope, string.Format("127.0.0.1", hostName, domainName), "127.0.0.1", 20402); 
} 

private static ManagementObject CreateServerBinding(ManagementScope scope, string hostName, string ip, int port) 
{ 
    ManagementClass mc = new ManagementClass(scope, new ManagementPath("ServerBinding"), null); 
    ManagementObject mco = mc.CreateInstance(); 
    mco.Properties["Hostname"].Value = hostName; 
    mco.Properties["IP"].Value = ip; 
    mco.Properties["Port"].Value = port; 
    mco.Put(); 
    return mco; 
} 

Répondre

0

Je résolu le problème. Poste de travail (clic droit)> Gérer> Gestion de l'ordinateur (local)> Services et application> Contrôle WMI (clic droit)> Sécurité (onglet)> Elément de liste sélectionner et cliquer sur le bouton de sécurité> Sélectionner utilisateur> Tout autoriser> OK

Non répertorié comme utilisateur. Cliquez sur le bouton avancé. Ecrivez "tout le monde" et entrez.

enter image description here