Lors de la création d'une DLL avec Visual C++ 2008, j'ai plusieurs choix. Je peux créer une "bibliothèque de classes" , qui je crois me donnera une bibliothèque .Net qui utilise l'extension CLI (gérée) de C++. Puisque je ne veux pas cela, et j'ai supposé que j'ai besoin d'un fichier .LIB statique pour lier dans un autre projet exécutable de fenêtres Visual C++, je choisis à la place "Projet Win32" et, dans le panneau Paramètres de l'application, spécifie un DLL C++ (pas MFC).Exporter des classes non gérées à partir d'une DLL Visual C++?
Cela va créer un projet avec un fichier .cpp qui est censé être où je définis "les fonctions exportées pour l'application DLL".
Cela ne semble pas être ce que je veux non plus. Fondamentalement, ce que je cherche est l'équivalent C++ natif de ce qui, en C# .NET, serait un assemblage de bibliothèque de classes. Je veux emballer des classes dans une DLL, puis avoir un projet 0.EXE utiliser les classes DLL en incluant les fichiers d'en-tête du projet DLL et le lien avec un fichier .LIB pour résoudre les références.
Quelle est la manière habituelle de faire cela?
Très bien. Et une approche similaire de l'autre côté à importer? – Buggieboy
Jetez un coup d'œil à ce que fait le code généré automatiquement. Il s'agit en fait du maclport/import basé sur une directive précompilateur, de sorte que le consommateur n'a pas à penser à l'importation ou à l'exportation. – ctacke
Voir ma réponse ici pour une élaboration sur ce dont parle ctacke (http://stackoverflow.com/questions/1179103/visual-studio-2005-linker-problem/1179118#1179118) –