En C++ natif, vous n'ajoutez pas de DLL en tant que références. Vous devez inclure l'en-tête et le lien dans un fichier LIB ou DEF créé à partir de la DLL. D'abord, vous devez inclure les en-têtes fournissant le code dont vous avez besoin. Assurez-vous que toutes les fonctions DLL sont marquées comme __declspec(dllimport)
ici (elles doivent être dllexport lors de la construction de la DLL elle-même, dllimport lors de son utilisation). Cela peut prendre une définition en haut du fichier ou quelque chose. Une méthode courante est la suivante:
#ifdef IMPORT_MY_LIB
# define MY_LIB_API __declspec(dllimport)
#else
# define MY_LIB_API __declspec(dllexport)
#endif
Ensuite, vous devez lier avec le LIB. Il y a deux méthodes pour le faire, l'une est vaguement plus correcte et l'autre est plus simple. La méthode correctish est d'aller dans les propriétés du projet, dans la section des paramètres de l'éditeur de liens, d'ajouter la bibliothèque comme dépendance supplémentaire (les options devraient ressembler à celles de VS2008 et 2010, peut-être d'autres).
La méthode plus simple que je l'utilise pour les tests et les remplacer par le bon avant la production, est d'ajouter un:
#pragma comment(lib, "Library.lib")
directive à un de vos fichiers.
Le fichier LIB est créé lorsque vous compilez votre DLL et doit être utilisé pour lier cette DLL à d'autres.
Il existe une méthode de liaison au moment de l'exécution, en utilisant l'API Windows, qui peut être intéressante par la suite mais n'est pas nécessaire pour cela.
Je pense que vous mélangez un peu en utilisant des DLL dans des projets .NET et dans des projets C++ natifs. –
Vous avez probablement raison, je veux juste ajouter ma DLL, mais je pensais que parce que je ne vois aucune référence que quelque chose est foiré. Je suis une procédure pas à pas MSDN (http://msdn.microsoft.com/en-us/library/ms235636(v=vs.80).aspx) et s'est coincé sur l'étape qui explique comment ajouter une référence à la dll – ActionOwl