это может быть на самом деле глупый вопрос, так как я не понимаю внутренности VS и поэтому могу что-то упустить.
Что я пытаюсь сделать (упрощенная версия).У меня в основном 3 проекта A, B и C (файлы vcxproj) в разных местах.Затем я использую эти проекты в двух решениях, которые находятся в других местах (скажем, S1 и S2 и более подробно о предстоящей структуре ...).Чтобы все заработало, мне пришлось использовать много $ (ProjectDir) вместо $ (SolutionDir) для определения местоположения.Таким образом, я могу повторно использовать проекты в S1 и S2, убедившись, что если я сделаю $ (ProjectDir) .... \ для ссылки на что-либо (.h .lib или другие файлы), они будут в правильном расположении.Теперь, скажем, в S1 я импортировал A, B и C, где B и C зависят от A, поэтому я добавил ссылку в B и C в A. Пока все хорошо, но ...
Чтоидет не так 1) Если посмотреть на свойства ссылки на A в B (в S1), я вижу, что «Полный путь» указывает на файл библиотеки, созданный A, а не на файл A.vcxproj2) Хотя это случайно в одном S1 (когда я говорю правильно, я имею в виду, что оно указывает на что-то, что действительно производится и доступно), когда я добираюсь до S2, библиотека, поступающая из проекта A, указывает, что она находится в неправильном месте (все же я ожидал ссылаться на проект, а не на выходную lib)
Вопросы 1) Кто-нибудь знает, почему ссылка на проект имеет полный путь, указывающий на библиотеку?2) Даже если это правильно, потому что, когда вы добавляете зависимость, вы на самом деле говорите, что зависите от ее продукта, почему они указывают разный путь в двух разных решениях?Возможно, даже использования $ (ProjectDir) для создания путей в зависимости от проекта, а не решения недостаточно ...
Спасибо вам всем