2 votes

Mise à jour de la DLL d'un projet C++ dans Visual Studio

J'ai un projet qui utilise une DLL que j'ai créée. Tout fonctionne à merveille, mais je suis en train d'étendre la bibliothèque de la DLL afin d'optimiser certaines fonctions plus anciennes.

Ce que je me demande, c'est si je modifie la bibliothèque de manière à ce que seul le corps de la fonction principale change et rien d'autre, puis-je simplement reconstruire la DLL et la remplacer par l'ancienne ou est-ce que c'est parce que le corps de la fonction a changé que je dois reconstruire tous les projets qui ont utilisé cette DLL.

La raison principale pour laquelle je pose cette question est que tous ces projets font référence au fichier .lib et, pour être honnête, je ne sais pas exactement ce que contient un fichier .lib d'un projet DLL.

Tout conseil serait grandement apprécié.

Gracias

1voto

smerlin Points 3276

Si vous ne modifiez que le corps des fonctions, que ces fonctions ne sont pas des fonctions modèles et que vous compilez la dll avec les mêmes options de compilation qu'à l'époque, tout devrait bien se passer.

Vous devrez peut-être veiller à ce que la dll et votre exécutable utilisent la même version de la bibliothèque d'exécution Microsoft C++. La version qui sera chargée peut être modifiée par des fichiers manifestes.

1voto

Lirik Points 17868

Si vous ne faites que modifier les fonctions pour les optimiser, sans changer les signatures des fonctions, alors vous pouvez simplement créer votre bibliothèque et la déployer (en remplaçant l'ancienne bibliothèque).

Toutefois, si vous devez modifier les signatures de fonction, vous pouvez faire l'une des deux choses suivantes (au moins) :

  1. Modif
  2. I

Y h

Prograide.com

Prograide est une communauté de développeurs qui cherche à élargir la connaissance de la programmation au-delà de l'anglais.
Pour cela nous avons les plus grands doutes résolus en français et vous pouvez aussi poser vos propres questions ou résoudre celles des autres.

Powered by:

X