2010-01-11 6 views
0

J'ai récemment déplacé mon environnement de développement (VS.NET 2008 SP1 sur VMWare) vers un nouveau réseau, en utilisant un pare-feu plus restrictif. Au cours des générations suivantes, le compilateur de licence (lc.exe) a pris du temps à se terminer (plusieurs minutes). Je suppose que le délai était expiré parce qu'il n'était pas capable de se connecter via le pare-feu, mais je ne vois aucune preuve de dépassement de délai ni d'erreur de construction dans le journal des événements. Savez-vous si lc.exe essaie de communiquer de nouveau avec le serveur de licences du fournisseur, et si oui, s'il utilise un port non-http pour le faire? Google n'était pas mon ami sur celui-ci.Problèmes de connectivité réseau avec le compilateur de licence .NET (LC.EXE)

+1

Avez-vous essayé un analyseur de réseau? – SLaks

Répondre

1

lc.exe peut se connecter de manière externe si vous utilisez un composant disposant d'un fournisseur de licence personnalisé.

This article (qui est très très âgé, mais toujours approprié) décrit comment cela pourrait être fait.

Envisagez de créer un très petit projet de travail qui n'exige rien au-delà des contrôles .NET normaux, et voyez si cela fonctionne de manière satisfaisante. Si oui, alors quelque chose comme WireShark pourrait vous dire ce qui se passe, ou vérifier avec le fournisseur du contrôle.

1

Cela peut se produire si vous travaillez avec des assemblages signés numériquement. Essayez ce qui suit, après l'installation de .net 3.5 SP1:

1) Dans Internet Explorer, outils | options | avancé | sécurité | décochez "vérifier la révocation du certificat de l'éditeur".
2) modifier c: \ windows \ microsoft.net \ Framework \ v2.0.50727 \ config \ machine.config, et ajoutez la clé suivante:

<configuration> 
<runtime> 
    <generatePublisherEvidence enabled="false"/> 

J'ai eu un problème très similaire (longs temps JIT) , et la seconde absolument fixé notre problème. Comme Jeremy le note également, nous avons déterminé que c'était notre problème lorsque nous avons utilisé wireshark pour voir que le serveur arrivait à expiration des requêtes DNS pour résoudre le nom des serveurs externes utilisés pour les certificats.