Forum |  HardWare.fr | News | Articles | PC | S'identifier | S'inscrire | Shop Recherche
1262 connectés 

  FORUM HardWare.fr
  Programmation
  VB/VBA/VBS

  Fonctionne sous l'interface de développement, l'exécutable plante ?

 


 Mot :   Pseudo :  
 
Bas de page
Auteur Sujet :

Fonctionne sous l'interface de développement, l'exécutable plante ?

n°1216689
daviso
En 2005, j'enlève le bas
Posté le 06-10-2005 à 15:21:51  profilanswer
 

C'est la première fois que je vois ça:
 
J'ai un logiciel en VB6 qui doit se connecter à une base de données mySQL. J'utilise donc l'API mySQL, je fais le développement, et tout finalement marche sous VB6. Je crée l'exécutable, je le lance, et là, à ma grande surprise, il refuse de se connecter à la base de données.  
 
Sachant que:

  • J'ai bien mis la dll libmysql.dll dans le même répertoire que l'exécutable
  • Qu'un autre programme, se connectant sur la même base de données avec la même technologie marche parfaitement
  • Qu'il n'y a pas de paramètres passés au programme par ligne de commande


Est-ce que quelqu'un voit une raison pour laquelle l'exécutable et le logiciel lancé à partir de l'interface de développement fonctionnent différemment? C'est probablement un truc débile, mais là j'avoue que je ne vois pas.  :pt1cable:

mood
Publicité
Posté le 06-10-2005 à 15:21:51  profilanswer
 

n°1217521
friday_13
sans avatar fixe
Posté le 07-10-2005 à 12:33:08  profilanswer
 

peut etre un probleme de references dans l'appli ? est-ce qu'il trouve bien les librairies ?

n°1217556
mareek
Et de 3 \o/
Posté le 07-10-2005 à 13:22:04  profilanswer
 

C'est quoi l'erreur qu'il t'affiche ?


---------------
"I wonder if the internal negative pressure in self pumping toothpaste tubes is adjusted for different market altitudes." John Carmack
n°1217646
daviso
En 2005, j'enlève le bas
Posté le 07-10-2005 à 14:20:58  profilanswer
 

Il trouve bien les librairies, puisque sinon il afficherait un message d'erreur
 
Je corrige: j'ai voulu faire le test (sur ma machine) en retirant la librairie du répertoire. Et là, ça marche.
 
Si je tente sur une autre machine, avec la librairie, il n'arrive pas à se connecter.
Si je retire la librairie du répertoire, j'ai un message d'erreur (Erreur 53: libmysql.dll introuvable). Normal.
Mais attention: si je la mets dans le répertoire system32, il n'arrive pas à se connecter certes, mais il la trouve alors que je ne lui ai jamais dit qu'elle était là-bas. :D  
 
Si je tente d'enregistre manuellement la librairie avec un regsvr32, il me répond qu'aucun point d'entrée n'a été trouvé.
 
Alors, des idées quelqu'un ?

n°1217670
mareek
Et de 3 \o/
Posté le 07-10-2005 à 14:41:58  profilanswer
 

daviso a écrit :

Il trouve bien les librairies, puisque sinon il afficherait un message d'erreur
 
Je corrige: j'ai voulu faire le test (sur ma machine) en retirant la librairie du répertoire. Et là, ça marche.
 
Si je tente sur une autre machine, avec la librairie, il n'arrive pas à se connecter.
Si je retire la librairie du répertoire, j'ai un message d'erreur (Erreur 53: libmysql.dll introuvable). Normal.
Mais attention: si je la mets dans le répertoire system32, il n'arrive pas à se connecter certes, mais il la trouve alors que je ne lui ai jamais dit qu'elle était là-bas. :D  
 
Si je tente d'enregistre manuellement la librairie avec un regsvr32, il me répond qu'aucun point d'entrée n'a été trouvé.
 
Alors, des idées quelqu'un ?


C'est le fonctionnement normal des DLL non activeX: Le programme cherche dans son répertoire et s'il ne trouve pas la DLL, il va la chercher dans system32.


---------------
"I wonder if the internal negative pressure in self pumping toothpaste tubes is adjusted for different market altitudes." John Carmack
n°1217678
daviso
En 2005, j'enlève le bas
Posté le 07-10-2005 à 14:50:06  profilanswer
 

mareek a écrit :

C'est le fonctionnement normal des DLL non activeX: Le programme cherche dans son répertoire et s'il ne trouve pas la DLL, il va la chercher dans system32.


 
D'accord, mais alors comment expliquer le fait qu'avec la dll dans son répertoire, il ne se connecte pas, et que si elle dans le system32 il se connecte?
 
Et sans planter lamentablement dans aucun des deux cas: simplement dans le premier connexion acceptée, dans le deuxième non.

n°1217681
mareek
Et de 3 \o/
Posté le 07-10-2005 à 14:52:34  profilanswer
 

daviso a écrit :

D'accord, mais alors comment expliquer le fait qu'avec la dll dans son répertoire, il ne se connecte pas, et que si elle dans le system32 il se connecte?
 
Et sans planter lamentablement dans aucun des deux cas: simplement dans le premier connexion acceptée, dans le deuxième non.


J'en sais rien, peut-être parce que la dll s'attend à se trouver dans system32 et qu'elle ne peut fonctionner autrement.


---------------
"I wonder if the internal negative pressure in self pumping toothpaste tubes is adjusted for different market altitudes." John Carmack
n°1217684
daviso
En 2005, j'enlève le bas
Posté le 07-10-2005 à 14:53:48  profilanswer
 

Question annexe, pourquoi la connexion se ferait à partir d'une machine, et pas de l'autre?

n°1217685
mareek
Et de 3 \o/
Posté le 07-10-2005 à 14:55:25  profilanswer
 

daviso a écrit :

Question annexe, pourquoi la connexion se ferait à partir d'une machine, et pas de l'autre?


parce qu'elles n'ont pas tout à fait le même environnement ;)
D'après ce que tu décris, l'autre machine n'a pas la librairie dans System32 alors que la tienne si.


---------------
"I wonder if the internal negative pressure in self pumping toothpaste tubes is adjusted for different market altitudes." John Carmack
n°1217692
daviso
En 2005, j'enlève le bas
Posté le 07-10-2005 à 15:00:12  profilanswer
 

Oui, parce que EasyPHP est installé sur ma machine, et pas sur l'autre. La barbe...


Aller à :
Ajouter une réponse
  FORUM HardWare.fr
  Programmation
  VB/VBA/VBS

  Fonctionne sous l'interface de développement, l'exécutable plante ?

 

Sujets relatifs
Requete qui fonctionne qu'a motieInterface sécurisé
Pourquoi URLConnection fonctionne sur un pc, pas sur l’autre ??Pourquoi URLConnection fonctionne sur un computer, pas sur l’autre ??
Pourquoi URLConnection fonctionne sur un pc, pas sur l’autre ??[RESOLU]récupérer le nom d'un executable pour le lancer
méthode de conception pour une interface graphique pour mon programmeBase qui reste vide mais le script fonctionne
Protection d'un Jar Executable[C# sous VS.NET] Développement pour PDA/Portable ??
Plus de sujets relatifs à : Fonctionne sous l'interface de développement, l'exécutable plante ?


Copyright © 1997-2022 Hardware.fr SARL (Signaler un contenu illicite / Données personnelles) / Groupe LDLC / Shop HFR