2

J'ai actuellement une application écrite en C# qui ajoute un site Web pour IIS7 sur la machine actuelle et il fonctionne parfaitement, le code est le suivantAjout d'un site à IIS7 sur la machine distante C#

var iisManager = new ServerManager();  

var sites = iisManager.Sites; 

var site = sites.Add("WebsiteName", "C:\Website", 80); 

var application = site.Applications[0]; 

application.ApplicationPoolName = appPool; 

iisManager.CommitChanges(); 

Je dois créer une version de ce code qui ajoutera un site Web à IIS sur une machine distante située sur le même réseau. Ce code est le suivant. Lorsque machineName est la machine qui exécute le code, elle ajoute le site Web à IIS. Cependant, lorsque machineName est la machine distante, j'obtiens l'exception suivante

La récupération de la fabrique de classe COM pour le composant distant avec CLSID {2B72138B-3F5E-4502-8052-803546CE3364} à partir de "nom de la machine distante" a échoué en raison de l'erreur suivante : 80070005 "machine distante"

l'exception se produit lors de l'exécution

var iisManager= ServerManager.OpenRemote("machineName"); 

Avant d'exécuter le code ci-dessus j'utilise l'usurpation d'identité pour usurper l'identité d'un administrateur. Je peux à distance dans la machine et même créer un fichier sur la machine en utilisant le code C#.

Je suppose qu'il y a un problème avec les autorisations sur la machine distante ou parce que c'est une machine virtuelle, je n'en suis pas sûr.

Le code 80070005, est assez général et représente un accès restreint, mais je ne comprends pas pourquoi je considère comme un administrateur. J'exécute le code sur un ordinateur Windows 7 SP1 x64 et la machine virtuelle distante exécute Windows Server 2008 SP2 x64.

Si quelqu'un a des idées pour résoudre ce problème ou un autre moyen d'ajouter un site Web à IIS sur une machine distante, j'aimerais les entendre.

Merci

+1

Je crois que vous wiuld devez configurer le Gestionnaire des 7 pour permettre les connexions à distance . Voir http://www.iis.net/learn/manage/remote-administration/remote-administration-for-iis-manager une fois configuré vous devriez pouvoir ouvrir iis 7 manager sur votre machine locale puis vous connecter à la machine distante une fois que ce travail fonctionne, je devine que le code va le faire. Vérifiez également le pare-feu local et le pare-feu distant pour vous assurer que rien n'est refusé. rouge. Vérifiez donc le journal des événements sur les deux machines. Il peut donner un peu de lumière – Kyle

+0

Kyle, merci pour votre réponse. Il s'avère que mon code fonctionnait mais le compte que j'utilisais n'avait pas les permissions correctes parce qu'il était dans un domaine différent. Lorsque je l'ai testé dans un environnement où les deux machines utilisaient les mêmes informations d'identification et se trouvaient sur le même domaine, cela fonctionnait parfaitement. – Dan

+0

Il s'avère que mon problème était avec l'usurpation d'identité. J'ai usurpé l'identité avec les "correctes" informations d'identification d'administrateur, mais parce que mon ordinateur et l'autre machine se trouvent dans deux domaines différents, il attendait DomainA.Admin et à la place je tentais de me connecter avec DomainB.Admin – Dan

Répondre

0

d'abord tout ce que vous exécutez votre studio visuel en tant qu'administrateur et Windows OFF pare-feu du serveur voir alors il fonctionnera pour le serveur à distance

Questions connexes