Примечание.
Для доступа к этой странице требуется авторизация. Вы можете попробовать войти или изменить каталоги.
Для доступа к этой странице требуется авторизация. Вы можете попробовать изменить каталоги.
В этой статье содержатся сведения о добавлении ссылок на управляемый проект Visual C++.
Исходная версия продукта: Visual C++
Исходный номер базы знаний: 310674
Итоги
В этой статье описывается процесс добавления ссылки на другую сборку в проекте Visual C++. На других языках, таких как Visual C#, можно добавить ссылку с помощью диалогового окна "Добавить ссылку ". Это диалоговое окно недоступно для управляемых приложений C++. Существует несколько советов, которые упрощают использование ссылок в управляемом приложении C++.
Ссылки на Microsoft .NET
Ссылки на .NET указывают на общие сборки. Например, сборка System.Windows.Forms.dll является стандартной сборкой для доступа к классам Windows Forms. Чтобы использовать эту сборку в управляемом приложении C++, необходимо просто ссылаться на нее #using с директивой препроцессора, как показано ниже:
#using <System.Windows.Forms.dll>
ССЫЛКИ НА COM
Использование объекта component Object Model (COM) в управляемом приложении C++ включает в себя решение о проектировании. Один из вариантов — использовать неуправляемый COM-код внутри управляемого класса. Например, можно решить использовать традиционное #import решение. Это может быть хорошим вариантом для случаев, когда возникают проблемы с использованием COM-взаимодействия.
Второй вариант — использовать сборки взаимодействия, которые упаковывают com-объект. Это единственный метод, доступный для других языков, таких как C#, и Visual Basic .NET. Чтобы создать сборку взаимодействия для COM-объекта, используйте средство TLBIMP.exe. Например, выполните следующие действия, чтобы автоматизировать Internet Explorer из управляемого приложения:
Откройте командную строку.
Перейдите в папку Системы Windows.
Введите следующую команду:
tlbimp shdocvw.dll /out:Interop.shdocvw.dllПереместите Interop.shdocvw.dll в папку проекта.
При этом создается сборка взаимодействия для COM-объектов в Shdocvw.dll. Результирующий файл, Interop.shdocvw.dll, можно использовать с директивой #using . Затем его можно рассматривать как управляемый компонент. Инструкции по автоматическому копированию этой библиотеки динамической компоновки (DLL) в выходную папку см. в разделе "Использование событий после сборки" этой статьи.
Примечание.
Переменные среды для Visual C++ должны быть заданы, чтобы TLBIMP.exe распознать. Если они не заданы, сначала необходимо запустить ./VC7/BIN/VCVARS32.bat в Visual Studio .NET или ./VC/BIN/VCVARS32.bat Visual Studio и Visual C++ Express Edition.
Ссылки на проекты
Ссылки на проекты — это ссылки на сборки, созданные другими проектами. Опять же, директива #using используется для ссылки на эти сборки. Однако, поскольку эти сборки не являются общими, необходимо принять меры, чтобы убедиться, что компилятор может их найти. Это можно сделать двумя способами:
- Скопируйте сборку в папку проекта.
- Измените параметры проекта, чтобы найти сборку:
Откройте диалоговое окно Страницы свойств проекта.
Откройте папку C/C++ .
Примечание.
В Visual C++разверните свойства конфигурации и разверните узел C/C++.
Щелкните страницу общего свойства .
Измените свойство Resolve #using References , чтобы указать папку, содержащую целевую сборку.
Использование событий после сборки
Частные сборки должны находиться в той же папке, что и исполняемый файл, использующий их. При добавлении ссылки на Visual C# в Visual Basic .NET или Visual Basic она автоматически копируется в выходную папку. В управляемом приложении C++ этот шаг можно автоматизировать с помощью post-build событий. Например, рассмотрим сценарий, в котором у вас есть сборка с именем MYLIB.dll в папке проекта управляемого приложения C++ с именем TestApp. Ниже описано, как настроить post-build событие, которое будет копировать эту библиотеку DLL в выходную папку проекта TestApp .
Откройте диалоговое окно "Страницы свойств управляемого проекта C++".
Щелкните папку "События сборки".
Примечание.
В Visual C++разверните свойства конфигурации и разверните узел "События сборки".
Щелкните страницу свойства события после сборки.
Измените свойство командной строки на следующую команду:
copy $(<ProjectDir>)mylib.dll $(<TargetDir>)
Использование Visual C++ .NET или Visual C++
С помощью Visual C++ .NET или Visual C++можно добавить ссылку с помощью диалогового окна "Добавить ссылку ". Чтобы добавить ссылку на проект, выполните следующие действия.
В обозревателе решений выберите проект .
В меню "Проект" нажмите кнопку "Добавить ссылки".
Примечание.
В Visual C++щелкните "Ссылки" в меню "Проект " и нажмите кнопку "Добавить новую ссылку".
В диалоговом окне "Добавление ссылок" щелкните вкладку, соответствующую категории, к которой нужно добавить ссылку.
Примечание.
В Visual C++щелкните вкладку "Обзор " в диалоговом окне "Добавить ссылки ".
Нажмите кнопку "Обзор", найдите нужный компонент на локальном диске и нажмите кнопку "ОК". Компонент добавляется в поле "Выбранные компоненты".
Примечание.
В Visual C++найдите нужный компонент на локальном диске.
Чтобы добавить выбранную ссылку на текущую вкладку, нажмите кнопку "Добавить".
Примечание.
В Visual C++нажмите кнопку "ОК", чтобы закрыть диалоговое окно и добавить компонент в список ссылок в диалоговом окне "Страница свойств" проекта.