le contrôle conteneur n'est pas un conteneur valide

Résolu
ALBrustis - 18 janv. 2013 à 10:56
Calade Messages postés 1207 Date d'inscription dimanche 20 avril 2003 Statut Membre Dernière intervention 4 juin 2016 - 24 janv. 2013 à 07:51
Bonjour a tous
je bute sur le probléme suivant
Sur un projet en VB6
aprés l'avoir installé sur une autre machine
j'ai l'erreur suivante
au lancement du projet:
Impossible de charger le contrôle Fichier_; le contrôle conteneur n'est pas un conteneur valide
"le contrôle Fichier_" est en définitive le menu de la feuille
et surprenant j'ai une sauvegarde qui peut se charger
j'ai contourné le probléme en sauvegardant le code et les modif dans un fichier txt
que je copie et remplace après avoir chargé la sauvegarde

merci pour votre aide

78 réponses

bonjour @ucfoutu

j'ai été induit en erreur par ton terme
"installant"
Donc c'est une création d'un nouveau projet dans un répertoire différent

c'est ce que j'ai fait .
tous le frm + module et module de classe pointent et sont enregistrés dans ce nouveau répertoire

et l'erreur est identique

merci encore
0
ucfoutu Messages postés 18038 Date d'inscription lundi 7 décembre 2009 Statut Modérateur Dernière intervention 11 avril 2018 211
21 janv. 2013 à 10:29
tous le frm + module et module de classe pointent et sont enregistrés dans ce nouveau répertoire

et l'erreur est identique

Je m'y attendais un peu.
on en vient alors à ce que j'exprimais plus haut.
Pour des raisons que je ne connais pas, VB pointe en réalité vers d'autres fichiers que ceux que tu crois et transformes. Il est probable que cela a été dû à des copies de fichiers d'un répertoire vers l'autre. Cela m'est arrivé plus d'une fois.
Essaye d'ouvrir tes forms, un par un (depuis l'explorateur ... chaque fichier .frm), sans ouvrir VBP, y compris éventuellement en erreur.===>> fais l'inventaire des contrôles qu'il contient et vérifie que le composant nécessaire a bien été coché. Si l'un d'eux a été "transformé" par VB en picturebox : note son nom - supprime le contrôle - réinsère-le avec le même nom que celui qu'il avait
Lorsque tu auras terminé ainsi avec chacun des Forms ==>> supprime l'ancien VBP et reconstitue-le seulement alors (save project).
Essaye ainsi.


________________________
Réponse exacte ? => "REPONSE ACCEPTEE" facilitera les recherches.
Pas d'aide en ligne installée ? => ne comptez pas sur moi pour simplement répéter son contenu. Je n'interviendrai que si nécessité de la compléter.
0
ucfoutu Messages postés 18038 Date d'inscription lundi 7 décembre 2009 Statut Modérateur Dernière intervention 11 avril 2018 211
21 janv. 2013 à 11:08
on ! J'ai dit des bêtises ===>> on corrige ===>>
- tu crée un nouveau dossier (appelons-le toto) depuis l'explorateur
- tu y copies un form (le 1er) depuis l'explorateur
- tu ouvres ce .frm par VB tu le corriges comme dit plus haut (picturebox indue à remplacer par le contrôle attendu, après l'avoir coché dans la liste des compôsants supplémentaires)
- tu sauvegardes le .frm et le projet et ferme
puis, depuis l'explorateur, tu copies dans le 2ème Form dans toto
- tu ouvres maintenant par VB le projet VBP et ajoutes ce 2ème form à ton projet.
Tu corriges au besoin comme fait pour le 1er form
- tu sauvegardes ce 2ème form et le projet vbp
etc ... Form par Form
Tu insères également les modules s'il y en as ('copie depuis l'explorateur puis ajouter module depuis vb)
N'oublie pas d'aller dans les propriétés du projet pour vérifier que tout est dans le non ordre, notamment en ce qui concerne le form de démarrage.
________________________
Réponse exacte ? => "REPONSE ACCEPTEE" facilitera les recherches.
Pas d'aide en ligne installée ? => ne comptez pas sur moi pour simplement répéter son contenu. Je n'interviendrai que si nécessité de la compléter.
0
Utilisateur anonyme
21 janv. 2013 à 12:52
Bonjour,

Je lis dès le premier post :
[...] et surprenant j'ai une sauvegarde qui peut se charger [...]

Pourquoi ne pas substituer le formulaire en défaut par celui de la sauvegarde ?
0

Vous n’avez pas trouvé la réponse que vous recherchez ?

Posez votre question
ucfoutu Messages postés 18038 Date d'inscription lundi 7 décembre 2009 Statut Modérateur Dernière intervention 11 avril 2018 211
21 janv. 2013 à 13:08
Bonjour, banana32,
Au hasard : parce-que cette sauvegarde n'incluait pas la modif apportée.


________________________
Réponse exacte ? => "REPONSE ACCEPTEE" facilitera les recherches.
Pas d'aide en ligne installée ? => ne comptez pas sur moi pour simplement répéter son contenu. Je n'interviendrai que si nécessité de la compléter.
0
Utilisateur anonyme
21 janv. 2013 à 13:11
Rien ne l'empêche de faire cette substitution et de coder la modif à nouveau.
Sujet résolu donc
0
Calade Messages postés 1207 Date d'inscription dimanche 20 avril 2003 Statut Membre Dernière intervention 4 juin 2016 10
21 janv. 2013 à 13:52
Bonjour,

Je viens de lire toute la discussion et à moins d'avoir manqué quelque chose (ce qui est fort possible), j'ai une suggestion.

Tu dis que ton problème viens d'un menu. Ceux-ci étant sauvegardé en texte dans le frm, tu pourrais essayer ceci:

Ouvres- le .FRM concerné dans le Notepad ou assimilé (avec VB6 fermé of course)
Repère tout ce qui concerne ce fameux menu, sélectionne-le et copie dans un autre fichier texte EN LE SUPPRIMANT physiquement du .FRM.
Sauvegarde celui-ci et essaie de l'ouvrir avec VB6.

Si ça marche, tu sais ce qu'il te reste à faire.

J'espère ne pas être hors sujet.


Calade
0
bonjour @banana32
merci de te joindre a mon probleme

si je code en sup ou meme si j'enregistre cette form (sauvegarde)sans rien modifier (feuille qui fait défaut)je ne peut plus la recharger et comme vu, sur les posts précédent
l'err se trouve toujours au niveau du chargement du menu de VB6

@ucfoutu

"Si l'un d'eux a été "transformé" par VB en picturebox : note son nom - supprime le contrôle"


aprés scan du fichier frm incriminé pas de picturebox en vu!

je n'ai pas besoin normalement de revoir toutes mes forms
une seule cause problème (le soucis c'est que c'est le cœur du programme)a tu tester ? lien début post

maintenant que je suis repartie sur projet "propre" (nouveau dossier)
je vais essayer de refaire la form...mais beaucoup de code..

je voulais pas en arrivé là.. mais la porte de sortie se rétréci sérieusement
et j'ai pas envie de rester sur un échec

merci encore
0
bonjour @Calade
merci de te joindre a nous

Tu dis que ton problème viens d'un menu. Ceux-ci étant sauvegardé en texte dans le frm,

l'erreur est a ce niveau.mais est ce ce menu qui est incriminé ? j'ai un gros doute
ex:
j'ai chargé mon "nouveau projet" tout propre (avec sauvegarde)
j'ai vérifier les composants et les référence cochées
j'ai crée une nouvelle form form1
j'ai copié tous les composants de l'ancienne vers la nouvelle (ctrt a ctrl c
je copie toute ma mise a jour (voir fil de discut qui a été sauvé dans txt
(a ce stade je n'ai aucun menu dessus malgré que dans la mise a jour txt il y soit)
je commence a crée mon 1° élément du menu
je ne vais pas plus loin
je sauvegarde tout.. je ferme..
je recharge le projet et .. oh surprise
c'est la form1 qui recharge pas
avec l'err au même endroit

et j'essaye de repousser le moment ou il me faudra tout reprendre a zéro
pour l'instant je vais y aller par déduction en enlevant des ocx..

je tout a fait d'accort avec @ucfoutu
sur son jugement..
Il est probable que cela a été dû à des copies de fichiers d'un répertoire vers l'autre. Cela m'est arrivé plus d'une fois.

mais ou trouver l'erreur ?

merci a tous encore pour votre aide
0
l'erreur est a ce niveau.mais est ce ce menu qui est incriminé ? j'ai un gros doute

j'ai voulu dire:
l'erreur est a ce niveau . mais est ce ce menu qui est a incriminé ? j'ai un gros doute
0
Calade Messages postés 1207 Date d'inscription dimanche 20 avril 2003 Statut Membre Dernière intervention 4 juin 2016 10
21 janv. 2013 à 16:50
Je continue mes divagations.
Sur une sauvegarde de ta form qui pose problème, essaye de n'ouvrir QUE celle-ci sous VB (menu contextuel de l'explo'). En principe tu devrais avoir une (ou plusieurs) erreurs pour des modules manquants.

Dans cette sauvegarde (et sous VB) supprime-les un par un avec fermeture/sauvegarde PUIS réouverture de la même manière. peut-être arriveras-tu à isoler le contrôle fautif.

Si tu veux je peux aussi regarder. Si ta form n'est pas trop grosse, tu peux la mettre sur le forum (au format texte bien sur) avec le .FRX associé si besoin ou tu me l'envoies par MP.

Cela ne marchera peut-être pas mais on peut toujours tenter.

Je regarderais demain car je pars en réunion (à 17h!!!).


Calade
0
Utilisateur anonyme
21 janv. 2013 à 20:01
Je ne sais pas si l'on peut éditer le fichier de lancement du projet vbp et voir s'il n'y a pas quelque chose qui cloche (un chemin mal écrit etc...) ?
0
ucfoutu Messages postés 18038 Date d'inscription lundi 7 décembre 2009 Statut Modérateur Dernière intervention 11 avril 2018 211
21 janv. 2013 à 21:28
Bonhjour, banana32,
Bien sur, que ce fichier peut-être ouvert et lu par notepad.
On n'y trouvera toutefois pas des chemins. Des clsid, oui, mais tout ce qui aidera dans cette affaire (c'est à dire la place dans la bdr).


________________________
Réponse exacte ? => "REPONSE ACCEPTEE" facilitera les recherches.
Pas d'aide en ligne installée ? => ne comptez pas sur moi pour simplement répéter son contenu. Je n'interviendrai que si nécessité de la compléter.
0
cs_Jack Messages postés 14006 Date d'inscription samedi 29 décembre 2001 Statut Modérateur Dernière intervention 28 août 2015 79
21 janv. 2013 à 22:19
Désolé de vous avoir lâchement abandonné, grosse crève cloué au lit.

Pourrais-tu copier-coller ici le début du fichier FRM de ta forme :
Un fichier FRM contient :
- les indications sur les composants placés sur ta forme (nom, chemin, position, personnalisation.
- le code VB6 de la forme.

Normalement, la première ligne de code devrait être "Option Explicit"
Peux-tu copier-coller tout ce qui se trouve entre le début du fichier et le "Option Explicit" --- ou encore mettre en ligne le fichier FRM, ce sera plus simple.
0
Bonsoir tout le monde
très heureux @jack que ta crève va mieux

j'ai essayé le mettre le frm mais il doit être
trop volumineux (346 k)
je le vois pas apparaitre dans le fil de discutions

je l'ai déposé a cette adresse ainsi que le frx

merci a tous pour votre aide
0
Calade Messages postés 1207 Date d'inscription dimanche 20 avril 2003 Statut Membre Dernière intervention 4 juin 2016 10
22 janv. 2013 à 07:39
Re bonjour à tous,

Après examen du FRM, pas facile de dire quelque chose.
Pour supprimer les erreurs concernant les contrôles non chargées, j'ai pu référencer tout sauf les AnyButtons que je ne possède pas.

Résultat, après sauvegarde du projet ainsi modifié (et du FRM), plus aucune erreur en tenant compte du fait que les AnyButtons aient tous été remplacés par des PictureBox.

J'aurais donc tendance à dire que, si le problème peut se limiter à ces 2 fichiers (FRM et FRX), cela pourrait venir des AnyButtons.

Sur une sauvegarde de ta form que tu t'assures NE PAS marcher, supprimes TOUS tes AnyButtons et réouvre pour voir.


Calade
0
Calade Messages postés 1207 Date d'inscription dimanche 20 avril 2003 Statut Membre Dernière intervention 4 juin 2016 10
22 janv. 2013 à 07:59
Autre chose,

J'ai retrouvé caché dans un tiroir de mon DD, les fameux AnyButtons et je n'ai eu qu'à enregistrer l'OCX.

Après la même manip' que ci-dessus, il ne me reste que 3 contrôles inconnus les picProgBack. Problème ils sont censés être des CCRP Progress Bar que j'utilise moi-même régulièrement sans problème.
Ces OCX existaient pour VB5 ET VB6 et étaient des fichiers distincts, es-tu sur d'utiliser le bon.

Perso' j'utilise le fichier ccrpprg6.ocx dans sa version 1.32.0.272.



Calade
0
ucfoutu Messages postés 18038 Date d'inscription lundi 7 décembre 2009 Statut Modérateur Dernière intervention 11 avril 2018 211
22 janv. 2013 à 08:32
Rappel :
1) de ALBrustis

A quoi correspond le début du module
est ce que l'ID de l'ocx est lié a Id du PC ?

VERSION 5.00
Object = "{D27CDB6B-AE6D-11CF-96B8-444553540000}#1.0#0"; "Flash10b.ocx"
Object = "{F9043C88-F6F2-101A-A3C9-08002B2F49FB}#1.2#0"; "COMDLG32.OCX"
Object = "{831FDD16-0C5C-11D2-A9FC-0000F8754DA1}#2.0#0"; "MSCOMCTL.OCX"
Object = "{FC07EBD4-FE92-11D0-A199-A0077383D901}#5.5#0"; "Hackprog.ocx
"
Object = "{169D3A50-F17F-11D5-A5FC-000000000000}#1.0#0"; "anybouton.ocx"

2) de ce que j'ai dit plus haut :
Et j(ai VOULU éviter de te parler de ton Hackprog.ocx
qui est l'un des autres noms connus de ccrpprg.ocx
.

________________________
Réponse exacte ? => "REPONSE ACCEPTEE" facilitera les recherches.
Pas d'aide en ligne installée ? => ne comptez pas sur moi pour simplement répéter son contenu. Je n'interviendrai que si nécessité de la compléter.
0
bonjour a tous
@Calade
je continue donc par déduction..

j'ai enlevé tous les les AnyButtons..donc plus de ref en début de fichier..enregistrer projet
fermer..recharger ..l'err est toujours ..pas a la meme ligne mais toujours au niveau du menu vb6

les picProgBack = ccrpProgressBar "Hackprog.ocx"

j'ai enlevé tous les les ccrpProgressBar..donc plus de ref en début de fichier..enregistrer projet
fermer..recharger ..l'err est toujours ..pas a la meme ligne mais toujours au niveau du menu vb6

@jack tu me parle de début de feuille avec "Option Explicit" je ne trouve pas ????
je doit pas être réveillé

je file et revient en fin de matinée
merci encore pour tout
si d'autre idée je prend
0
Calade Messages postés 1207 Date d'inscription dimanche 20 avril 2003 Statut Membre Dernière intervention 4 juin 2016 10
22 janv. 2013 à 08:51
Et le post de Jack ci-dessus, me rappelle que je suis en version 11 en ce qui concerne le module Flash

C:\WINDOWS\system32\Macromed\Flash\Flash11c.ocx dans sa version 11.0.1.152, on ne sait jamais.

De plus, pour faire suite à celui d'ucFoutu mon propre enregistrement de laCCRP ProGress Bar dqans un de mes .VBP est: Object={C8530F8A-C19C-11D2-99D6-9419F37DBB29}#1.0#0; ccrpprg6.ocx, rien àvoir avec la tienne.

Essaye de récupérer la version officielle (c'est à dire sur le site des CCRP s'il existe encore) et installe-le à la place du tien.


Calade
0
Rejoignez-nous