2010-07-28 5 views
1

Bon, voici mon problème (et ma première question sur SO!), Et non, autant que je le voudrais, je n'ai pas beaucoup d'influence sur la façon dont les choses sont structurées. Une de ces fermes héritées que la direction ne me laissera pas changer trop.Problème avec Includes, Visual Studio 2008

Je suis dans Visual Studio 2008 dans une solution WinForms. Ma solution contient 5 projets Visual C++, certains gérés, d'autres natifs. J'ai aussi un dossier dans mon explorateur de solution qui a plusieurs fichiers d'en-tête «communs» que les différents projets tirent dedans. Ceux-ci arrivent à être des en-têtes d'API pour plusieurs fournisseurs. Impossible de trouver la source derrière ces en-têtes car je n'ai qu'une bibliothèque statique et les fichiers .h.

La mise en page du dossier ressemble à ceci:

/ 
/ProjectA 
    /Debug 
    /Release 
    Files For Project A 
/ProjectB 
    /Debug 
    /Release 
    Files For Project B 
/ProjectC 
    /Debug 
    /Release 
    Files For Project C 
/ProjectD 
    /Debug 
    /Release 
    Files For Project D 
/ProjectE 
    /Debug 
    /Release 
    Files For Project E 
/Common 
    Headers are here. 
/Debug 
/Release 

Ma question est donc ce:

Au lieu de modifier chaque Properites- de fichier de projet> C/C++ -> Général-> supplémentaires Inclure des répertoires à Avoir une référence à ../Common, est-il un meilleur moyen, comme la mise en place de voodoo caché dans le fichier de solution de sorte que tous les projets sous la bannière de la solution comprennent automagically ce répertoire commun? Je préfère le garder portable, donc je ne veux pas aller à Outils-> Options-> Projets et Solutions-> VC++ Répertoires-> Fichiers inclus et ajouter une entrée là-bas, car il fait cette édition localement et ne cascade pas à d'autres développeurs quand je vérifie ce changement.

Merci! :-)

Répondre

2

En fait, vous pouvez configurer un fichier .vsprops pour spécifier que Include, puis ont tous .vcproj Hériter de vos projets à partir de ce fichier feuille de propriétés ...

0

Malheureusement, les fichiers de projet sont séparés - le fichier de solution ne peut pas communiquer avec eux sur ce genre de chose. Si cela vous facilite la tâche, vous pouvez éditer les fichiers de projet dans un éditeur de texte approprié (y compris VS), vous n'avez pas à passer par l'ennui de la boîte de dialogue/feuille de propriétés pour chacun.

+0

C'est ce que je craignais. L'ennui ne me dérange pas, ce n'est que 5 projets après tout, c'était plus l'idée d'ajouter cinq points de défaillance distincts à ce projet. Si personne ne sort avec une solution magique, je vais vous donner la réponse: -S – Caladain