Erreur lors de l’utilisation du service Web de Winform App - & # 8220; Impossible d’exécuter un programme & # 8230; & # 8221;

StackOverflow https://stackoverflow.com/questions/62268

  •  09-06-2019
  •  | 
  •  

Question

J'ai une application Winform qui appelle un service Web pour rechercher des mises à jour. Cela fonctionne dans dev et cela fonctionne aussi partout où je l'ai essayé, mais pas sur la copie installée sur ma machine (qui se trouve être la même chose dans dev).

L'erreur est:

Impossible d'exécuter un programme. La commande en cours d'exécution était " C: \ WINDOWS \ Microsoft.NET \ Framework \ v2.0.50727 \ csc.exe " / noconfig / fullpaths @ "" C: \ Documents and Settings \ Giovanni.DOUBLE-AFSSZ043 \ Paramètres locaux \ Temp \ squ8oock.cmdline ".

Le pare-feu est désactivé et j'ai recherché "C: \ Documents and Settings \ Giovanni.DOUBLE-AFSSZ043 \ Paramètres locaux \ Temp \ squ8oock.cmdline". et ce n'est pas là. Notez que chaque fois que j'essaie d'utiliser le service Web, le fichier ".cmdline". Le fichier est différent. Par exemple, la deuxième fois que je l'ai exécuté, il s'agissait de "dae8rgen.cmdline". Quel que soit son nom, je ne pourrai jamais trouver le fichier.

Des suggestions?

Était-ce utile?

La solution

La " .cmdline " fichier est un fichier généré automatiquement par le framework .NET. L’application tente de compiler en temps réel un sérialiseur XML utilisé pour analyser les données du service Web.

Avez-vous vérifié que vous pouvez exécuter " csc.exe " à partir d'une fenêtre de ligne de commande? Même en tapant " C: \ WINDOWS \ Microsoft.NET \ Framework \ v2.0.50727 \ csc.exe /? & Quot; devrait vous donner une liste d’options pour le compilateur (ou vous donner une erreur si vous n’avez pas l’autorisation de l’exécuter).

Sous quel compte utilisateur utilisez-vous ce logiciel et est-il autorisé à exécuter des fichiers .exe dans le répertoire Windows? De même, je sais que vous avez dit que cela se produisait avec la copie installée sur votre ordinateur, mais est-il possible qu’il s’exécute à partir d’un partage réseau et reçoive des autorisations limitées de Code Access Security qui l’empêcheraient d’exécuter des exécutables locaux?

Pour référence, voici un article de la base de connaissances illustrant une erreur similaire susceptible de se produire dans ASP.NET lorsque le compte d'utilisateur ne dispose pas d'autorisations suffisantes. http://support.microsoft.com/kb/315904

Autres conseils

J'ai eu le même problème et j'ai découvert que je n'avais plus assez de mémoire.

Après avoir vérifié Redhats " ANTS Memory Profiler " J'ai trouvé que j'avais beaucoup de mémoire dans le COM + des racines du GC. Un rapide google et je me suis retrouvé ici: msdn XmlSerializers

J'ai ensuite lu le texte suivant:

  

Si vous utilisez l'un des autres   constructeurs, plusieurs versions du   même assemblage sont générés et jamais   déchargé, ce qui entraîne une mémoire   fuite et mauvaise performance. Le plus facile   la solution consiste à utiliser l'un des   mentionné précédemment deux constructeurs.   Sinon, vous devez mettre en cache le   assemblées dans une table de hachage ...

Après avoir créé une table de hachage pour les sérialiseurs, mon problème de fuite de mémoire (et de performances médiocres) et le message d'erreur résultant, comme le vôtre, avaient disparu.

J'ai résolu le même problème avec un ISSReset

Si AppLocker est appliqué, veuillez autoriser ci-dessous (ajouter comme exception de chemin)

c: \ windows \ MICROSOFT.NET \ FRAMEWORK \ V2.0.50727 \ CSC.EXE c: \ windows \ MICROSOFT.NET \ FRAMEWORK \ V2.0.50727 \ CVTRES.EXE

Licencié sous: CC-BY-SA avec attribution
Non affilié à StackOverflow
scroll top