IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Visual Studio Discussion :

Executable Locké lors de la compilation VS2012


Sujet :

Visual Studio

  1. #1
    Membre confirmé
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Décembre 2005
    Messages
    482
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 43

    Informations professionnelles :
    Activité : Développeur informatique
    Secteur : Agroalimentaire - Agriculture

    Informations forums :
    Inscription : Décembre 2005
    Messages : 482
    Points : 625
    Points
    625
    Par défaut Executable Locké lors de la compilation VS2012
    Salut, je bosse sous visual studio 2012.
    Je compile/execute mon programme, ca fonctionne, puis, au bout d'un moment j'ai beau tenter de le recompiler il me dit
    Erreur 17 Impossible de copier "obj\Release\Etiquator.exe" vers "bin\Release\Etiquator.exe". Nombre de tentatives dépassé de 10. Échec de l'opération. Etiquator
    et
    Erreur 18 Impossible de copier le fichier "obj\Release\Etiquator.exe" vers "bin\Release\Etiquator.exe". Le processus ne peut pas accéder au fichier 'bin\Release\Etiquator.exe', car il est en cours d'utilisation par un autre processus. Etiquator
    Là, plus possible de le recompiler... le seul moyen que j'ai trouvé (à part relancer VS ...) c'est de passer de release à debug, ou changer le type de processeur (ce qui crée un autre répertoire). Mais au bout d'un moment cet exe aussi est bloqué. et je fini par avoir 4 versions de mon exe qui sont bloquées

    J'ai eu beau tenter de killer le process Etiquator.vshost.exe, il disparait et revient immédiatement dans mon gestionnaire des taches... et le fichier est encore utilisé.

    Autre précision :
    c'est un projet qui fonctionnait très bien avec visual studio 2005 avant que je l'importe en vs 2012 (framework 2!)
    De plus, j'ai déjà eu cette erreur dans d'autres projets.
    Après moultes recherches sur le web j'ai vu que d'autres personnes avaient ce problème, mais aucune solution de trouvée. pour moi cela vient de visual studio qui doit garder un lock sur l'exe

    Dernière info :
    Quand je tente de supprimer moi même l'éxecutable, Windows 7 me balance comme erreur qu'il est utilisé par "Visual studio 2012" ...

    PS: pour ceux qui me prendraient pour une quiche : le programme n'est pas en cours d'execution / de debug ^^
    "Essayer est le premier pas vers l'Echec !" (Homer Simpson)

  2. #2
    Membre éprouvé Avatar de worm83
    Homme Profil pro
    Architecte logiciel
    Inscrit en
    Février 2010
    Messages
    459
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 41
    Localisation : France, Bouches du Rhône (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : Architecte logiciel
    Secteur : Conseil

    Informations forums :
    Inscription : Février 2010
    Messages : 459
    Points : 1 118
    Points
    1 118
    Par défaut
    Salut,

    Je pense que c'est uniquement un pb de droit, tu executait vs2005 en admin peut être ?

    Essaye de lancer Vs en admin ça confirmera le diagnostic.
    "Le train de tes injures roule sur le rail de mon indifférence."

    "Monde de merde !!"

    Georges Abitbol.

  3. #3
    Membre confirmé
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Décembre 2005
    Messages
    482
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 43

    Informations professionnelles :
    Activité : Développeur informatique
    Secteur : Agroalimentaire - Agriculture

    Informations forums :
    Inscription : Décembre 2005
    Messages : 482
    Points : 625
    Points
    625
    Par défaut
    Salut,
    merci pour ta réponse, mais les droits ne disparaissent pas d'un coup comme ça;
    Avant qu'il me balance cette erreur j'arrive bien à lancer mon programme deux ou trois fois
    "Essayer est le premier pas vers l'Echec !" (Homer Simpson)

  4. #4
    Membre éprouvé Avatar de worm83
    Homme Profil pro
    Architecte logiciel
    Inscrit en
    Février 2010
    Messages
    459
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 41
    Localisation : France, Bouches du Rhône (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : Architecte logiciel
    Secteur : Conseil

    Informations forums :
    Inscription : Février 2010
    Messages : 459
    Points : 1 118
    Points
    1 118
    Par défaut
    ok, je comprend mieux.

    Oui effectivement plutôt étrange.
    Surtout que ça te le fait également sur d'autre projet. T'as installé les mises à jour (update 2)?
    "Le train de tes injures roule sur le rail de mon indifférence."

    "Monde de merde !!"

    Georges Abitbol.

  5. #5
    Membre confirmé
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Décembre 2005
    Messages
    482
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 43

    Informations professionnelles :
    Activité : Développeur informatique
    Secteur : Agroalimentaire - Agriculture

    Informations forums :
    Inscription : Décembre 2005
    Messages : 482
    Points : 625
    Points
    625
    Par défaut
    Ouaip, c'est a jour :/
    "Essayer est le premier pas vers l'Echec !" (Homer Simpson)

  6. #6
    Expert confirmé
    Homme Profil pro
    Développeur .NET
    Inscrit en
    Novembre 2009
    Messages
    2 005
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 34
    Localisation : France, Bouches du Rhône (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : Développeur .NET

    Informations forums :
    Inscription : Novembre 2009
    Messages : 2 005
    Points : 5 428
    Points
    5 428
    Par défaut
    La fois d'avant ou tu lances ton programmes, tu es bien sur qu'il est terminé? Genre tu fermes l'IHM, mais un thread derrière continue une opération.
    Et si tu supprimes "à la main" le fameux obj\Release\Etiquator.exe qu'est ce que ca te dit?

    Ca me fait un peu penser à un problème qui m'arrive parfois avec l'explorateur lorsque je veux supprimer un fichier à la main et qu'il me dit qu'il est utiliser par un autre processus. Je ferme alors explorer.exe, ouvre une commande dos et le supprime. Je ne jamais compris pourquoi explorer.exe avait un espece de lock de temps à autre. Peut être un problème similaire.

  7. #7
    Membre confirmé
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Décembre 2005
    Messages
    482
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 43

    Informations professionnelles :
    Activité : Développeur informatique
    Secteur : Agroalimentaire - Agriculture

    Informations forums :
    Inscription : Décembre 2005
    Messages : 482
    Points : 625
    Points
    625
    Par défaut
    Gasp, désolé pour le retard mais en vacances je ne code pas (ou peu :p)

    Donc : évidemment que j'ai tenté de le supprimer à la main, mais il est "en cours d'utilisation par visual studio 2012"; le seul moyen est de fermer VS et de le relancer. De plus, j'ai évidemment bien vérifié que le programme n'était pas en cours d'exécution/débuggage etc...

    Ces programmes fonctionnaient parfaitement avec visual studio 2005, c'est depuis la migration vers VS2012 que ça foire Comme si l'IDE gardait un hook sur mon .exe
    "Essayer est le premier pas vers l'Echec !" (Homer Simpson)

  8. #8
    Membre confirmé
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Décembre 2005
    Messages
    482
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 43

    Informations professionnelles :
    Activité : Développeur informatique
    Secteur : Agroalimentaire - Agriculture

    Informations forums :
    Inscription : Décembre 2005
    Messages : 482
    Points : 625
    Points
    625
    Par défaut
    hop,
    pas encore testé la solution, mais elle est là :

    http://keyvan.io/file-lock-issue-in-...ding-a-project

    PS : Testé avec succès => il faut mettre ceci dans le Pré-build de lu projet :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    if exist "$(TargetPath).locked" del "$(TargetPath).locked"
    if exist "$(TargetPath)" if not exist "$(TargetPath).locked" move "$(TargetPath)" "$(TargetPath).locked"
    "Essayer est le premier pas vers l'Echec !" (Homer Simpson)

  9. #9
    Candidat au Club
    Profil pro
    Inscrit en
    Mai 2006
    Messages
    1
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mai 2006
    Messages : 1
    Points : 3
    Points
    3
    Par défaut
    Citation Envoyé par Themacleod1980 Voir le message
    hop,
    pas encore testé la solution, mais elle est là :

    http://keyvan.io/file-lock-issue-in-...ding-a-project

    PS : Testé avec succès => il faut mettre ceci dans le Pré-build de lu projet :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    if exist "$(TargetPath).locked" del "$(TargetPath).locked"
    if exist "$(TargetPath)" if not exist "$(TargetPath).locked" move "$(TargetPath)" "$(TargetPath).locked"
    salut salut,

    Fausse bonne solution, effectivement ça copie le fichier et le met de côté, donc on se retrouve avec un fichier [fichier.exe].locked qui est mis de côté mais qui continue à être bloqué par le processus visual studio, mais finalement l'erreur réapparaît au bout de quelques compilations vu qu'on ne peut plus supprimer ni notre [fichier.exe] ni le [fichier.exe].locked

    Une autre solution dans le même genre reste de dater le fichier quand on le copie on est ainsi sur de ne jamais se retrouver avec 2 fichiers ayant le même nom :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
    if exist "$(TargetPath)" move "$(TargetPath)" "$(TargetPath)_%date:~0,2%%date:~3,2%%date:~6,4%_%time:~0,2%%time:~3,2%%time:~6,2% "

    mais bon en fait on entasse des fichiers executables pourris dans notre repertoire donc il faut aller faire un tour dedans de temps à autres.

    Donc pas de solution propre à proprement dit qui expliquerait ce bug...
    Pour ma part j'ai remarqué que ça arrivait quand j'avais certains fichiers GUI (suffixé [Design]) d'ouvert, l'erreur de base doit venir de là mais impossible à détecter.

    Bien à vous

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. Réponses: 2
    Dernier message: 07/12/2005, 13h14
  2. Réponses: 7
    Dernier message: 27/09/2005, 22h40
  3. [Debutant] probleme lors de la compilation
    Par boobi dans le forum Débuter
    Réponses: 5
    Dernier message: 26/08/2005, 16h57
  4. [MYSQL] Probleme lors de la compilation
    Par Nasky dans le forum Autres éditeurs
    Réponses: 10
    Dernier message: 24/02/2004, 18h04
  5. Warnings lors de la compilation
    Par polo54 dans le forum C
    Réponses: 5
    Dernier message: 07/02/2003, 10h12

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo