2009-03-04 3 views
18

Nous avons une application qui démarre un serveur WCF et l'application lit à partir de celui-ci.Obtenir System.ServiceModel.AddressAccessDeniedException sur Vista pour le service WCF

Il démarre et peut être lu correctement sur toutes les machines Windows XP.

Sur notre machine Vista, cependant, nous obtenons:

System.ServiceModel.AddressAccessDeniedException 
"The process has no rights to this namespace." 
System.Net.HttpListenerException 

L'URL est à localhost:

http://localhost:8731/ABC.Testing.Business.Core/SecurityService/?wsdl

Le message d'erreur nous a envoyé ici:

http://msdn.microsoft.com/en-us/library/ms733768.aspx

Et nous avons fait ce que c'est id:

netsh http add urlacl url=... user=... 

qui a changé les droits, mais le service WCF ne démarre toujours pas sur Vista.

Quelqu'un a-t-il une expérience avec cela qui pourrait nous faire progresser? Merci.

+0

J'ai eu des problèmes similaires sur Vista, que je ne l'ai pas encore compris. Quelle erreur lance-t-il maintenant que vous avez exécuté cette commande netsh? Avez-vous essayé de donner à cet utilisateur des privilèges d'administrateur local? –

+0

Dans la commande netsh j'ai donné les droits à l'utilisateur que l'application, mais ce que je pense que je dois faire est de savoir quel processus a besoin des droits, mais c'est une application basée sur Unity et le WCF est démarré avant même arrive au bootstrapper, alors de quel processus ai-je besoin pour donner des droits? –

+0

Je pense que je suis dans le même bateau que vous maintenant ... je ne sais pas quoi faire :) J'ai fait la même chose avec mon service (commande netsh), et il ne fonctionnera toujours pas dans Vista, mais il fonctionne bien sous XP si j'exécute la commande httpcfg équivalente. Il doit y avoir un paramètre énigmatique quelque part dans Vista qui nous bloque. –

Répondre

19

J'ai eu un problème similaire avec Windows 7 en cours d'exécution de Visual Studio 2010. Ma solution était une simple bibliothèque de services WCF avec un simple projet de console servant l'hôte de service WCF. Mon adresse de base dans app.config était "http: // localhost: 8080/BookService" et j'ai oublié que je devais démarrer Visual Studio en tant qu'administrateur afin d'obtenir Windows pour mapper ce port à mon application. Dès que j'ai démarré Visual Studio en tant qu'administrateur (clic droit, Exécuter en tant qu'administrateur), il a fonctionné comme un champion.

+0

J'ai essayé et ça a marché. –

0

j'avais le même problème lors de l'exécution du projet dans VS2013 sous Windows 8 OS, ce problème sont résolus quand j'ai commencé mon projet en tant qu'administrateur ..

Essayez de démarrer votre application en tant qu'administrateur.

Merci Mayank Nagar

Questions connexes