Перейти к содержимому

Как добавить ссылку на проект с visual studio

  • автор:

Настройка нового проекта

Прежде всего в среде разработки необходимо создать новый проект. Другой способ: можно использовать пример проекта AecSpaceOffsetStandardSample.

Прим.: Подключаемый модуль стандарта расчета площади реализован в виде библиотеки классов .NET, а не в виде приложения Windows.

  1. Откройте Microsoft Visual Studio 2005.
  2. Выберите в главном меню вкладку New (Создать).
  3. Выберите File (Файл) Project (Проект).
  4. В диалоговом окне «Новый проект» выберите шаблон библиотеки классов в одном из следующих местоположений:
    • Visual Basic Windows
    • Visual C# Windows
    • Visual C++ CLR.
  5. Введите имя нового проекта. Рекомендуется использовать префикс AecAreaCalculationStandard, например, чтобы создать примерно такое имя AecAreaCalculationStandardMyOffsetRules. Такой способ именования соответствует именам подключаемых модулей, поставляемых с AutoCAD Architecture 2022 toolset (например, AecAreaCalculationStandardBasic, AecAreaCalculationStandardBOMA и т. д.). Программа распознает, что префикс описывает подключаемый модуль стандарта расчета площади и способна извлечь имя из сборки в целях диагностики. Перед обработкой убедитесь, что проект библиотеки классов .NET настроен и можно начинать редактирование исходного кода и файлов проекта.
  6. Для создания подключаемого модуля стандарта расчета площади библиотека классов .NET, созданная ранее, должна ссылаться на API-интерфейс .NET, входящий в состав AutoCAD Architecture 2022 toolset . Этот API реализован в сборке AecSpaceOffsetRuleManager.dll, на которую необходимо установить ссылку в новом проекте.
  7. Если имеется опыт работы с Microsoft Visual Studio, можно добавить ссылку на сборку в файл AecSpaceOffsetRuleManager.dll проекта библиотеки классов, нажав правой кнопкой мыши References (Ссылки) в Solution Explorer проекта и выбрав Add Reference (Добавить ссылку).
  8. Перейдите на страницу «Обзор» в таблице свойств и найдите сборку AecSpaceOffsetRuleManager.dll в папке C:\Program Files\ACA (или в папке, выбранной при установке).
  9. Добавьте ссылки в следующие сборки установки:
    • acdbmgd.dll (AutoCAD .NET API)
    • aecbasemgd.dll (базовые классы AutoCAD Architecture 2022 toolset )
    • aecarchmgd.dll (объекты AutoCAD Architecture 2022 toolset )

Эти динамические библиотеки DLL находятся в той же папке, что и сборка AecSpaceOffsetRuleManager.dll.

@if exist $(TargetPath) @copy $(TargetPath) "C:\Program Files\AutoCAD Architecture \Space Calculation Standards\" @if exist $(TargetDir)$(TargetName).pdb @copy $(TargetDir)$(TargetName).pdb "C:\Program Files\AutoCAD Architecture \Space Calculation Standards\"
Понятия, связанные с данным
  • Использование нового стандарта
  • Внедрение подключаемого модуля пользовательского стандарта расчета площади
  • Пространства

Добавление ссылок на управляемый проект Visual C++

В этой статье содержатся сведения о добавлении ссылок на управляемый проект Visual C++.

Исходная версия продукта: Visual C++
Исходный номер базы знаний: 310674

Аннотация

В этой статье описывается процесс добавления ссылки на другую сборку в проекте Visual C++. В других языках, таких как Visual C#, можно добавить ссылку с помощью диалогового окна Добавление ссылки . Это диалоговое окно недоступно для управляемых приложений C++. Существует несколько советов, которые упрощают использование ссылок в управляемом приложении C++.

Ссылки на Microsoft .NET

Ссылки на .NET указывают на общие сборки. Например, System.Windows.Forms.dll сборки является стандартной сборкой для доступа к классам Windows Forms. Чтобы использовать эту сборку в управляемом приложении C++, необходимо просто сослаться на нее #using с помощью директивы препроцессора, как показано ниже:

#using

Ссылки на COM

Использование com-объекта в управляемом приложении C++ предполагает принятие решения о проектировании. Один из вариантов — использовать неуправляемый COM-код внутри управляемого класса. Например, можно решить использовать традиционное #import решение. Это может быть хорошим вариантом для случаев, когда возникают проблемы с использованием COM-взаимодействия.

Второй вариант — использовать сборки взаимодействия, которые упаковывают com-объект. Это единственный метод, доступный для других языков, таких как C# и Visual Basic .NET. Чтобы создать сборку взаимодействия для com-объекта, используйте средство TLBIMP.exe. Например, выполните следующие действия, чтобы автоматизировать Internet Explorer из управляемого приложения:

  1. Откройте окно командной строки.
  2. Перейдите к системной папке Windows.
  3. Введите следующую команду:

tlbimp shdocvw.dll /out: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 используется для ссылки на эти сборки. Тем не менее, так как эти сборки не являются общими, необходимо принять меры, чтобы компилятор смог их найти. Это можно сделать двумя способами:

  • Скопируйте сборку в папку проекта.
  • Измените параметры проекта, чтобы найти сборку:

Примечание. В Visual C++ разверните узел Свойства конфигурации, а затем разверните узел C/C++.

Использование событий после сборки

Частные сборки должны находиться в той же папке, что и исполняемый файл, в котором они используются. При добавлении ссылки в Visual C#, в Visual Basic .NET или Visual Basic она автоматически копируется в выходную папку. В управляемом приложении C++ этот шаг можно автоматизировать с помощью post-build событий. Например, рассмотрим сценарий, в котором у вас есть сборка с именемMYLIB.dll в папке проекта управляемого приложения C++ с именем TestApp. Следующие действия помогут настроить post-build событие, которое скопировать эту библиотеку DLL в выходную папку проекта TestApp .

  1. Откройте диалоговое окно Страницы свойств проекта Managed C++.
  2. Щелкните папку События сборки .

Примечание. В Visual C++ разверните узел Свойства конфигурации, а затем — События сборки.

copy $()mylib.dll $() 

Использование Visual C++ .NET или Visual C++

С помощью Visual C++ .NET или Visual C++ можно добавить ссылку с помощью диалогового окна Добавление ссылки . Чтобы добавить ссылку на проект, выполните следующие действия.

  1. В Обозреватель решений выберите проект.
  2. В меню Проект щелкните Добавить ссылки.

Примечание. В Visual C++ выберите ссылки в меню Проект , а затем — Добавить новую ссылку.
Примечание. В Visual C++ откройте вкладку Обзор в диалоговом окне Добавление ссылок .
Примечание. В Visual C++ найдите нужный компонент на локальном диске.

Примечание. В Visual C++ нажмите кнопку ОК , чтобы закрыть диалоговое окно и добавить компонент в список Ссылки в диалоговом окне Страница свойств проекта.

Обратная связь

Были ли сведения на этой странице полезными?

Visual Studio — добавить ссылку на проект

В References появляется этот проект. Проект не билдится, т.к. IDE не видит DLL для используемого в коде класса (видимо так). Если сделать AddReference на DLL – всё ок, билдится. Что делаю не так? Нужно указать ссылку именно на проект, а не DLL.

Отслеживать

задан 20 июн 2018 в 14:46

293 4 4 серебряных знака 17 17 бронзовых знаков

возможно добавленный проект у вас не билдится, возможно у него есть свои зависимости, которые вы не добавили к вашему солюшену. После добавления проекта в солюшн, пробовали этот проект собрать отдельно от солюшена? (правый клик на проекте => Build)

20 июн 2018 в 22:02

да, проект сам билдится

Свойства проекта: разделы References и Resources в Visual Studio

Закладка References (только для языка Visual Basic)

Закладка References позволяет разработчику ссылаться на классы, принадлежащие к другим .NET-сборкам, проектам или библиотекам DLL. Как только проект или библиотека DLL добавлены в список ссылок, класс становится доступен либо по своему полному имени, включающему пространство имен, либо просто по имени, если пространство имен импортировано в исходный файл. На рисунке ниже показана закладка References для проекта, ссылающегося на множество сборок:

Закладка References среды Visual Studio

Одной из особенностей этой закладки, предназначенной для разработчиков программ на языке Visual Basic, является кнопка Unused References, позволяющая выполнять поиск ссылок, которые можно удалить. Кроме того, можно добавлять пути к ссылкам (reference path), что дает возможность включать все сборки, расположенные в данном месте.

Как только сборка добавлена в список ссылок, любой открытый класс, содержащийся в этой сборке, становится видимым в проекте. Если класс вложен в пространство имен (которое может быть вложенной иерархией), то для ссылки на класс необходимо указывать его полное имя. В языках Visual Basic и C# предусмотрен механизм импортирования пространств имен, чтобы на классы можно было ссылаться непосредственно. Раздел References позволяет осуществлять глобальный импорт пространств имен для классов, принадлежащих проекту, без явного импорта в файл класса.

Ссылки на внешние сборки могут быть ссылками на файл или проект. Ссылка на файл — это прямая ссылка на отдельную сборку. Такие ссылки создаются с помощью закладки Browse в диалоговом окне Add Reference. Ссылка на проект — это ссылка на отдельный проект в решении. Все сборки, создающиеся проектом, динамически добавляются как ссылки. Ссылки на проекты создаются с помощью закладки Project в диалоговом окне Add Reference.

Преимущество ссылки на проект заключается в том, что она создает зависимость между проектами в системе сборки. Зависимый проект может быть собран заново, если он был изменен с момента последней сборки проекта, который на него ссылается. Ссылка на файл не создает зависимости между сборками, поэтому возможна ситуация, когда проект, ссылающийся на файл, будет собран, а зависимый проект — нет. Однако это может создать проблемы в ссылающемся проекте, который ожидает другую версию зависимого проекта.

Закладка Resources

Ресурсы проекта можно добавлять и удалять с помощью закладки Resources, показанной на рисунке ниже. В приведенном примере в приложение были добавлены две пиктограммы. Ресурсами могут быть изображения, текст, файлы и другие сериализуемые классы.

Закладка Resources среды Visual Studio

Этот интерфейс существенно облегчает работу с файлами ресурсов во время проектирования.

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *