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

Windows Forms Discussion :

[VB.NET] Problème d'executable


Sujet :

Windows Forms

  1. #1
    Membre averti
    Profil pro
    Développeur Back-End
    Inscrit en
    Avril 2006
    Messages
    44
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations professionnelles :
    Activité : Développeur Back-End

    Informations forums :
    Inscription : Avril 2006
    Messages : 44
    Par défaut [VB.NET] Problème d'executable
    Bonjour,

    J'utilise Visual Basic 2005 Express Edition et je rencontre quelques problèmes lors de la génération de mon executable.

    J'ai réalisé un programme qui fonctionne bien sur ma machine de développement. Lorsque je fais "publier" VB me génére un exe qui lui fonctionne très bien sur ma machine mais qui pose problème sur les machine autre que celle sur lequel elle fut développée.
    Je vous explique son comportement :
    Mon application est un client qui se connecte sur un serveur lorsque je clique sur un bouton. Lorsque je lance l'application tout semble fonctionner mais dès que je lance l'ouverture de connexion mon programme plante puis se ferme.
    Hors, si je lance mon application depuis le fichier Setup créé lors de la publication de mon exe, alors là tout fonctionne. Y a t'il une astuce pour générer un exe sans passer par le fichier Setup ?

    D'avance merci pour votre aide.

  2. #2
    Membre averti
    Profil pro
    Développeur Back-End
    Inscrit en
    Avril 2006
    Messages
    44
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations professionnelles :
    Activité : Développeur Back-End

    Informations forums :
    Inscription : Avril 2006
    Messages : 44
    Par défaut
    un petit up en espérant avoir une réponse.
    Peut-être que mon explication n'est pas très claire aussi...

  3. #3
    Membre Expert
    Avatar de Piotrek
    Homme Profil pro
    Développeur .NET
    Inscrit en
    Mars 2004
    Messages
    869
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Ain (Rhône Alpes)

    Informations professionnelles :
    Activité : Développeur .NET

    Informations forums :
    Inscription : Mars 2004
    Messages : 869
    Par défaut
    Salut

    J'ai pas tres bien compris l'histoire du fichier setup mais:

    - Si tu utilise des Dlls qui ne sont pas standard et non inclues dans le framework, verifie qu'elles existent bien apres l'install sur l'autre client
    - Analyse l'exception generee par ton application
    - Si elle n'est pas explicite, cree dans ton code une gestion d'erreur en mettant quelques try-catch + msgbox dans les etapes cruciales de la connection au serveur.

  4. #4
    Membre averti
    Profil pro
    Développeur Back-End
    Inscrit en
    Avril 2006
    Messages
    44
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations professionnelles :
    Activité : Développeur Back-End

    Informations forums :
    Inscription : Avril 2006
    Messages : 44
    Par défaut
    Bon, je m'en douté mon explication n'est pas claire.

    Pour faire plus simple :

    Est-il possible sous Visual Basic Express de créer un fichier éxécutable final de son programme ? si oui comment fait-on ?

    Car mon fichier exe créé ne fonctionne que sur ma machine (celle avec laquelle je l'ai développé). Si je le lance sur une autre machine cela ne fonctionne pas.

  5. #5
    Membre averti
    Profil pro
    Développeur Back-End
    Inscrit en
    Avril 2006
    Messages
    44
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations professionnelles :
    Activité : Développeur Back-End

    Informations forums :
    Inscription : Avril 2006
    Messages : 44
    Par défaut
    le seul fichier qui fonctionne ailleur que sur ma machine c'est un fichier dont l'extension est xxxxx.manifest

    C'est quoi ca les fichiers en .manifest ?

  6. #6
    Rédacteur
    Avatar de dev01
    Profil pro
    Inscrit en
    Mai 2004
    Messages
    2 451
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mai 2004
    Messages : 2 451
    Par défaut
    Salut .

    sur ta deuxieme machine (celle ou tu ne développes pas) tu as bien installé le framework 2.0 ?

    Sinon le fichier .manifest est un fichier d'indication des librairies systèmes à utiliser. Il est généré automatiquement est ne doit pas modifié.

  7. #7
    Membre averti
    Profil pro
    Développeur Back-End
    Inscrit en
    Avril 2006
    Messages
    44
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations professionnelles :
    Activité : Développeur Back-End

    Informations forums :
    Inscription : Avril 2006
    Messages : 44
    Par défaut
    Oui dev01, j'ai bien installé le framework 2 sur l'autre machine.

    Ce que je trouve étrange c'est que lorsque je compile le programme, VB studio me créé un fichier manifest, un fichier setup.exe ainsi qu'un directory avec plein de fichier. Si je lance le setup.exe sur l'autre machine, une installation démarre puis ensuite mon programme se lance et fonctionne correctement. Je ne comprend pas le fonctionnement de ce fichier setup et pourquoi mon programme en .exe qui se trouve dans la directory release ne fonctionne pas.

  8. #8
    Membre averti
    Profil pro
    Développeur Back-End
    Inscrit en
    Avril 2006
    Messages
    44
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations professionnelles :
    Activité : Développeur Back-End

    Informations forums :
    Inscription : Avril 2006
    Messages : 44
    Par défaut
    Bon j'ai avancé dans le problème.

    Pour résumer :

    Il se trouve que l'exe créé fonctionne sur la machine qui sert de développement mais pas sur les autres même si le framework 2 est installé.

    Le programme plante dès que je lance un thread contenant quelques lignes de code sinon si je fais un simple thread avec un messagebox.show("coucou") le programme fonctionne sans planter.

    Il y a t'il des recommandations pour lancer un thread ?
    Voici les commandes que j'utilise :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
     
    Dim threadconnect As New System.Threading.Thread(AddressOf demande_connection)
    Dim threadpopup As New System.Threading.Thread(AddressOf popup)
    threadconnect.Start()
    threadpopup.Start()

  9. #9
    Membre averti
    Profil pro
    Développeur Back-End
    Inscrit en
    Avril 2006
    Messages
    44
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations professionnelles :
    Activité : Développeur Back-End

    Informations forums :
    Inscription : Avril 2006
    Messages : 44
    Par défaut
    Enfin j'ai trouvé mon problème, cela provient de la ligne suivante :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    Public Declare Sub Sleep Lib "kernel32" Alias "Sleep" (ByVal dwMilliseconds As Integer)
    Dès que j'appel la fonction Sleep(xxx) mon application plante. existe t'il un truc à intégrer au projet afin de lui dire charger cette DLL ou un truc dans le genre ? Je tiens à rappeler que je n'ai pas de problème quand je lance mon programme sur la machine où je l'ai développé.

  10. #10
    Membre éprouvé Avatar de Angath
    Profil pro
    Inscrit en
    Juin 2004
    Messages
    140
    Détails du profil
    Informations personnelles :
    Âge : 50
    Localisation : France, Bouches du Rhône (Provence Alpes Côte d'Azur)

    Informations forums :
    Inscription : Juin 2004
    Messages : 140
    Par défaut
    Pour faire un sleep, utilise Thread.sleep(milliseconde) dans l'espace de nom System.Threading. Ca t'éviteras de faire appel une une dll externe (kernel32)

  11. #11
    Membre averti
    Profil pro
    Développeur Back-End
    Inscrit en
    Avril 2006
    Messages
    44
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations professionnelles :
    Activité : Développeur Back-End

    Informations forums :
    Inscription : Avril 2006
    Messages : 44
    Par défaut
    Super Angath ca fonctionne ! merci pour ton aide

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

Discussions similaires

  1. Problème d'execution des ASP.net sous D 2007
    Par bahmani dans le forum Delphi .NET
    Réponses: 0
    Dernier message: 22/11/2009, 10h39
  2. Probléme d'execution d'un curseur sous vb.net 2008
    Par chahinaz21 dans le forum VB.NET
    Réponses: 0
    Dernier message: 13/11/2009, 12h28
  3. Réponses: 3
    Dernier message: 24/02/2009, 18h00
  4. probléme d'execution d'une page web asp.net
    Par grungy-soul dans le forum ASP.NET
    Réponses: 12
    Dernier message: 15/10/2008, 11h54
  5. problème lancement executable avec winexec()
    Par semenzato dans le forum MFC
    Réponses: 5
    Dernier message: 19/01/2004, 11h48

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