ephores
Messages postés123Date d'inscriptionlundi 30 juin 2003StatutMembreDernière intervention 5 juin 2007
-
3 juin 2007 à 22:20
ephores
Messages postés123Date d'inscriptionlundi 30 juin 2003StatutMembreDernière intervention 5 juin 2007
-
5 juin 2007 à 17:45
Bonjour.
Lorsque j'installe le logiciel créé avec VB6 sur un autre poste ayant XP, je dois l'executer en mode compatibilité W98 sur celui ci, sinon ça ne marche pas.
Comment faire pour que , soit cette option soit coché automatiquement, soit compiler directement pour XP.
jmfmarques
Messages postés7666Date d'inscriptionsamedi 5 novembre 2005StatutMembreDernière intervention22 août 201427 4 juin 2007 à 09:25
Es-tu par ailleurs certain (notamment si tu développes sous WIN 9x), que toutes tes instructions pourront être exécutées sous XP, sous WIN200 ou sous NT (notamment en cas d'utilisation de certaines fonctions de l'API de Windows.... je pense par exemple - mais pas uniquement - à l'inhibition de l'accès au gestionnaire des tâches).
T'es-tu, enfin, intéressé aux compilations conditionnelles (voir ton aide en ligne à ce sujet) en utilisant la syntaxe :
#If...Then...# Else Directive C'est assez long et il faut lire avec la plus grande attention les explications données...
Il te faut également bien connaître l'OS des différents clients possibles ... et les différences pouvant exister (pour certains points particuliers) en l'un et l'autre .
ephores
Messages postés123Date d'inscriptionlundi 30 juin 2003StatutMembreDernière intervention 5 juin 2007 4 juin 2007 à 10:18
J'utilise l'empaquetage et deploiement de visual basic 6, c'est ça que je distribue.
J'utilise comme référence :
Visual Basic for Application (msvbvm60.dll)
Visual Basic runtime
Visual basic object and procedure ( VB6.OLB)
OLE automation (stdole2.tlb)
Microsoft data source interfaces (msdatsrc.tlb)
Microsoft DAO 3.51 ( DAO350.dll)
ephores
Messages postés123Date d'inscriptionlundi 30 juin 2003StatutMembreDernière intervention 5 juin 2007 4 juin 2007 à 21:53
merci casy pour tes réponses, mais j'ai essayé avec inno, même en incluant les dll dans la compilation, c'est pire , l'exe me genere une erreur.
ce qui est bizarre c'est que si j'execute l'exe là où j'ai visual basic 6 d'installé, j'ai pas besoin de coché l'option de compatibilité w98. Est ce que vb6 installe des dll qui permettent cette compatibilité ?
sinon j'ai essayé d'importer le prjet sous visual studio 2005 ... une catastrophe..;-((
ephores
Messages postés123Date d'inscriptionlundi 30 juin 2003StatutMembreDernière intervention 5 juin 2007 5 juin 2007 à 16:17
merci j'ai utilisé inno, et c'est impec, je compile avec dedans l'exe auquel j'ai activé l'option de compatibilité. Du coup chez l'utilisateur c'est transparent.
ceci dis c'est quoi regserver ?
cs_rt15
Messages postés3874Date d'inscriptionmardi 8 mars 2005StatutModérateurDernière intervention 7 novembre 201413 5 juin 2007 à 17:25
Il existe au moins deux types de dll, les classiques et les ActiveX. (On peut aussi approximer le comportement des contrôles ActiveX stockés dans les .ocx par celui des dll ActiveX.)
Quand une appli à besoin d'une dll, Windows à besoin de savoir où elle se trouve.
Dans le cas d'une dll classique, il regarde dans %systemroot%, %path%, le répertoire de l'exe, le répertoire courant...
Dans le cas d'un ActiveX, il regarde dans l'emplacement de la dll dans la base de registre. Il faut donc que l'installeur écrive dans la base de registre l'emplacement de la dll. C'est ce que l'on demande avec le flag regserver de Inno ou quand on fait un regsvr32 en invite de commande.