Problèmes de compatibilité avec une application VB6 sous Windows 10
Le gros problème
Dans l'organisation où je travaille, le système de gestion (une application modulaire créée par une autre entreprise) a été développé en l'an 97/98 sur VB, et n'a jamais migré vers une autre plate-forme de développement plus évoluée, telle que VB.NET . Cette application (de 32 bits) fonctionnait correctement sur Windows 7, à la fois 32 et 64 bits.
Maintenant, et pour des raisons évidentes de sécurité, nous devons installer ce système sur Windows 10, et voici plusieurs problèmes :
-
Sans compatibilité avec Windows 7, l'application principale lance des sous-applications avec d'autres boutons, comme s'il s'agissait de modules. Il arrive que plusieurs de ces sous-applications lancent Erreur d'exécution '53': fichier introuvable sans spécifier quelle dll est manquante. Les autres sous-applications ne s'ouvrent pas. Bien sûr, nous avons déjà vérifié que les bibliothèques sont enregistrées avec
regsvr32
. -
Avec compatibilité avec windows 7, l'erreur d'exécution '53' semble disparaître, mais le programme émet ensuite un avertissement (par exemple, un avertissement prédit étant donné qu'il apparaît en langue non anglaise), notant qu'il n'était pas possible de copier certains fichiers qui doivent être traités dans le dossier spécial
UserProfile
, ajout comme détail 'Erreur d'exécution '52': Nom ou numéro de fichier incorrect'.
Qu'ai-je essayé?
J'ai essayé d'exécuter l'application sur Windows 10 de 32 et 64 bit. Dans les deux versions, le programme a échoué et il semble même fonctionner moins bien dans la version 32 bits.
J'ai également essayé de désassembler le code, réussissant à obtenir que l'erreur vienne de la résolution d'un itinéraire lié aux dossiers spéciaux (au moins
ProgramFiles
etUserProfile
).J'ai fait des recherches par moi-même et je soupçonne que cela peut être dû à un problème de shell et d'architecture , comme indiqué dans ce thread , Car l'application utilise le shell pour résoudre le problème spécial dossier. Cependant, il résout correctement les chemins de ces dossiers.
Je soupçonne fortement que cela est lié à l'exécution de l'application dans un mode supérieur, que j'ai essayé d'exécuter en mode administrateur et de prendre les autorisations des dossiers spéciaux. Mais je pense qu'il me manque une certaine configuration.
J'envisage sérieusement de virtualiser Windows 7 dans Windows 10 jusqu'à ce que le programme soit mis à jour, comme suggéré ici , mais je veux l'utiliser comme un dernière balle.
Honnêtement, je suis coincé. Des idées ?
PD: Veuillez éviter les réponses évidentes au style "votre organisation devrait payer pour de meilleurs logiciels" ; Je suis au service informatique, et nous n'avons pas encore réussi à dissocier les bases de données de ce vilain logiciel de gestion; sans parler de ce que cela nous coûte de convaincre nos supérieurs du changement.