J'ai essayé de charger un fichier OCX dans un de mes projets VB6 pendant la majeure partie de la journée. J'ai essayé de vérifier l'enregistrement de COM dans le registre le meilleur que je sais, et j'ai essayé plusieurs fois en utilisant REGSVR32 sur le fichier en vain. Tout ce que je reçois de VB6 quand j'essaye de charger le composant (Sous Projet -> Composants) est 'FilePath \ FileName.ocx' n'a pas pu être chargé. Quelqu'un d'autre a-t-il déjà vu cela, et si oui, des idées pour y remédier?Erreur VB6 - Impossible de charger le fichier .ocx
Répondre
Cela peut être un problème de dépendance - un autre composant requis par l'OCX n'est pas présent. Dependency Walker trouvera toutes les dépendances statiques.
Juste quelques conseils pour vous aider à isoler le problème ....
Regardez le contrôle avec OleView
Examiner le nom: si elle est l'un des mots réservés tels que « Menu », vb6 ne parviendra pas à le charger. (Bien que vb6 vous permette de créer (et d'utiliser) avec un mauvais nom jusqu'à ce qu'il soit sauvegardé et rechargé)
Examinez l'interface: décrit-elle la fonctionnalité? Vous pouvez avoir un ocx endommagé ou non autorisé.
Essayez de le charger avec le conteneur de test ActiveX Control ... Si vous le pouvez, le problème se situe au niveau de VB6 et non de l'ocx.
En OleView Fichier-> Voir Typelib sur le OCX et notez les lignes de importlib. Par exemple importlib ("oleguids3.tlb"); signifie que cette tlb est nécessaire pour être enregistré sur la machine dev avant de référencer l'OCX. La raison en est que si une bibliothèque est référencée par les interfaces [externes] de l'OCX, elle doit être enregistrée sur la machine de développement ou l'OCX est inutilisable dans l'EDI. – wqw
Lorsque vous dites que vous avez utilisé "REGSVR32 sur le fichier en vain" voulez-vous dire que vous obtenez un nom de fichier a réussi un message, ou un message d'erreur? Si l'enregistrement du fichier réussit, CMB a probablement raison sur le fait que l'ocx n'est pas autorisé.
Licence mise à part, il y a quelques autres points de déclenchement avec vb6. Surtout si l'OCX a été développé en VB6. Si tel est le cas, la version enregistrée du système «officiellement» peut entrer en conflit avec l'ocx spécifique que vous utilisez. En d'autres termes, les deux peuvent avoir le même nom propre (ou classid) mais celui que vous essayez d'utiliser peut ne pas implémenter toutes les fonctionnalités décrites dans le système enregistré (c'est-à-dire que vous avez une version moins évoluée). Cela se produit lorsque l'auteur souhaite maintenir la compatibilité binaire tout en améliorant la fonctionnalité d'un contrôle. Tant que les interfaces publiques restent compatibles, vb ne recalculera pas le classid.
Vous pouvez résoudre ce problème en désenregistrant de force le contrôle spécifique (en fait, désenregistrez toutes les instances du contrôle). (regsvr32/u control.ocx) Ensuite, ré-enregistrer celui que vous avez l'intention d'utiliser. Assurez-vous qu'il n'existe aucune instance de VB6 en cours d'exécution ou que les résultats risquent de ne pas fonctionner. (Vérifiez votre liste des tâches)
espoir qui aide ...
Le contrôle peut être dépendante d'une autre DLL ou OCX qui peut être manquant ou non enregistré et ce pourrait manifeste lui-même comme VB rapports que le contrôle vous essayez d'utiliser est manquant. Cependant, je ne suis pas sûr de la façon dont vous identifieriez les dépendances. Autant que je sache, le dépendant de la dépendance identifie les dépendances statiques; Je ne suis pas sûr si elle peut identifier les dépendances COM.
Nous avons récemment corrigé une erreur similaire. Dans notre cas, l'erreur était dans le fichier de projet Visual Basic (.vbp). Le fichier de projet avait été modifié en dehors de la machine de construction standardisée et contenait des références aux composants OCX - y compris les chemins spécifiques au poste de travail & versions des composants.
Vous pouvez modifier le fichier du projet dans l'éditeur de texte ou obtenir une version de travail à partir du contrôle de version.
Un registre le Ocx re enregistrer l'ocx puis chargé le projet à nouveau dans VB6, cela a fonctionné pour moi.
Merci à tous
La désinscription et l'enregistrement ont de nouveau fonctionné pour moi aussi.
S'il vous plaît noter que vous devez enregistrer ce composant en utilisant cette syntaxe:
regsvr32 /i:design olch2x8.ocx
- 1. Comment corriger l'erreur "Impossible de charger le contrôle SSPanel; licence non trouvée" dans le programme VB6
- 2. Erreur ASP.NET: Impossible de charger le fichier ou l'assembly App_Web_z9w33txs
- 3. Impossible de charger le fichier ou l'assemblage
- 4. Impossible de charger le fichier ou l'assemblage
- 5. Comment utiliser IE ocx sur VB6
- 6. Impossible de charger le fichier ou l'erreur d'assemblage
- 7. Impossible de charger l'Assemblée
- 8. NUnit "Impossible de charger le fichier ou d'assembler 'MyTestProject'
- 9. Impossible de charger CrystalDecisions.ReportAppServer.ClientDoc
- 10. Erreur d'exécution ASP.NET: Impossible de charger le fichier ou l'assemblage 'DotNetOpenAuth,
- 11. Impossible de charger le fichier ou l'assembly microsoft.hpc.scheduler, Version = 2.0.0.0,
- 12. Impossible de charger le fichier ou l'assemblage 'Microsoft.VisualStudio.Enterprise.ASPNetHelper
- 13. MSCOMM32.ocx causes d'utilisation Non approuvé Erreur
- 14. Impossible de charger le type 'XXX.Global'
- 15. Impossible de charger ResourceDictionary externe
- 16. Puis-je créer un seul VB6 OCX avec plusieurs contrôles?
- 17. Sharepoint "Impossible de charger le fichier ou l'assemblage" "Le système ne trouve pas le fichier spécifié"
- 18. Erreur 500: Filtre [Spring OpenEntityManagerInViewFilter]: impossible de charger
- 19. Impossible de charger le module dojo personnalisé
- 20. Erreur de sécurité Flex, impossible de charger les données
- 21. FICHIER DE RAPPORT DE DONNÉES VB6
- 22. Impossible de charger le type MyNameSpace.PageName
- 23. Erreur de liaison: impossible d'ouvrir le fichier 'CHARTGROUPFRAME.DFM'
- 24. Erreur avec custom_tag, impossible de trouver le fichier
- 25. Impossible de charger les ressources du fichier de ressources
- 26. Impossible de charger System.Data.Linq.dll pour CodeDom
- 27. Erreur Flash OCX se bloque IE6/7
- 28. Impossible de charger le fichier ou l'assembly 'App_Licenses' ou l'une de ses dépendances. L'accès est refusé
- 29. Impossible de charger mon fournisseur d'appartenances personnalisé?
- 30. ASP.Net MVC "Impossible de charger le type" lors de l'exécution
Effectivement, cela s'est avéré être un problème de dépendance. Cela fait un moment que je me suis battu avec celui-ci, complètement oublié que j'avais demandé à ce sujet. –