Conversion VB6 vers dot-net visual studio

Fermé
ChapronDeNantes Messages postés 3 Date d'inscription vendredi 3 juillet 2015 Statut Membre Dernière intervention 7 juillet 2015 - 3 juil. 2015 à 17:15
NHenry Messages postés 15112 Date d'inscription vendredi 14 mars 2003 Statut Modérateur Dernière intervention 13 avril 2024 - 7 juil. 2015 à 19:28
Bonjour à tous

Sous Windows 8.1, je souhaite adapter du code source VB6 de gestion de fichiers et de modification de tags images et audio.
En particulier celui accessible à l'adresse <http://codes-ources.commentcamarche.net/source/23806-tout-pour-le-mp3-renommer-un-mp3-a-partir-de-son-tag-id3v1-et-v2-definir-un-tag-id3-a-partir-d-une-liste-ou-du-nom-du-fichi>

Dès ma première tentative d'ouverture des projets collectés la conversion a butté sur l'indisponibilité de comctl32.ocx.

L'installation de MSDN Visual Studio 6 (À partir de l'adresse <http://vb.developpez.com/msdnvb6/>
et tenant compte des conseils concernant l'installation dans l'environnement Windows 8.1 (À partir de l'adresse <http://www.fortypoundhead.com/showcontent.asp?artid=23916> )
ne m'a pas permis de passer l'indisponibilité de comctl32.ocx :

- Echec de la mise à niveau ... impossible de charger ... comctl32.ocx. -

Les commentaires accompagnant le service pack 6 , des dernières mises à jour (À partir de l'adresse <http://www.microsoft.com/fr-fr/download/details.aspx?id=24417>
) , et les commentaires trouvés sur le web concernant regsrv32 m'ont fait créer un répertoire SysWoW64 en espérant que regsrv32 finisse par fonctionner.
Je ne suis pas parvenu à rendre actif le service comctl32.ocx.

A l'ouverture du projet par visual studio, après lancement de la conversion, même quand tous les fichiers apparemment nécessaires pour l'application du pack6 et leurs répertoires sont présents,
j'obtiens toujours le message : Echec de la mise à niveau ... impossible de charger ... comctl32.ocx.

Que faut-il faire pour permettre la conversion de VB6 à visual studio ?

En particulier celui accessible à l'adresse <http://codes-ources.commentcamarche.net/source/23806-tout-pour-le-mp3-renommer-un-mp3-a-partir-de-son-tag-id3v1-et-v2-definir-un-tag-id3-a-partir-d-une-liste-ou-du-nom-du-fichi>

Merci pour votre assistance.
François
A voir également:

1 réponse

NHenry Messages postés 15112 Date d'inscription vendredi 14 mars 2003 Statut Modérateur Dernière intervention 13 avril 2024 330
3 juil. 2015 à 19:02
Bonsoir,

En général, le passage de VB6 à VB.NET doit se faire en recodant totalement l'application.
L'assistant de conversion générera un code peut être fonctionnel (plus qu'incertain) et surtout, un code bien sale.

De plus le code généré s'exécutera largement plus lentement en étant largement maintenable.

Je te recommande donc de refaire le projet à partir de 0 (ou des principes de l'application d'origine) en utilisant toutes les fonctionnalités de .NET qui ne sont pas présentes dans VB6 et qui te seront utiles.
0
ChapronDeNantes Messages postés 3 Date d'inscription vendredi 3 juillet 2015 Statut Membre Dernière intervention 7 juillet 2015
4 juil. 2015 à 15:00
Bonjour Nicolas, merci pour ta réponse et ta rapidité de réaction.

J'adhère pleinement à l'idée que les conversions automatiques génèrent très habituellement du code sale avec les conséquences que tu cites : fonctionnement incertain, largement plus lent, largement difficile à maintenir.

Je suis un, trop, anciens programmeur, et pas particulièrement avec le basic. Et pourtant je suis séduit par ce langage, les exemples d'applis proposés par CodeSource notamment.

Dans un premier temps je souhaitais me contenter d'adapter les fonctionnalités existantes à mon besoin, certaines sont sous VB6, même si le but final reste d'utiliser pleinement l'environnement DotNet natif et propre.

Je souhaitais, par la conversion, faciliter mon accès aux fonctionnalités mises en oeuvre dans les applis sélectionnées.
  • Sélectionner un répertoire
  • Afficher les fichiers multimédias - image, vidéo, son - en mosaïque et leurs tags
  • Filtrer par la combinaisons de dates et de tags
  • Gérer les tags (création, suppression, modification)
  • Renommer une sélection de fichiers en utilisant les attributs (date de création...) et les Tags


Je commence tout juste à construire mon environnement de travail.
Je dispose d'une licence Visual studio 2008
La première utilisation de l'assistant de conversion a échouée et demandé l'installation d'éléments VB6 :
-- Echec de la mise à niveau ... impossible de charger COMCTL32.OCX
... il est recommandé d'installer VB6.0 avec tous les composants
référencés et de vérifier que l'application compile correctement. --

J'ai installé "MSDN Visual Studio 6" proposé par l'équipe VB de Developpez.com*. Cela a fait apparaître COMCTL32.OCX mais regsvr32 n'accepte pas de l'inscrire dans les services - une difficulté documentée sur le web**
  • À partir de l'adresse <http://vb.developpez.com/msdnvb6/>
    • la difficulté me parait ambigüe : l'anomalie ne devrait se manifester que lors de l'utilisation de DLL 32bits sur un système 64bits


Je n'en espérait qu'une conversion vers DotNet et, effectivement, ma démarche piétine : je n'ai pas encore trouvé même le moyen d'exécuter le code VB6 repéré en natif pour tester la complétude et je ne réussi pas plus à le convertir vers DotNet.

Je découvre maintenant, après ma question sur CodeSource, que l'utilisation de Visual Studio Community est accessible gratuitement mais je doute que ma route soit pour autant dégagée.

Merci de m'indiquer si l'installation "MSDN Visual Studio 6" me permet bien de disposer de l'environnement complet de développement (compilation) et/ou comment y parvenir. Le site de téléchargement ne l'indique pas.
Je suis aussi preneur d'exemples de codage en DotNet, plutôt en Basic qu'en C, me permettant d'atteindre mon objectif.
François
0
NHenry Messages postés 15112 Date d'inscription vendredi 14 mars 2003 Statut Modérateur Dernière intervention 13 avril 2024 330
Modifié par NHenry le 5/07/2015 à 16:25
"mais regsvr32 n'accepte pas de l'inscrire" as-tu essayé en tant qu'administrateur ?
0
ChapronDeNantes Messages postés 3 Date d'inscription vendredi 3 juillet 2015 Statut Membre Dernière intervention 7 juillet 2015 > NHenry Messages postés 15112 Date d'inscription vendredi 14 mars 2003 Statut Modérateur Dernière intervention 13 avril 2024
7 juil. 2015 à 14:38
Bonjour Nicolas.
Oui, avec l'ouverture de l'invite de commande en mode admin directement accessible par le menu démarrer de Windows 8.1 (ClikDroit sur l'icone Windows)
Sur le web message est associé à la mise en oeuvre de DLL 32 bits dans un environnement 64, ce qui n'est pas mon contexte.
Peut être me faudrait-il remonter un environnement sain.
regsvr32 version 32 bits est peut-être remplacé par regsvr32 version 64 à la suite de mes différentes installation et applications de correctifs.

Mon téléchargement provenant de MSDN permet-il de disposer d'une version pleinement opérationnelle de VB6 ? Rien ne le dit clairement sur le site Microsoft et je n'ai pas trouvé le moyen d'ouvrir un environnement de développement VB6 après son installation.
Puis-je y parvenir avec ce que j'ai téléchargé ?
Si oui, comment m'y prendre pour ouvrir un environnement sou VB6
Si non, disposes-tu d'un tel environnement que je puisse télécharger pour ces tests ponctuels.

Je vais devoir régénérer mon poste de travail et je compte installer la plateforme .NET en open source et Visual Studio en version gratuite, offre disponible depuis novembre 2014.
J'espère que le passage à Windows 10 ne me posera pas de problèmes supplémentaires.

Merci de ta coopération.
François
0
NHenry Messages postés 15112 Date d'inscription vendredi 14 mars 2003 Statut Modérateur Dernière intervention 13 avril 2024 330
7 juil. 2015 à 19:28
Recherches dans c:\Windows ou c:\Windows\System32, le programme "cmd.exe", puis fais clic droit et "executer en tant qu'administrateur" et retente.
0