Installation des DLL

Danielminou Messages postés 7 Date d'inscription mercredi 21 novembre 2007 Statut Membre Dernière intervention 6 novembre 2013 - 21 nov. 2007 à 14:46
Danielminou Messages postés 7 Date d'inscription mercredi 21 novembre 2007 Statut Membre Dernière intervention 6 novembre 2013 - 21 nov. 2007 à 19:10
Bonjour,

Je souhaite copier les DLL et OCX dans le répertoire de l'application. D'après ce que j'avais cru comprendre windows doit aller les chercher automatiquement dans ce répertoire s'il ne les trouve pas dans system32.
J'ai essayé.. ça ne marche pas. Que faut-il faire??
Merci

4 réponses

GEDDi Messages postés 206 Date d'inscription lundi 22 novembre 1999 Statut Membre Dernière intervention 3 juillet 2008
21 nov. 2007 à 15:34
Hello,

Simplement manuellement déjà comme çà :
Regsvr32 C:\prog\tonOCX

Sinon avec InnoSetup que j'utilise depuis de tres nombreuses années avec succès et qui permet simplement de déployer n'importe quel fichier, y compris OCX & co de manière tres simple :)

Gérôme GUILLEMIN
Auteur du langage FBSL
0
Danielminou Messages postés 7 Date d'inscription mercredi 21 novembre 2007 Statut Membre Dernière intervention 6 novembre 2013
21 nov. 2007 à 17:11
J'utilise également InnoSetup.
Mon problème est lorsque les DLL sont dans le répertoire de l'exécutable, Windows ne les trouve pas. Comment windows peut-il les trouver?
0
cs_rt15 Messages postés 3874 Date d'inscription mardi 8 mars 2005 Statut Modérateur Dernière intervention 7 novembre 2014 13
21 nov. 2007 à 18:27
Salut,


Y a au moins deux types de dlls, les dlls ActiveX et les dlls
classiques. Les ocx, c'est comme les dll ActiveX. Les dlls classiques,
ont y accède avec Declare, et pour les ActiveX, on fait du
CreateObject, et/ou on met la dll dans les références du projet.


Dans le cas d'une dll classique, Windows regarde system32, les
répertoires de la variable PATH, le dossier de l'application (Peut être
le dossier courant, mais faut pas compter dessus.)


Dans le cas d'un ActiveX, dll ou ocx, il regarde dans la base de
registre l'emplacement de la dll/ocx. Il éssaie ensuite de charger la
dll à partir de cette emplacement.


Pour que l'emplacement d'une dll soit dans la base de registre, il faut par exemple utiliser regsvr32.


Dans InnoSetup, il faut utiliser le flag regserver.

Source: monocx.ocx; DestDir:{app}; Flags: regserver


Avec éventuellement les flags sharedfile et promptifolder : ça dépend de ce qu'on veut.
<hr size="2" width="100%" />3ème année en ecole d'ingé d'info cherche stage de 4 mois à partir du 01/04/08
0
Danielminou Messages postés 7 Date d'inscription mercredi 21 novembre 2007 Statut Membre Dernière intervention 6 novembre 2013
21 nov. 2007 à 19:10
Merci  rt15, je vais essayer d'exploiter vos infos.
Je vais faire des essais.
0
Rejoignez-nous