Bonjour à tous,
Voilà mon problème :
Je travaille sous VS2010, C++ MFC.
J'ai une vingtaine de projets différents, mais qu'il n'est pas utile d'avoir tous en même temps. J'ai derrière cela une vingtaine de solutions qui comportent chacune un arrangement de ces projets (Par exemple : La solution 1 comporte les projets 1 2 4 5 et 7, la solution 2 les projets 1 2 4 8 et 9, etc...)
Le problème, c'est que certains de ces projets ont besoin de s'avoir en référence pour fonctionner. Par exemple pour la solution 1 donnée en exemple le projet 1 a besoin des références de tous les autres projets de la solution, et le 2 a besoin des références 4 et 5.
Et c'est là que ça se complique, dans la solution exemple 2, le projet 1 a besoin des références vers 2 4 8 et 9, et le projet 2 vers 4 et 8.
On se retrouve donc avec :
S1 :
P1 -> P2, P4, P5, P7
P2 -> P4, P5
P4
P5
P7
S2 :
P1 -> P2, P4, P8, P9
P2 -> P4, P8
p4
P8
P9
Les projets n'ont pas les mêmes références suivant la solution qu'on ouvre.
Avant ce programme était sous VC++ 2003, et ça fonctionnait très bien, les références étaient pour le projet pour une solution. On change de solution, le projet a changé de références.
Mais depuis sa migration sous 2010 le projet a les mêmes références peu importe la solution.
Donc actuellement, si j'ouvre la solution 2 après avoir paramétré pour fonctionner avec la solution 1, le projet 1 aura toujours les références vers P5 et P7 (et en plus il ne les affiche pas dans la liste des références mais il les a quand même).
La solution temporaire est donc d'ouvrir la solution 1, supprimer les références P5 et P7, sauvegarder, ouvrir la solution 2, ajouter les références P8 et P9. Inversement si on veux recompiler la solution 1.
Sachant que je dois compiler des S1 des S2 et compagnie à tout bout de champ, modifier les références à chaque fois est source de nombreuses erreurs (rappelons que les références adaptée à S1 s'appliquent dans S2 sans même s'afficher).
J'en viens à la question du jour, peut-on faire comme dans la version 2003, un projet contient des références suivant la solution dans laquelle il se trouve ? Si non, comment puis-je contourner ce problème ?
Merci d'avance pour vos réponses.
Partager