cs_Argile92
Messages postés29Date d'inscriptionlundi 2 mars 2009StatutMembreDernière intervention30 mars 2009
-
6 mars 2009 à 16:04
Renfield
Messages postés17287Date d'inscriptionmercredi 2 janvier 2002StatutModérateurDernière intervention27 septembre 2021
-
9 mars 2009 à 14:42
Bonjour à tous,
J'ai crée une DLL C++ que j'utilise dans Excel. Tout marche bien!
Sauf que voilà, lorsque je change de PC, où Visual Studio n'est pas installé, impossible d'accéder à ma DLL...
Pourtant l'adresse de la DLL est bonne lorsque je déclare mes fonctions. Rien à faire, VB ne trouve pas ma DLL
Cela est dû à l'inexistance de Visual Studio sur le PC (et dans ce cas là les DLL perdent tout intérêts), ou il y a-t-il une manipulation à effectuer??
cs_Argile92
Messages postés29Date d'inscriptionlundi 2 mars 2009StatutMembreDernière intervention30 mars 2009 6 mars 2009 à 16:32
J'ai essayé sur le Bureau, dans "Mes Documents" ou dans un autre dossier, mais rien ne marche...
Je travaille sur des PC d'entreprise: le mien possède Visual Studio mais pas les autres et j'aimerai faire une application Excel performante utilisable par tous (d'où l'utilisation des DLL)
Polack77
Messages postés1098Date d'inscriptionmercredi 22 mars 2006StatutMembreDernière intervention22 octobre 20191 6 mars 2009 à 16:32
Bonjour,
A tu enregistrer ta DLL dans win ?
(Normalement ce n'est pas obligatoire, mais sa permet d'accéder à ta DLL quelque soit le dossier où elle à été installé, perso généralement je crée un sous dossier dans "C:\Program Files\Common Files" pour stocké mes DLL(s), par InnoSetup sa vas tout seul )
Polack77
Messages postés1098Date d'inscriptionmercredi 22 mars 2006StatutMembreDernière intervention22 octobre 20191 6 mars 2009 à 16:34
Oups un oublie :
Le deuxième gros intérêt d'enregistrer ses DLL est qu'il n'est plus nécessaire de préciser dans le code le dossier où elle est stocké pour y accéder.
cs_Argile92
Messages postés29Date d'inscriptionlundi 2 mars 2009StatutMembreDernière intervention30 mars 2009 6 mars 2009 à 16:39
Dans "Exécuter" j'ai bien tapé la commande suivante: regsvr32 "Adresse DLL" et j'obtiens l'erreur suivante: LoadLibrary( adresse ) failed - This Application has failed to strat because the application configuration is incorrect. Reinstalling the application may fix this problem.
Renfield
Messages postés17287Date d'inscriptionmercredi 2 janvier 2002StatutModérateurDernière intervention27 septembre 202174 6 mars 2009 à 16:40
On n'enregistre que les dll ActiveX, Polack77
une dll doit est cherchée:
dans le repertoire de l'exe lancé
dans les repertoires que l'on peut spécifier via APIs
dans les repertoires mentionnés dans le %PATH%
...
C'est pour ça que bien souvent, on te dit d'aller les placer dans C:\Windows\System32
La dll est a placer dans le repertoire de VB6 si tu souhaites lancer ton fichier VBP, car c'est lui l'exe
cs_Argile92
Messages postés29Date d'inscriptionlundi 2 mars 2009StatutMembreDernière intervention30 mars 2009 6 mars 2009 à 16:43
J'ai essayé de mettre ma DLL dans le même repertoire que mon application Excel, mais cela ne marche toujours pas...
Dans ce repertoire, je dois mettre uniquement mon fichier .DLL ou dois-je également y ajouter tous les autres petits fichier générés? je parle du .EXP, .ILK, .LIB et .PDB qui se génèrent lorsque je compile mon programme C++
Polack77
Messages postés1098Date d'inscriptionmercredi 22 mars 2006StatutMembreDernière intervention22 octobre 20191 6 mars 2009 à 17:20
Les add in dot net on été installé ? (dés fois que ???)
Ici pour le téléchargement (télécharge plutôt la version complète sa éviteras de le re-télécharger pour chaque post, Package redistribuable X86 ou [Package redistribuable X64 Package redistribuable X64])
(lient de M.S. )
Si non aucune idée dzl
Bon courage
cs_Argile92
Messages postés29Date d'inscriptionlundi 2 mars 2009StatutMembreDernière intervention30 mars 2009 6 mars 2009 à 17:26
Tu sais, je viens d'arriver dans la boîte et Visual Studio n'était même pas installé... J'ai dû faire une demande pour l'avoir et je pense que aucun PC ne possède ton add-in...
Avec cette add-in, ça devrait marcher?
Elle est gratuite?
(je peux pas là télécharger, la firewall de la société m'en empete...)
Une DLL qui doit pouvoir être utilisée par TOUT langage, à fortiori depuis un interprété doit:
- Se faire en C (ou ASM, c'est idem).
- Compiler en mode C.
- Exporter en stdcall et sans déco des noms (mode C).
- Compiler en RELEASE avec full optimisation.
cs_Argile92
Messages postés29Date d'inscriptionlundi 2 mars 2009StatutMembreDernière intervention30 mars 2009 9 mars 2009 à 10:23
BruNews, je suis vraiment désolé, mais je ne peux pas télécharger ton projet afin de voir les options de compilation... (Firewall de la société qui fait chier)
Est-ce que tu pourrais, stp, me donner les options de compilation à effectuer?