Как использовать функции, присутствующие в проекте, в другом проекте, фактически не добавляя заголовочные и исходные файлы вручную? - PullRequest
0 голосов
/ 06 мая 2011

Я использую Visual Studio 6.0 для проекта VC ++.В рабочую область включено около 38 проектов.Мне нужно использовать функции, присутствующие в одном из проектов, скажем, X project ... в другом проекте, скажем, Y.

Один из способов сделать это - добавить все файлы .cpp и .h, присутствующие в проекте.X к проекту Y. Это работает.Но я ищу решение, в котором я могу включить все файлы проекта X в проект Y без физического добавления файлов.Должны быть какие-то настройки, которые должны помочь мне в этом.Я попытался включить все связанные DLL-файлы и .lib-файлы, присутствующие в X-Y, и при выполнении я получаю сообщение об ошибке: неразрешенный внешний символ "public: virtual__ бла-бла ...

Ответы [ 2 ]

0 голосов
/ 09 мая 2011

Добавьте путь, содержащий файл заголовка, который вы хотите использовать (xh) в

Project->Settings->C/C++->Category(Preprocessor)->Additional Include directories

Затем добавьте путь, содержащий файл .lib для проекта, который вы хотите использовать (x.lib), в

Project->Settings->Linker->Category(Input)->Additional Library path

Наконец, введите имя библиотеки, которую вы хотите использовать (x.lib), в

Project->Settings->Linker->Category(General)->Object/library modules 

Затем просто введите

#include <x.h> 

начало вашего нового файла в проекте Y для использования методов из xh

0 голосов
/ 06 мая 2011

Если вы хотите использовать функцию проекта X в проекте Y, тогда проект X должен быть своего рода библиотекой (статическая библиотека или DLL). Для этого вам нужно

  • изменить путь поиска включения проекта Y, чтобы он включал каталог, в котором находятся заголовочные файлы проекта X.

  • добавить библиотеку X.lib к компоновщику «дополнительных библиотек» проекта Y. Если X является DLL project th X.lib, добавляется библиотека импорта, если X является LIB проекта, результатом проекта является X.lib, который будет добавлен в проект Y.

Последний шаг можно сделать, определив «зависимости проекта» в рабочей области. Но я рекомендую сделать это с настройками компоновщика.

Добавлены файлы .cpp в проект Y - плохая идея. Проект X предназначен для компиляции его файлов.

Редактировать: Если X является проектом DLL, он должен экспортировать символы , которые вы хотите использовать.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...