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

VB 6 et antérieur Discussion :

Problème avec MSCOMCTL.OCX et VB6 sous W10


Sujet :

VB 6 et antérieur

  1. #1
    Membre à l'essai
    Homme Profil pro
    Développeur en systèmes embarqués
    Inscrit en
    Avril 2016
    Messages
    22
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Côte d'Or (Bourgogne)

    Informations professionnelles :
    Activité : Développeur en systèmes embarqués
    Secteur : Aéronautique - Marine - Espace - Armement

    Informations forums :
    Inscription : Avril 2016
    Messages : 22
    Points : 11
    Points
    11
    Par défaut Problème avec MSCOMCTL.OCX et VB6 sous W10
    Bonjour, je viens de m'inscrire, étant développeur VB6 depuis de nombreuses années.
    Je rencontre un problème très agaçant depuis quelques jours :

    J'ai un PC sous windows 10. J'y ai installé mon VB6 et repris mes sources de mon ancien PC sous seven.

    Cela ne s'est pas fait sans mal, mais cela s'est fait (s'habituer à W10 !)

    Il y a quelques jours, mon VB ne "reconnais plus MSCOMCTL.OCX que j'utilise plus que de raison dans mes progs.

    Quand je lance mon .vbp, VB démarre (en mode admin) et affiche : Impossible de charger'' après j'ai toute la série de .log qui me renvoie "La classe MSComctlLib.ListView du contrôle ListView1 n'est pas une classe de contrôle chargée."
    Et quand je crée un nouveau projet et veux ajouter MSCOMCTL.OCX, l'IDE plante en mode non admin et affiche pareil Impossible de charger'' (avec les deux apostrophes) en mode admin

    Il y a aussi un truc, très souvent quand je charge un vpb, une alerte visual component manager s'ouvre :La méthode '~' de l'objet '~' a échoué

    Pourtant j'ai bien cet OCX dans sysWOW64 (il y a MSCOMCTL OCX, OCA, SRG et DEP) l'OCX date du 9/01/2013 et fait 1 070 152 oct, version 6.01.9834

    (Je l'ai aussi dans System32 !!!
    Dans regedit je vois que les objets du genre imagelist, treeview et consort se réfère à celui qui est dans sysWOW64, mais je trouve aussi une référence à celui qui est dans system32 !!!)

    Cet OCX marche très bien sur mon ancien PC (sous seven) avec le même VB et a marché très bien sous ce PC ci (sous W10) depuis décembre dernier

    Je l'ai re-régistré (en mode administrateur, sinon _> erreur) avec succès

    Quelqu'un a-t-il une idée pour me sortir de ce mauvais pas ?

    Cordialement

  2. #2
    Modérateur
    Avatar de l_autodidacte
    Homme Profil pro
    Retraité : Directeur de lycée/Professeur de sciences physiques
    Inscrit en
    Juillet 2009
    Messages
    2 415
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 68
    Localisation : Tunisie

    Informations professionnelles :
    Activité : Retraité : Directeur de lycée/Professeur de sciences physiques
    Secteur : Enseignement

    Informations forums :
    Inscription : Juillet 2009
    Messages : 2 415
    Points : 5 806
    Points
    5 806
    Par défaut
    Salut et BIENVENU sur DVP.

    Une question pareille(ou presque) a été posée ICI.
    Essaie de regarder les réponses qui y sont, peut-être que l'une d'elles te vient en secours.
    Ne pas oublier le tag si satisfait.
    Voter pour toute réponse satisfaisante avec pour encourager les intervenants.
    Balises CODE indispensables. Regardez ICI
    Toujours utiliser la clause Option Explicit(VBx, VBS ou VBA) et Ne jamais typer variables et/ou fonctions en VBS.
    Vous pouvez consulter mes contributions
    Ne pas oublier de consulter les différentes FAQs et les Cours/Tutoriels VB6/VBScript
    Ne pas oublier L'Aide VBScript et MSDN VB6 Fr

  3. #3
    Membre à l'essai
    Homme Profil pro
    Développeur en systèmes embarqués
    Inscrit en
    Avril 2016
    Messages
    22
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Côte d'Or (Bourgogne)

    Informations professionnelles :
    Activité : Développeur en systèmes embarqués
    Secteur : Aéronautique - Marine - Espace - Armement

    Informations forums :
    Inscription : Avril 2016
    Messages : 22
    Points : 11
    Points
    11
    Par défaut
    Citation Envoyé par l_autodidacte Voir le message
    Salut et BIENVENU sur DVP.

    Une question pareille(ou presque) a été posée ICI.
    Essaie de regarder les réponses qui y sont, peut-être que l'une d'elle te vient en secours.
    Bonjour l_autodidacte
    Merci de votre accueil
    Je suis un fidèle de VB6 depuis ... je ne me souviens plus
    Je n'ai jamais pu migrer vers .net et maintenant je crois que c'est trop tard, en outre je n'ai jamais compris pourquoi MS avait fait tellement de changements, il aurait tout simplement pu faire un IDE ou on peut mélager sans soucis du VB (VB6) et du C++.

    Bon, concernant mon problème, j'ai lu le post 8589101
    Mon service pack refuse de s'installer, me répondant qu'il n'y a pas de VB sur mon poste ! Grrrr !
    Mais je ne suis pas sûr que cela soit vraiment nécessaire puisque les OCX du SP6 sont présent de toute façon.
    En outre, avant il y a quelques jours, ça marchait

    Mais

    je viens de faire un essai. Je crée un .vbp et y insère une copie de MSCOMCTL.OCX que j'ai placé dans le même répertoire, et là ... ça marche
    En revanche il ne veux pas de celui (le même) qui est dans sysWOW64.

    Bon, quand je regarde le .vbp je vois référencé Object={831FDD16-0C5C-11D2-A9FC-0000F8754DA1}#2.1#0; MSCOMCTL.OCX mais pas d'indication du chemin vers le répertoire du projet, où l'IDE trouve-t-il cette info ?
    En revanche, il a créé un MSCOMCTL.OCA dans le répertoire du projet

    Merci de m'aider

  4. #4
    Membre extrêmement actif
    Homme Profil pro
    aucune
    Inscrit en
    Avril 2016
    Messages
    7 563
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 82
    Localisation : France, Pyrénées Atlantiques (Aquitaine)

    Informations professionnelles :
    Activité : aucune

    Informations forums :
    Inscription : Avril 2016
    Messages : 7 563
    Points : 12 422
    Points
    12 422
    Par défaut
    Bonjour

    Mon service pack refuse de s'installer, me répondant qu'il n'y a pas de VB sur mon poste
    une question (et je crois qu'elle te rappellera quelque-chose) : sais-tu ce que veut dire "appli vb6.exe tombée d'un camion ?" ?
    Je n'accepte pas de demande d' "amitié" individuelle. Tout développeur est pour moi un ami.
    Je n'ouvre AUCUN classeur tiers (avec ou sans macro ******). Ne m'en proposez donc pas .

    ****** : Non, non ... un classeur .xlsx ne "peut" par exemple et entre autres pas contenir un activex (de surcroît invisible) , "bien sûr" ...

    Il est illusoire de penser que l'on saurait exprimer valablement et précisément en un langage (rigide) de développement ce que l'on peine à exprimer dans le langage naturel, bien plus souple.

  5. #5
    Membre à l'essai
    Homme Profil pro
    Développeur en systèmes embarqués
    Inscrit en
    Avril 2016
    Messages
    22
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Côte d'Or (Bourgogne)

    Informations professionnelles :
    Activité : Développeur en systèmes embarqués
    Secteur : Aéronautique - Marine - Espace - Armement

    Informations forums :
    Inscription : Avril 2016
    Messages : 22
    Points : 11
    Points
    11
    Par défaut
    Citation Envoyé par unparia Voir le message
    Bonjour


    une question (et je crois qu'elle te rappellera quelque-chose) : sais-tu ce que veut dire "appli vb6.exe tombée d'un camion ?" ?
    Non

  6. #6
    Modérateur
    Avatar de l_autodidacte
    Homme Profil pro
    Retraité : Directeur de lycée/Professeur de sciences physiques
    Inscrit en
    Juillet 2009
    Messages
    2 415
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 68
    Localisation : Tunisie

    Informations professionnelles :
    Activité : Retraité : Directeur de lycée/Professeur de sciences physiques
    Secteur : Enseignement

    Informations forums :
    Inscription : Juillet 2009
    Messages : 2 415
    Points : 5 806
    Points
    5 806
    Par défaut
    Citation Envoyé par VBLed Voir le message
    Mais je ne suis pas sûr que cela soit vraiment nécessaire puisque les OCX du SP6 sont présent de toute façon.
    Justement, il s'agit d'une mise à jour.

    Pour l'appli tombée d'un camion : Il veut dire qu'on ne trouve même pas les morceaux de cette appli, le camion étant très haut.
    Autrement dit il te décourage à continuer d'utiliser VB6 et t'incite à passer à autre chose de plus récent.
    En outre, avant il y a quelques jours, ça marchait
    Peut-être une mise à jour de Windows qui en est la cause !
    Bon, quand je regarde le .vbp je vois référencé Object={831FDD16-0C5C-11D2-A9FC-0000F8754DA1}#2.1#0; MSCOMCTL.OCX mais pas d'indication du chemin vers le répertoire du projet, où l'IDE trouve-t-il cette info ?
    En revanche, il a créé un MSCOMCTL.OCA dans le répertoire du projet
    Quand il s'agit du répertoire courant, il ne l'indique pas.
    La référence est lue directement à partir du fichier lui-même et non à partir du registre. Une fois la lecture faite, il crée le fichier .OCA dont le contenu n'est autre que celui du fichier .OCX avec quelques autres infos qu'utilise VB6.
    D'ailleurs, j'ai codé une petite Application qui recherche tout ce qui est utilisable dans les fichiers ocx, oca, dll, exe, tlb, pkg ...
    Ne pas oublier le tag si satisfait.
    Voter pour toute réponse satisfaisante avec pour encourager les intervenants.
    Balises CODE indispensables. Regardez ICI
    Toujours utiliser la clause Option Explicit(VBx, VBS ou VBA) et Ne jamais typer variables et/ou fonctions en VBS.
    Vous pouvez consulter mes contributions
    Ne pas oublier de consulter les différentes FAQs et les Cours/Tutoriels VB6/VBScript
    Ne pas oublier L'Aide VBScript et MSDN VB6 Fr

  7. #7
    Membre à l'essai
    Homme Profil pro
    Développeur en systèmes embarqués
    Inscrit en
    Avril 2016
    Messages
    22
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Côte d'Or (Bourgogne)

    Informations professionnelles :
    Activité : Développeur en systèmes embarqués
    Secteur : Aéronautique - Marine - Espace - Armement

    Informations forums :
    Inscription : Avril 2016
    Messages : 22
    Points : 11
    Points
    11
    Par défaut
    Citation Envoyé par l_autodidacte Voir le message
    La référence est lue directement à partir du fichier lui-même et non à partir du registre. Une fois la lecture faite, il crée le fichier .OCA dont le contenu n'est autre que celui du fichier .OCX avec quelques autres infos qu'utilise VB6.
    D'ailleurs, j'ai codé une petite Application qui recherche tout ce qui est utilisable dans les fichiers ocx, oca, dll, exe, tlb, pkg ...
    En tout cas ce que je vois c'est que quand je référence cet OCX (ce n'est pas vrai pour les autres) depuis sysWOW64 ou system32 ça plante, mais depuis le répertoire du projet ça marche
    Glups, tout de même

    Bon WE

  8. #8
    Membre extrêmement actif
    Homme Profil pro
    aucune
    Inscrit en
    Avril 2016
    Messages
    7 563
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 82
    Localisation : France, Pyrénées Atlantiques (Aquitaine)

    Informations professionnelles :
    Activité : aucune

    Informations forums :
    Inscription : Avril 2016
    Messages : 7 563
    Points : 12 422
    Points
    12 422
    Par défaut
    @VBled : l'appli VB6.exe "tombée d'un camion" est une appli "récupérée" sans licence. Et ses service packs successifs éventuels s'en ressentent assez bien.
    Re-question, maintenant que tu le sais : ton appli VB6.exe est-elle "tombée d'un camion" ? (Réponse oui ou réponse non)
    Je n'accepte pas de demande d' "amitié" individuelle. Tout développeur est pour moi un ami.
    Je n'ouvre AUCUN classeur tiers (avec ou sans macro ******). Ne m'en proposez donc pas .

    ****** : Non, non ... un classeur .xlsx ne "peut" par exemple et entre autres pas contenir un activex (de surcroît invisible) , "bien sûr" ...

    Il est illusoire de penser que l'on saurait exprimer valablement et précisément en un langage (rigide) de développement ce que l'on peine à exprimer dans le langage naturel, bien plus souple.

  9. #9
    Membre à l'essai
    Homme Profil pro
    Développeur en systèmes embarqués
    Inscrit en
    Avril 2016
    Messages
    22
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Côte d'Or (Bourgogne)

    Informations professionnelles :
    Activité : Développeur en systèmes embarqués
    Secteur : Aéronautique - Marine - Espace - Armement

    Informations forums :
    Inscription : Avril 2016
    Messages : 22
    Points : 11
    Points
    11
    Par défaut
    Citation Envoyé par unparia Voir le message
    @VBled : l'appli VB6.exe "tombée d'un camion" est une appli "récupérée" sans licence. Et ses service packs successifs éventuels s'en ressentent assez bien.
    Re-question, maintenant que tu le sais : ton appli VB6.exe est-elle "tombée d'un camion" ? (Réponse oui ou réponse non)
    Aucunement !

Discussions similaires

  1. Réponses: 8
    Dernier message: 26/01/2016, 20h24
  2. [AC-2010] Problème avec MSCOMCTL.OCX inexistant dans les Références
    Par Razmote dans le forum VBA Access
    Réponses: 5
    Dernier message: 10/11/2014, 17h45
  3. Problème avec MSFLXGRD.OCX
    Par Bes74 dans le forum Access
    Réponses: 1
    Dernier message: 17/06/2006, 01h47
  4. Réponses: 11
    Dernier message: 14/02/2006, 00h26
  5. pb avec un ocx en vb6
    Par arsa dans le forum VB 6 et antérieur
    Réponses: 4
    Dernier message: 26/11/2005, 12h37

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