Erreur d'exécution 48 - Erreur de chargement de la dll

Signaler
Messages postés
855
Date d'inscription
samedi 11 juin 2005
Statut
Membre
Dernière intervention
21 août 2015
-
Messages postés
18038
Date d'inscription
lundi 7 décembre 2009
Statut
Modérateur
Dernière intervention
11 avril 2018
-
Salut !

J'ai empaqueté mon application, installé sur une machine qui n'a jamais recu VB6 et lancé l'exe.
Il a démarré (VB6FR.DLL existant) et il a chargé... 88% paf il m'envoie après ce code :
Private Sub Bande_Timer()
pour(0).Caption = Val(Bnd.Width / 3615 * 100)
If Bnd.Width > 3615 Then Bnd.Width = 5175
Bnd.Width = Bnd.Width + 80
If pour(0).Caption = 100 Then Index.term
End Sub

Public Sub term()
Unload Index
Acces.Show 1
End Sub

Private Sub Bande_Timer()
pour(0).Caption = Val(Bnd.Width / 3615 * 100)
If Bnd.Width > 3615 Then Bnd.Width = 5175
Bnd.Width = Bnd.Width + 80
If pour(0).Caption = 100 Then Index.term
End Sub

Public Sub term()
Unload Index
Acces.Show 1
End Sub

Private Sub Form_Load()
Bnd.Width = 0
End Sub


je rencontre l'erreur suivant :
[b]Erreur d'exécution 48
Erreur de chargement de la dll/b

Avez vous une solution svp pour remédier ce problème ?

Merci

----------
OS : Windows XP SP3 et Vista 32
Platforme : VB 6.0 + SP6
Ok VB6.0 c'est pas net !
A voir également:

7 réponses

Messages postés
14008
Date d'inscription
samedi 29 décembre 2001
Statut
Modérateur
Dernière intervention
28 août 2015
75
Salut
Pas clair.
Tu as un problème d'install ou de run ?
"Il a démarré (VB6FR.DLL existant) et il a chargé... 88%" : Qui "il" ? Le Setup ou ton EXE ?
Pourquoi nous parles-tu de VB6FR.DLL ?
Ce pourcentage de 88%, c'est ton EXE qui le génère ou bien c'est pendant la procédure d'install ?

Quant à ton code, on ne peut rien en dire sans les définitions des variables : comment les as-tu dimensionnées ?
Les 'règles de l'art' (méthode "à la hongroise") précaunisent d'intégrer quelques lettres identifiant le type de l'objet ou de la variable.
Par exemple "lblPour" au lieu de "pour" pour désigner un Label ou encore iIndex pour désigner un Integer
De cette manière, n'importe qui lisant ton code hors contexte le comprendra plus facilement.
Comme tu ne l'as pas fait, impossible pour nous de savoir ce que sont pour, Band, Index,

Très mauvaise idée d'appeler des objets comme des mots réservés du language : Index

Vala
Jack, MVP VB
NB : Je ne répondrai pas aux messages privés

Le savoir est la seule matière qui s'accroit quand on la partage (Socrate)
Messages postés
18038
Date d'inscription
lundi 7 décembre 2009
Statut
Modérateur
Dernière intervention
11 avril 2018
236
Bonjour,

et moi j'adore :

et il a chargé... 88% paf il m'envoie après ce code

et on voit quoi ? ===>> le code APRES lequel surgit madame l'erreur ! (code qu'on ne voit par contre pas !)... C'est vraiment très fort , du genre "cherchez donc où il peut y avoir un problème d'utilisation d'une dll" à la suite (que je ne vous montre pas) de ce qui marche encore sans erreur ...

____________________
Vous aimez Codes-Sources ? Il vous aide ? Cliquez ici pour l'aider à continuer
[color=red]Cliquer sur "Réponse acceptée" (en bas d'une solu
Messages postés
13280
Date d'inscription
lundi 13 décembre 2004
Statut
Modérateur
Dernière intervention
3 février 2018
43
salut,

.... et comment tu connais cette fausse portion, puisque c'est le compilé qui est lancé?

ps : index = le nom de la form? donc TERM va refaite un load? pffou je préfère même pas tenter de deviner cette fois
Jack t'es prêt à reprendre ton titre cette année? ^^


[hr]
Messages postés
14008
Date d'inscription
samedi 29 décembre 2001
Statut
Modérateur
Dernière intervention
28 août 2015
75
Non.
Je vieillis et je voudrais bien laisser une chance aux d'jeuns
Messages postés
855
Date d'inscription
samedi 11 juin 2005
Statut
Membre
Dernière intervention
21 août 2015

Salut à tous et un gros mdr.

Bon je m'explique mieux (enfin j'espère :D)
J'ai empaqueté mon application. J'ai installé l'application. Mon formulaire premier s'appel Index.
Il se ferme après 30 secondes et ouvre une fenêtre qui se connecter à la base de donnée Acces depuis un Data (en connexion codée).
Une fois que l'index veut se fermer après le chrono pour ouvrir la fenêtre Menu, il me donne cette erreur :
Erreur d'exécution 48
Erreur de chargement de la dll

Donc en fête, mon appli, une fois installée sur un pc qui n'a pas reçu VB, démarre grâce à la dll de vb6fr.dll mais refuse de se connecter à la base de donnée.
De quelle dll il s'agit ? Je ne sais pas. Pourquoi cette erreur ? Je ne sais pas non plus.

J'espère avoir été cette fois plus claire :p oubliez ce que j'ai dis plus haut, la pression de mes clients me fait souvent glander sur le clavier :/

Enfin, merci à tous pour votre patience !
Messages postés
13280
Date d'inscription
lundi 13 décembre 2004
Statut
Modérateur
Dernière intervention
3 février 2018
43
OK donc mis à part que INDEX est un nom stupide et que, bien que maintenant tu le saches, tu ne l'as pas changé, si l'erreur vient de l'autre formulaire, pourquoi ne nous as-tu toujours pas montré le code de cet autre formulaire?....

(enfin je suppose que la progression est-celle d'INDEX
donc Unload Index au lieu de unload me, c'est VB qui se prend pour Delon, sans doute...)

l'erreur n'indique en rien que c'est vb6fr.dll
et si c'était le cas, il n'y aurait déjà pas la première form

donc : TON CODE ???

et as-tu essayé de faire un 2e projet avec un accès base simple, pour voir si c'était lié au code de la database??...
Messages postés
18038
Date d'inscription
lundi 7 décembre 2009
Statut
Modérateur
Dernière intervention
11 avril 2018
236
Private Sub Bande_Timer()
  pour(0).Caption = Val(Bnd.Width / 3615 * 100)
  If Bnd.Width > 3615 Then Bnd.Width = 5175
  Bnd.Width = Bnd.Width + 80
  If pour(0).Caption = 100 Then Index.term
End Sub

Public Sub term()
  Unload Index
  Acces.Show 1
End Sub

le fait d'appeler la procédure term (qui fait très peu) et de l'avoir mise en public donne à penser qu'elle est appelée depuis ailleurs (depuis où et quoi ?) ce qui justifierait peut-être ( hum) cette imitation de Delon ....
Pas top, de tpouites manières, de créer et d'appeler une procédure pour juste çà !
Bizarre, également, cette "logique" :

 If Bnd.Width > 3615 Then Bnd.Width = 5175
  Bnd.Width = Bnd.Width + 80


ce qui fait que si la largeur est plus petite que 3615, elle ne passe pas à 5175, mais que dans tous mles cas elle est ensuite augmentée de 80.
Je veux bien, mais si la largeur (exemple) = 3615, elle devient 3695 (et donc inférieure à ce qu'elle serait devenue si elle était au départ > 3615) !
Bizarre, bizarre !
____________________
Vous aimez Codes-Sources ? Il vous aide ? Cliquez ici pour l'aider à continuer
Cliquer sur "Réponse acceptée" en bas d'une solution adéquate est