“Erreur de chargement de la DLL” lors de la compilation de la DLL en VB6
J'ai un visual basic 6 ".dll projet" qui utilise des références et quand "Fichier->créer une dll" est cliqué, il devrait générer un fichier dll. Eh bien, quand cliqué sur "Fichier->créer une dll", j'obtiens l'erreur "Erreur de chargement de la DLL".
Comment puis-je voir les références sont manquantes?
- Bienvenue. Il n'y a pas besoin de mettre une signature sur le fond, il est déjà inclus juste en dessous de votre post. Vous amy voulez vérifier le FAQ ainsi.
- Vous pouvez pas parcourir le code, et voir où ça explose?
- Pas de Marque, je ne peux pas. "Step Over", "Step Into", "Démarrer", "exécuter avec compilation complète" - tous de retour "Erreur de chargement de la DLL"
- Un travail de compilation?
- Est-ce une option spécifique pour vb6? Où puis-je le trouver?
- Si fonctionne sous Win 7 avec l'UAC, avez-vous essayé de lancer VB6 via "Exécuter en tant qu'Administrateur"?
- Non, je n'utilise pas de Win 7. Je travaille sous Win XP. Mais, aussi j'ai essayé "Exécuter en tant qu'administrateur", et il n'a pas réussi
- Est ce une option spécifique pour vb6? Quel a été le résultat de tenter une compilation?
- Deanna, j'ai fait "Step Over", "Step Into", "Démarrer", "exécuter avec compilation complète" - tous de retour "Erreur de chargement de la DLL". Est-il autre chose de semblable à ce que je peux essayer? Où puis-je le trouver?
- L'option de Compilation ne compile le projet, de ne pas les exécuter et peut être trouvé dans le menu Fichier étiqueté "Faire blah.exe"
- Je l'ai fait (merci de lire mon tout premier post)
Vous devez vous connecter pour publier un commentaire.
Dans le cadre du Projet -> Références.
Recherchez le mot MANQUANT: en face de la dll qui ne sont pas là.
J'ai vu cette erreur se produit lorsque les composants référencés sont recompilés avec pas de compatibilité, mais les précédentes versions de dll sont pas non enregistrées à l'avance, de sorte que les clés de registre pour les bibliothèques de types ne sont pas supprimés et ces faux entrées de registre pointe vers la nouvelle dll.
Habituellement je traite avec ces avec un intérieur registry cleaner outil qui permet de supprimer les bibliothèques de types/clsid/interfaces d'enregistrement basé sur la bibliothèque de types d'emplacement de disque. Vous pouvez essayer de déplacer les fichiers physiques de l'référencé projets vers un autre emplacement sur le disque et
regsvr32
là, les supprimer manuellement des références dans le fichier de projet, le redémarrage de l'IDE et de rouvrir le projet, enfin, ajouter des références et vérifiez que la dll emplacement de dialogue ajouter une référence pointe vers le nouvel emplacement des fichiers.Si vous n'avez pas de références MANQUANTES, puis essayez de compiler les bibliothèques du projet à l'aide de la compatibilité de projet au lieu de la compatibilité binaire. VB6 peut se confondre avec la compatibilité Binaire lorsqu'il y a plusieurs bibliothèques de référence dans une hiérarchie de bibliothèques.
Ça fait un moment, mais à partir du menu en haut - "Projet" -> "Références" et les manquants sont généralement mis en surbrillance ou de dire manquant à côté d'eux.
Dans Project -> Références, double-vérifier l'Emplacement de tous vos références. Votre référence pourrait avoir le droit de nom, mais pourrait être dirigée vers une autre instance de la même DLL.
En 2019, a obtenu le même message d'erreur sur mon vieux xp ordinateur portable dans un projet en cours de migration à partir d'Excel VBA pour VB6. J'ai lu toutes les réponses ci-dessus, et n'a pas pu résoudre le problème (Pas de références Manquantes pour commencer et il n'y a pas beaucoup de changements effectués sur les bibliothèques par défaut' endroits). Ce qui s'est réellement résolu mon problème est un peu étrange. J'ai double-cliqué et ouvert toutes les formes et Concepteur de modules (essentiellement charger des composants de la mémoire) et le tour est joué, l'erreur est allé de son propre. J'ai essayé de reproduire l'erreur et il ne retour lorsque je lance l'IDE une fois de plus. Enfin trouvé, il est l'un de ces encombrants userform avec beaucoup de contrôle est le coupable. Je ne pouvais pas comprendre exactement où le contrôle est à l'origine de la dll erreur, mais pour l'instant, le travail est fait.