Création fichier .def

Résolu
cs_Orohena Messages postés 577 Date d'inscription vendredi 26 septembre 2008 Statut Membre Dernière intervention 20 novembre 2010 - 11 mars 2009 à 09:43
cs_Orohena Messages postés 577 Date d'inscription vendredi 26 septembre 2008 Statut Membre Dernière intervention 20 novembre 2010 - 12 mars 2009 à 20:40
Bonjour à tous


Je suis débutant sous visual c++ 2008 express, et j'écris une dll pour créer des fonctions pour Excel. Mon souci, c'est que je ne parviens pas à supprimer la décoration des noms, parce que je n'ai pas trouvé comment créer le fichier .def comme expliqué sur la page http://msdn.microsoft.com/fr-fr/library/dt232c9t.aspx.

J'ai cliqué droit comme un malade dans tous les noeuds de l'explorateur de solutions sans trouver comment ajouter ce fichier. En regardant avec l'explorateur Windows dans l'arborescence de la solution, je n'ai pas trouvé de fichier avec cette extension.

Quelqu'un peut-il me guider ? Je vous remercie d'avance

5 réponses

ed73 Messages postés 276 Date d'inscription lundi 8 septembre 2008 Statut Membre Dernière intervention 15 avril 2013 2
11 mars 2009 à 10:09
Bonjour,

Pour supprimer la décoration des noms, tu peux aussi exporter tes fonction en extern "C"
3
cs_juju12 Messages postés 966 Date d'inscription samedi 3 avril 2004 Statut Membre Dernière intervention 4 mars 2010 4
11 mars 2009 à 13:27
sinon pour le fichier def, tu fais comme pour ajouter un .h/.cpp/.rc... sauf que tu mets une extension .def au nom du fichier.
3
cs_ghuysmans99 Messages postés 3982 Date d'inscription jeudi 14 juillet 2005 Statut Membre Dernière intervention 30 juin 2013 16
12 mars 2009 à 20:16
Dans les paramètres linker il faut ajouter
/def:"cheminRELATIFduFICHIERdef"
3
cs_Orohena Messages postés 577 Date d'inscription vendredi 26 septembre 2008 Statut Membre Dernière intervention 20 novembre 2010 4
11 mars 2009 à 21:47
Bonjour

Merci pour vos réponse (y compris le MP de Miquel75). Elles m'ont permis d'avancer un peu : en suivant le conseil de Juju j'ai ajouté le .def à partir d'un .h, dans lequel j'ai mis :

EXPORTS
    EXCELARRAY=_ExcelArray@4

J'ai sauvegardé, et j'ai regénéré la solution, mais la décoration est toujours là !

Peut-être est-ce dans la déclaration de ma fonction qu'il y a quelque chose qui cloche :

 extern "C" _declspec(dllexport)
VARIANT _stdcall ExcelArray(VARIANT& ExcelArray)

Bon, c'est pô bien méchant, il suffit d'aliasser le nom de fonction sous Excel. De toute façon, le nettoyage (de pile ou autre) et la décoration, ça n'a jamais été mon truc ; c'est pas mon épouse qui dira le contraire.

Amicalement
0

Vous n’avez pas trouvé la réponse que vous recherchez ?

Posez votre question
cs_Orohena Messages postés 577 Date d'inscription vendredi 26 septembre 2008 Statut Membre Dernière intervention 20 novembre 2010 4
12 mars 2009 à 20:40
Bonjour Guillaume et les autres

C'est enfin bon grâce à vos conseils. Quelle pomme !

Merci
0
Rejoignez-nous