begin process at 2012 05 29 03:59:37
  Trouver un code source :
 
dans
 
Accueil > Forum > 

C

 > 

Windows

 > 

ActiveX / COM

 > 

Installation d'un ActiveX à partir d'un .cab


Derniers messages déposésPoser une question dans le forum ou lancer une discussion

Installation d'un ActiveX à partir d'un .cab

mercredi 25 octobre 2006 à 16:07:26 | Installation d'un ActiveX à partir d'un .cab

dragonjoker59

Voilà mon problème : J'utilise un .cab pour installer mon ActiveX (jusqu'ici tout est normal). Ce .cab vérifie que les DLLs nécessaires à l'éxécution de l'ActiveX sont présentes sur le PC client. S'il ne les trouve pas, il va les chercher sur un autre fichier .cab qui les contient. Je n'ai pas mis les DLLs dans le même .cab pour des raisons d'optimisation de temps de téléchargement (pas besoin de télécharger les DLL si on les a déjà). Toutes ces actions sont décrites dans le fichier .inf suivant :
[Version]
Signature="$CHICAGO$"
AdvancedINF=2.0


[Add.Code]
;Section définissant dans quelle section traiter quel fichier
; <nom fichier> = <nom section>
IPlay.ocx=IPlay.ocx
cg.dll=cg.dll
DevIL.dll=DevIL.dll
ILU.dll=ILU.dll
OgreMain.dll=OgreMain.dll
OgrePlatform.dll=OgrePlatform.dll
Plugin_ParticleFX.dll=Plugin_ParticleFX.dll
RenderSystem_Direct3D9.dll=RenderSystem_Direct3D9.dll
RenderSystem_GL.dll=RenderSystem_GL.dll
zlib1.dll=zlib1.dll


[IPlay.ocx]
File-win32-x86=thiscab
clsid={3978C53C-7129-4767-9E8B-DF8DB808F045}
FileVersion=1,0,0,1
RegisterServer=yes
[cg.dll]
FileVersion=1,41,603,92
;FileVersion définit la version minimale nécessaire à l'éxécution de l'ActiveX
hook=IPlayDLLs.cab_installer
;hook définit la section où l'on doit aller si on ne trouve pas le fichier

[DevIL.dll]
FileVersion=
;FileVersion vide signifie que toutes les versions sont acceptées
hook=IPlayDLLs.cab_installer
[ILU.dll]
FileVersion=
hook=IPlayDLLs.cab_installer
[OgreMain.dll]
FileVersion=
hook=IPlayDLLs.cab_installer
[OgrePlatform.dll]
FileVersion=
hook=IPlayDLLs.cab_installer
[Plugin_ParticleFX.dll]
FileVersion=
hook=IPlayDLLs.cab_installer
[RenderSystem_Direct3D9.dll]
FileVersion=
hook=IPlayDLLs.cab_installer
[RenderSystem_GL.dll]
FileVersion=
hook=IPlayDLLs.cab_installer
[zlib1.dll]
FileVersion=1,2,1,0
hook=IPlayDLLs.cab_installer
[IPlayDLLs.cab_installer]
;On indique où se trouve le .cab contenant les DLLs manquantes
file-win32-x86=http://www.fordev-studio.com/IPlayDLLs.cab
;On indique le nom du fichier .inf situé dans IPlayDLLs.cab, pour l'installation des DLLs manquantes
InfFile=IPlayDLLs.inf


[DefaultInstall]
;Section définissant les paramètres d'installation (ici copie des fichiers nécessaires, enregistrement de l'ActiveX)
CopyFiles = IPlayBin,PluginsFile,InfFiles
RegisterDLLs = RegisterSection
[IPlayBin]
IPlay.ocx
[PluginsFile]
Plugins.cfg
[InfFiles]
IPlay.inf

[DestinationDirs]
;Section définissant les dossiers de destination des différents fichiers
IPlayBin = 16422, ForDevStudio\IPlay
PluginsFile = 16422, ForDevStudio\IPlay
InfFiles = 17

[RegisterSection]
;Section nécessaire pour l'enregistrement de l'ActiveX
16422,ForDevStudio\IPlay,IPlay.ocx,1

[Strings]
VersionNumber = "1.0.0.1"
GUID = "{3978C53C-7129-4767-9E8B-DF8DB808F045}"
Il enregistre mon ActiveX, fait les copies demandées, mais il semble ignorer la section :
[IPlayDLLs.cab_installer]
file-win32-x86=http://www.fordev-studio.com/IPlayDLLs.cab
InfFile=IPlayDLLs.inf
Et du coup, il ne m'installe pas les DLLs nécessaires à l'éxécution de mon ActiveX.
Quelqu'un peut-il m'aider?
vendredi 27 octobre 2006 à 12:18:59 | Re : Installation d'un ActiveX à partir d'un .cab

dragonjoker59

Réponse acceptée !
En fait ça ne marche pas en local mais ça installe sans problème sur le net.
Donc mon problème n'en est pas un.
jeudi 4 octobre 2007 à 11:52:34 | Re : Installation d'un ActiveX à partir d'un .cab

bayby

Salut Dragonjoker59,

Une petite question,
je créé un objet COM à utiliser en tant que activeX, 
j'utilise VB.NET = OK
le fichier dll est créé et fonctionne (fait des tests)
Kel CLSID je doit recup pour installer mon object avec les balise (<Object> </object>) lors de l'instantiation de mon objet ??
Y a t-il une syntaxe ou procedure à integer dans mon code D'assembly pour que mon objet install son CLSID au niveau de la base de registre ??

pour l'instant je tourne en rond avec les différents CLSID.

merci de ta réponse.



ThyThy--TitiLebo

jeudi 4 octobre 2007 à 12:22:26 | Re : Installation d'un ActiveX à partir d'un .cab

dragonjoker59

Je ne sais pas comment ça se passe pour le VB.NET vu que je développe en C++, mais as-tu implémenté les fonctions DLLRegisterServer, DLLUnregisterServer, CreateComponentCategory, RegisterCLSIDInCategory et UnRegisterCLSIDInCategory ?



Cette discussion est classée dans : dll, installer, cab, iplaydlls, fileversion


Répondre à ce message

Sujets en rapport avec ce message

installer in c/c++ [ par justgreat ] J'aimerai bien savoir si quelqu'un a une source code ou a deja travaille pour faire sur c++ ou c ,un "installer" tres simple et silencieux!qui a pour Les fonctions d'une DLL [ par garslouche ] Salut,je voudrais pourvoir connaitre les fonctions externes d'une DLL (comme le fait l'outil Depends de VC++).Idéalement j'aimerais aussi voir le type Dll vc++ [ par MoDDiB ] J'ai cherché des sources sur les dlls et je n'ai trouvé que des moyens de lancer des fonction de la dll a partir de lexe.Mais je me doute qu'il doit e dll [ par zincben ] bonjour je travaille sur le portage de plusieurs appli 16bits en 32 bits et j'ai un petit probleme. On m'a donné une dll à passer en 32 bits. Elle est Pointeur sur fonction envoyé par dll [ par MoDDiB ] Voila ce que j'ai fais mais ca ne marche pas :Dll :#include BOOL APIENTRY DllMain(HANDLE hModule,DWORD ul_reason_for_call,LPVOID lpReserved){ retu Question DLL [ par LordBob ] Bonjours a tous,en fait je voudrais juste savoir s'il été possible d'utiliser une DLL aussi bien avec un programme fonctionnant en mode console qu'un Débutant C++ / dll [ par r144 ] Bonjour, je suis débutant en c++ et j'ai une question concernant les dll.Voila j'aimerai faire une dll qui créee une fenêtre invisible.Je ne veux pas Création d'une DLL [ par Kevb37 ] Salu tt le monde..Est-ce que qq (je suis sur que oui) connaitrai la façon de construire une DLL : je trouve pas grand-chose (les tutoriels et sources Compilation DLL, manque fichier .lib [ par LordBob ] Bonjour a tous et joyeux noel !!!Voila j'ai un problème, lorsque que je compile ma dll tout va bien sauf que VC++, ne me génére pas le fichier .lib, p importer une classe dans une dll [ par ilimo ] bonjour : j'ai deux programmes : Pa Pb Pa contient la classe Ca Pb contient la classe Cb Pb est une dll pour Pa comment importer la classe Cb dans la


Nos sponsors


Sondage...

CalendriCode

Mai 2012
LMMJVSD
 123456
78910111213
14151617181920
21222324252627
28293031   

Consulter la suite du CalendriCode

A découvrir



 
Développement réalisé par Nicolas SOREL (Nix) avec l'aide de : Cyril DURAND et Emmanuel (EBArtSoft), Merci à Vincent pour ses précieux conseils.
CodeS-SourceS.com© Toute reproduction même partielle est interdite sauf accord écrit du Webmaster
CodeS-SourceS.com© est une marque déposée tous droits réservés

Google Coop CodeS-SourceS Google Coop CodeS-SourceS
Temps d'éxécution de la page : 1,295 sec (4)

Nous contacter | Annoncer sur CodeS-SourceS | Mentions légales