begin process at 2012 05 29 11:12:25
  Trouver un code source :
 
dans
 
Accueil > Forum > 

C++ & C++ .NET

 > 

Divers

 > 

Débutant(e)

 > 

DLL sous windows seven 64b


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

DLL sous windows seven 64b

lundi 26 septembre 2011 à 18:14:05 | DLL sous windows seven 64b

napadbol

Bonjour, dans le cadre de mon boulot, on élabore des règles de conception mécanique et développons un freeware qui permet de les mettre en oeuvre ce qui évite tout erreur de mise en oeuvre. Ce freeware est sous VB, mais utilise quelques dll écrites en C++. Forcément, sous Seven 64b, ces dll ne fonctionnement pas.

Nous avons fait l'acquisition de visual studio 2010 (nous travaillions avant avec le 2005) pour mettre à jour ces dll et faire un kit d'install 64bit. J'ai donc créé un projet pour ces dll, vu que j'ai heureusement toujours les sources C++, j'arrive à les générer mais lorsqu'elles sont appelées par le programme, j'ai le message d'erreur suivant :

"Impossible de trouver le point d'entrée 'CDAI_i' dans la DLL 'CDAI'"

CDAI_i est une fonction qui retourne un réel.

J'ai créé un fichier CDAI.def pour l'export mais ça ne change rien.

bref, je suis paumé, et comme vous l'avez certainement compris , si je sais (à peu près) programmer en VB, coté C++ et DLL, je suis une vrai bille.

merci par avance,
Stéph

lundi 26 septembre 2011 à 19:04:24 | Re : DLL sous windows seven 64b

LA_Tupac

Membre Club

Forcément, sous Seven 64b, ces dll ne fonctionnement pas.


Pourquoi? forcément... les seuls soucis de compatibilité que j'ai rencontré sous ce système sont des soucis des répertoires "User" ou/et "Program Files(x86)" et les programmes compilés en 16b

"Impossible de trouver le point d'entrée 'CDAI_i' dans la DLL 'CDAI'"


Je présume que la dll que tu as compilé est CDAI.dll ... peut importe:
Si il manque ce point d'entrée c'est soit que cette fonction n'existe pas dans tes sources (ou pas sous ce nom), soit qu'elle est mal exportée... est-elle présente dans le fichier *.def en sortie de compil ?
mardi 27 septembre 2011 à 09:53:19 | Re : DLL sous windows seven 64b

napadbol

Bonjour,
oui, c'est effectivement CDAI.dll. Concernant la compilation de la dll initial, vu que cela a été fait il y a déjà un bail, il est probable qu'elle soit en 16b.
D'après ce que j'ai pu lire sur le net, effectivement j'ai un pb d'export. D'après ce que je comprend de ta réponse, un fichier CDAI.def doit être créé à la compilation ? ce n'est pas le cas, je l'ai créé moi même avec le code suivant :

LIBRARY CDAI
EXPORTS
CDAI_i

... et ajouté aux fichiers d'en-tête, en spécifiant dans les propriétés qu'il s'agit d'un élément de type en-tête C/C++ . J'en déduis que ce fichier n'est pas pris en compte. La fonction existe bien dans les sources. Il y a certainement un truc à faire dans les paramétrages mais là je suis paumé.
mercredi 28 septembre 2011 à 13:51:42 | Re : DLL sous windows seven 64b

fregolo52

Membre Club
Pour ce genre de problème dépendencies walker est ton meilleur allié.

Ta dll en C++ (et ton soft VB) marche sur quel OS ?

Des programmes ou dll 32bit marchent très bien sous Win 7 x64 sans aucune modif.
mercredi 28 septembre 2011 à 15:32:12 | Re : DLL sous windows seven 64b

LA_Tupac

Membre Club
Pour le *.def j'avoue que sous visualstudio je suis pas très sûr.
Sinon tu pense qu'elle est en 16b ? mais je croyais tu tu l'avais recompilé ... donc elle est au minimum en 32b ...
En ce qui concerne l'export c'est certainement le soucis... trouve le header qui contient "CDAI_i" et donnes-nous le s'il te plait. (enfin si tu as bien les sources...)
vendredi 30 septembre 2011 à 10:38:01 | Re : DLL sous windows seven 64b

napadbol

Bonjour et merci de prendre le temps de me répondre.

‘Ta dll en C++ (et ton soft VB) marche sur quel OS ?’
-> Windows totue versions, sauf seven 64b – le soft plante à cause des DLL

‘tu penses qu'elle est en 16b ? mais je croyais tu tu l'avais recompilé’
-> Les DLL de la version actuelles ont été compilées il y pas loin de 10 ans , donc c'est probable. D'autant plus, si les DLL 32 bits ne sont pas censées poser de pb.

-> J’ai bien les sources, mais la conversion du projet dans VS2010 n’a pas fonctionnée : j’ai recréé un projet à la main avec le source CDAI.cpp et le fichier d’entête CDAI.def, que j'ai recompilé. Maintenant, la DLL semble bien reconnue et lue mais j'ai ce pb de définition de point d'entré que ne permet pas d'identifier la fonction de calcul contenue dans la DLL

-> Dans le projet, en plus de ces deux fichiers, il n’y a rien d’autre que des fichiers créés apparemment par défaut(stdafx.cpp et .h, dllmain.cpp, targetvar.h).

‘trouve le header qui contient "CDAI_i" et donnes-nous le s'il te plait.’
-> Il n’y a que le fichier CDAI.def
mercredi 5 octobre 2011 à 11:30:09 | Re : DLL sous windows seven 64b

napadbol

Je suis reparti de zéro, refait un projet CDAI, en créant un CDAI.cpp, CDAI.h et CDAI.def.
Une fois la DLL compilée, je la teste dans une macro excel, et ça marche .

Dans l'appli visual basic, au moment de l'appel j'ai une nouvelle erreur :

Tentative de chargement d’un programme de format incorrect. (Exception de HRESULT : 0x8007000B)

Je teste un ancien version exécutable du soft, qui me met la même erreur à l'appel de cette nouvelle DLL.

mercredi 5 octobre 2011 à 13:25:08 | Re : DLL sous windows seven 64b

napadbol

Réponse acceptée !
Ayé, pb réglé. Pour info (ca peut toujours intéressé une autre personne) : il suffit de compiler le soft en VB en forçant une compilation 32 bit


Cette discussion est classée dans : windows, dll, seven, 64b, cdai


Répondre à ce message

Sujets en rapport avec ce message

Filtre ISAPI IIS [ par zibo3 ] Bonjour, J'ai développé un filtre ISAPI sous forme de DLL. Jusque là tout va bien, elle a été éprouvé sur IIS 6.0 sur Windows 2003 server et aujourd' Integrer une DLL au projet [ par Mike ] Salut a tousJe souhaite integrer la DLL "iphlpapi.dll" (windows/system32) pour utiliser la fonction "GetIpAddrTable", je souhaite pour le moment simpl Problème Glut + Dev C++ [ par Joel ] Je suis désolé de vous emmerder encore avec ça : mais j'essaie depuis 2 jours, j'ai lu tous les messages du forum et pourtant...J'ai mis les dll (glut Une DLL jpeg integre a Windows [ par oRTEEZ ] J'aimerais savoir si il existe integrer a Windows une librairie permettant de manipuler les Jpeg juste la fonction d'encodage en fait.MERkI DLL Windows + Linux [ par Macvel ] Salut tout le monde,je cherche à écrire une dll qu'on puisse utiliser à la fois sous Windows et sous Linux ou autre plateforme.Je sais que normalement Linux questions facile [ par xarier ] -------------salut tout le monde comme vous savez tous opengl est multiplate form alors il existe des library qui le rend portable ma question et tout Dépendances aux dll [ par mooolo ] Salut, Voila je suis nouveau sous linux, j'avais fait un petit prog sous windows avec la librairie multimedia allegro,cependant pour que mon executa msvcr71.dll [ par noobs ] Bonjour,j'ai une autre question svp.Je viens de réinstaller windows chez mes parents et quand j'ai essayé de lancer un programme que j'ai fais pour le DLL windows [ par zoomeo ] Salut les gars!Je dois bosser sur un prog et j'aimerai avoir des precisions car c'est un peu confu tout ca pour moi...En gros, pour mon programme, je Détourner la copie de windows par un hook [ par alphaone ] Bonjour, je sais qu'il est possible de détourner la copie de windows pour copier avec sont logiciel et non pas avec la copie de windows, mais je suis


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,685 sec (4)

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