6

Проекты Visual Studio предполагают, что все файлы, принадлежащие проекту, расположены в том же каталоге, что и файл проекта, или один под ним.Хранение исходных файлов за пределами каталога файла проекта в Visual Studio C++ 2009

Для конкретного проекта (в смысле не Visual Studio) это не то, что я хочу. Я хочу хранить файлы, зависящие от MSVC, в другой папке, потому что могут быть и другие способы создания приложения, например, с помощью SCons. Кроме того, все материалы, которые MSVC выбрасывает, загромождают исходный каталог.

Пример:

/source 
/scons 
/msvc <- here is where I want my MSVC-specific stuff 

Я могу добавить файлы, в проводнике, в каталог source вручную, а затем связать их в Visual Studio с проектом. Это не конец света, но меня немного раздражает, что Visual Studio пытается диктовать структуру папок моего проекта.

Я просматривал файл проекта schemas, но понял, что это раздражающее предположение находится в среде IDE, а не в формате файлов проекта.

Кто-нибудь знает более простой способ решить эту проблему, чем вручную связать файлы с проектом из каталога source?

+1

Что вы подразумеваете под «связыванием файлов с проектом»? Если у вас есть файлы в разных папках, не работает ли «Добавить существующие файлы ...»? – GManNickG

+0

@GMan, да. Мне просто интересно, есть ли более аккуратный способ сделать это, поэтому мне не придется делать «Добавить существующие файлы» все время, но более или менее сообщают проекту, что мои вещи находятся в определенном каталоге. – Skurmedel

+0

Хорошо, я вижу. Я немного в той же лодке, но я только что научился добавлять их вручную, я не думаю, что есть способ сказать ей посмотреть папку. Мне бы хотелось, если бы они были. – GManNickG

ответ

3

Я использую это иногда довольно уверен, что это то, что вы хотите:

  • убедитесь, что опция Show All Files находится в вашем обозревателе решений.
  • создайте символическую ссылку, которая нацелена на исходный каталог и поместите ссылку на том же уровне, что и ваш проект, или даже ниже, если вы хотите более тонкое управление. Команда mklink /j target source

Для структуры пример проекта вы показываете, вы бы запустить mklink /msvc/source /source и в проекте исходный каталог будет отображаться, как если бы это было в директории проекта (ну, на самом деле это). Дополнительный бонус: добавление новых элементов через VS также автоматически помещает их в правильный каталог.

+0

Благодарим вас за эту идею. Я попробую, когда вернусь домой. – Skurmedel

3

Вы можете добавлять файлы со ссылками, как это, они доступны для поиска, вид-возможности, но они не проверка, если вы пытаетесь изменить их, а также Visual Studio оставляет символы на месте:

<ItemGroup> 
    <Content Include="..\Database Schema\Views\*.sql"> 
     <Link>Views\*.sql</Link> 
    </Content> 
    </ItemGroup> 

Этот входит в файл .proj.