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
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 :)
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?
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.
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