Visual studio добавить ссылку на библиотеку
Для работы с файлами Word и Excel я решил выбрать библиотеки Microsoft.Office.Interop.Word и Microsoft.Office.Interop.Excel, предоставляющие программные интерфейсы для взаимодействия с объектами MS Word и Excel.
Преимущества использования этих библиотек:
- созданы корпорацией Microsoft, следовательно, взаимодействие с объектами программ пакета MS Office реализовано наиболее оптимально,
- нужный пакет Visual Studio Tool for Office поставляется вместе с Visual Studio (достаточно отметить его при установке VS).
Также следует заметить, что у такого похода есть и недостаток: для того, чтобы написанная программа работала на ПК пользователя необходимо, чтобы на нём были установлены программы MS Office и MS Excel. Поэтому такой подход плохо подходит для серверных решений. Также такая программа не будет являться кроссплатформенной.
Добавление библиотек в проект Visual Studio
Для использования библиотеки нужно:
- добавить ссылку на неё: в обозревателе решений необходимо кликнуть правой кнопкой мыши по пункту Ссылки (Рис. 1) и найти нужную библиотеку по ключевым словам (после добавления ссылка появится в списке),
- указать используемое пространство имён в файле программы (в примере ему назначен алиас Word): (Рис. 2):
Пример парсинга файла MS Word
Можно прочитать основные форматы: .doc, .docx, .rtf.
Ниже приведён листинг с примером считывания текста из документа MS Word:
- в коде приводится пример считывания основного текста документа, текста верхних и нижних колонтитулов, а также текста сносок,
- в коде производится очистка неуправляемых ресурсов с использованием класса Marshal (подробнее можно почитать по ссылке )
Пример парсинга файла MS Excel
Можно прочитать основные форматы: .xls, .xlsx.
Ниже приведён листинг с примером считывания текста из документа MS Excel (по ячейкам):
- при обработке текста каждой ячейки приходится заранее знать количество задействованных строк и столбцов на текущем листе документа,
- такой перебор не совсем оптимален (временная сложность алгоритма O(n 2 )): при желании его можно ускорить (например, разбив обработку на несколько потоков): в данной статье приводится лишь пример получения текста из каждой ячейки,
- при таком переборе ячеек необходимо на каждой итерации освобождать неуправляемые ресурсы, чтобы избежать утечек памяти (аналогично предыдущему примеру, используется класс Marshal).
С помощью указанных библиотек можно не только читать текст из документов, но и создавать новые файлы форматов MS Word и Excel.
В качестве примера мы рассмотрим подключение библиотеки SDL к нашему проекту в Visual Studio 2017 (работать будет и с более новыми версиями Visual Studio).
Шаг №1: Создаем папку для хранения библиотеки
Создаем папку Libs на диске C ( C:\Libs ).
Шаг №2: Скачиваем и устанавливаем библиотеку
Шаг №3: Указываем путь к заголовочным файлам библиотеки
Открываем свой любой проект в Visual Studio или создаем новый, переходим в "Обозреватель решений" > кликаем правой кнопкой мыши (ПКМ) по названию нашего проекта > "Свойства" :
В "Свойства конфигурации" ищем вкладку "С/С++" > "Общие" . Затем выбираем пункт "Дополнительные каталоги включаемых файлов" > нажимаем на стрелочку в конце > "Изменить" :
В появившемся окне кликаем на иконку с изображением папки, а затем на появившееся троеточие:
Заголовочные файлы находятся в папке include внутри нашей библиотеки, поэтому переходим в нее ( C:\Libs\SDL2-2.0.9\include ) и нажимаем "Выбор папки" , а затем "ОК" :
Шаг №4: Указываем путь к файлам с реализацией библиотеки
Переходим на вкладку "Компоновщик" > "Общие" . Ищем пункт "Дополнительные каталоги библиотек" > нажимаем на стрелочку в конце > "Изменить" :
Опять же, нажимаем на иконку с папкой, а затем на появившееся троеточие. Нам нужно указать следующий путь: C:\Libs\SDL2-2.0.9\lib\x86 . Будьте внимательны, в папке lib находятся две папки: x64 и x86 . Даже если у вас Windows разрядности x64, указывать нужно папку x86 . Затем "Выбор папки" и "ОК" :
После этого переходим в "Компоновщик" > "Ввод" . Затем "Дополнительные зависимости" > нажимаем на стрелочку в конце > "Изменить" :
В появившемся текстовом блоке вставляем:
Затем переходим в "Компоновщик" > "Система" . После этого "Подсистема" > нажимаем на стрелочку вниз > выбираем "Консоль (/SUBSYSTEM:CONSOLE)" > "Применить" > "ОК" :
Шаг №5: Копируем dll-ку в папку с проектом
Переходим в папку x86 ( C:\Libs\SDL2-2.0.9\lib\x86 ), копируем SDL2.dll и вставляем в папку с вашим проектом в Visual Studio. Чтобы просмотреть папку вашего проекта в Visual Studio, нажмите ПКМ по названию вашего проекта > "Открыть содержащую папку" :
Затем вставляем скопированный файл (SDL2.dll) в папку с проектом (где находится рабочий файл .cpp):
Шаг №6: Тестируем
Теперь, чтобы проверить, всё ли верно мы сделали — копируем и запускаем следующий код:
Диалоговое окно "Диспетчер ссылок"
В левой части диалогового окна "Диспетчер ссылок" отображаются различные категории в зависимости от типа проекта:
Сборки с подгруппами Платформа и Расширения.
COM содержит список всех COM-компонентов, ссылки на которые можно добавить.
Проекты
Общие проекты
Windows с подгруппами Ядро и Расширения. Для просмотра ссылок в Windows SDK и пакетах SDK расширений можно использовать Обозреватель объектов.
Обзор с подгруппой последних ссылок.
При разработке проектов С++ элемент Обзор может не отображаться в диалоговом окне "Диспетчер ссылок".
Добавление ссылки
В обозревателе решений щелкните правой кнопкой мыши узел Ссылки или Зависимости и выберите команду Добавить ссылку. Вы также можете щелкнуть узел проекта правой кнопкой мыши и выбрать пункт Добавить > Ссылка.
Будет открыт Диспетчер ссылок со списком доступных ссылок по группам.
Укажите ссылки, которые требуется добавить, а затем нажмите кнопку ОК.
В обозревателе решений щелкните правой кнопкой мыши узел Ссылки или Зависимости, после чего выберите Добавить ссылку на проект или Добавить общую ссылку на проект, или Добавить ссылку COM. (Можно щелкнуть правой кнопкой мыши узел проекта и выбрать пункт Добавить из всплывающего меню, чтобы выбрать эти параметры.)
Будет открыт Диспетчер ссылок со списком доступных ссылок по группам.
Укажите ссылки, которые требуется добавить, а затем нажмите кнопку ОК.
Вкладка "Сборки"
При добавлении вручную ссылки на любое из пространств имен EnvDTE (EnvDTE, EnvDTE80, EnvDTE90, EnvDTE90a или EnvDTE100) установите в окне Свойства для свойства ссылки Внедрить типы взаимодействия значение False. Задание для этого свойства значения True может привести к проблемам сборки, так как некоторые свойства EnvDTE не допускают внедрения.
Все проекты классических приложений содержат неявную ссылку на библиотеку mscorlib. Проекты Visual Basic содержат неявную ссылку на Microsoft.VisualBasic. Все проекты содержат неявную ссылку на System.Core, даже если она была удалена из списка ссылок.
Если тип проекта не поддерживает сборки, эта вкладка не отображается в диалоговом окне "Диспетчер ссылок".
Вкладка Сборки состоит из двух подразделов.
В разделе Платформа перечислены все сборки, из которых состоит целевая платформа.
- HKEY_CURRENT_USER\SOFTWARE\Microsoft\[Target Framework Identifier]\v[Target Framework Version]\AssemblyFoldersEx\[UserComponentName]\@default=[Disk location of assemblies]
- HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\[Target Framework Identifier]\v[Target Framework Version]\AssemblyFoldersEx\[UserComponentName]\@default=[Disk location of assemblies]
- HKEY_CURRENT_USER\SOFTWARE\Wow6432Node\Microsoft\[Target Framework Identifier]\v[Target Framework Version]\AssemblyFoldersEx\[UserComponentName]\@default=[Disk location of assemblies]
- HKEY_LOCAL_MACHINE\SOFTWARE\Wow6432Node\Microsoft\[Target Framework Identifier]\v[Target Framework Version]\AssemblyFoldersEx\[UserComponentName]\@default=[Disk location of assemblies]
Некоторые компоненты в списке могут не отображаться в зависимости от версии платформы проекта. Это может произойти в следующих случаях.
Компонент, использующий новую версию платформы, не совместим с проектом, нацеленным на более раннюю версию платформы.
Сведения об изменении целевой версии платформы для проекта см. в статье Общие сведения о настройке для платформы.
Не следует добавлять ссылки на выходные файлы другого проекта того же решения, поскольку это может привести к ошибкам компиляции. Вместо этого следует создавать ссылки между проектами, используя вкладку Проекты диалогового окна Добавление ссылки. Это позволит упростить коллективную разработку за счет более эффективного управления библиотеками классов, создаваемыми в проектах. Дополнительные сведения см. в статье Устранение неполадок неработающих ссылок.
Чтобы отобразить сборку в диалоговом окне "Добавление ссылки"
Переместите или скопируйте сборку в одно из следующих расположений.
Каталог текущего проекта. (Можно найти эти сборки, используя вкладку Обзор .)
Другие каталоги проектов в одном решении. (Можно найти эти сборки, используя вкладку Проекты.)
Установите раздел реестра, определяющий положение отображаемых сборок.
Для 32-разрядной операционной системы добавьте один из следующих разделов реестра.
Для 64-разрядной операционной системы добавьте один из следующих разделов реестра в 32-разрядный куст реестра.
<AssemblyLocation> является каталогом сборок, которые требуется отображать в диалоговом окне Добавить ссылку, например C:\MyAssemblies.
Создание раздела реестра в узле HKEY_LOCAL_MACHINE позволяет всем пользователям видеть сборки в указанном расположении в диалоговом окне Добавить ссылку. Создание раздела реестра в узле HKEY_CURRENT_USER влияет только на настройки для текущего пользователя.
Вкладка "Проекты"
На вкладке Проекты указываются все совместимые проекты в текущем решении (в подразделе Решение).
Вкладка "Общие проекты"
Добавьте ссылку на общий проект на вкладке Общие проекты диалогового окна "Диспетчер ссылок". Общие проекты позволяют писать общий код, на который ссылается несколько различных проектов приложений.
Вкладка "Универсальная платформа Windows"
Вкладка Универсальная платформа Windows содержит список всех пакетов SDK, относящихся к платформам, на которых работают операционные системы Windows. Эта вкладка имеет две подгруппы: Ядро и Расширения.
Подгруппа "Ядро"
Проекты универсального приложения для Windows по умолчанию имеют ссылку на пакет SDK универсальной платформы Windows. Соответственно, в подгруппе Ядро в диспетчере ссылок не перечисляются никакие сборки из пакета SDK универсальной платформы Windows.
Подгруппа "Расширения"
В разделе Расширения перечислены пользовательские пакеты SDK, расширяющие целевую платформу Windows.
Пакет SDK — это коллекция файлов, которая обрабатывается Visual Studio как единый компонент. На вкладке Расширения пакеты SDK, относящиеся к проекту, из которого было открыто диалоговое окно "Диспетчер ссылок", указываются как отдельные записи. При добавлении в проект все содержимое SDK используется Visual Studio таким образом, что пользователю не нужно принимать никаких дополнительных мер для добавления содержимого SDK в IntelliSense, на панель элементов, в конструкторы, обозреватель объектов, средства сборки, развертывания, отладки и упаковки.
Сведения об отображении SDK на вкладке Расширения см. в статье Создание средств разработки программного обеспечения.
Если проект ссылается на пакет SDK, зависящий от другого пакета SDK, Visual Studio не будет использовать второй пакет SDK, пока вы вручную не зададите ссылку на него. Когда пользователь выбирает пакет SDK на вкладке Расширения, открывается диалоговое окно "Диспетчер ссылок", которое помогает определить зависимости SDK, перечислив их в области сведений.
Если тип проекта не поддерживает расширения, эта вкладка не отображается в диалоговом окне "Диспетчер ссылок".
Вкладка COM
Если тип проекта не поддерживает COM, эта вкладка не отображается в диалоговом окне "Диспетчер ссылок".
Обзор
Кнопка Обзор позволяет осуществлять поиск компонента в файловой системе.
Не следует добавлять ссылки на выходные файлы другого проекта того же решения, поскольку это может привести к ошибкам компиляции. Вместо этого следует создавать ссылки между проектами, используя вкладку Решение диалогового окна "Диспетчер ссылок". Это позволит упростить коллективную разработку за счет более эффективного управления библиотеками классов, создаваемыми в проектах. Дополнительные сведения см. в статье Устранение неполадок неработающих ссылок.
Невозможно добавить SDK в проект с помощью кнопки "Обзор". С помощью кнопки "Обзор" можно добавить в проект только файл (например, сборку или файл WinMD).
При указании ссылки на файл WinMD предполагается, что файлы <FileName>.winmd, <FileName>.dll и <FileName>.pri находятся рядом. При указании ссылки на файл WinMD в следующих сценариях неполный набор файлов копируется в выходной каталог проекта и, следовательно, происходят сбои сборки и выполнения.
Компонент на базе машинного кода. Проект на базе машинного кода создает по одному файлу WinMD для каждого не связанного с другими набора пространств имен и по одному файлу DLL с реализацией. Файлы WinMD будут иметь разнородные имена. При указании ссылки на такой файл компонента на базе машинного кода MSBuild не определит, что файлы WinMD с разнородными именами относятся к одному компоненту. Следовательно, будут скопированы только файлы <FileName>.dll и <FileName>.winmd с одинаковыми именами, и возникнет ошибка времени выполнения. Чтобы обойти эту проблему, нужно создать пакет SDK расширения. Дополнительные сведения см. в статье Создание средств разработки программного обеспечения.
Использование элементов управления. Элемент управления XAML состоит по крайней мере из следующих файлов: <FileName>.winmd, <FileName>.dll, <FileName>.pri, <XamlName>.xaml и <ImageName>.jpg. Когда проект будет собран, файлы ресурсов, связанные со ссылкой на файл, не будут скопированы в выходной каталог проекта, а будут скопированы только файлы <FileName>.winmd, <FileName>.dll и <FileName>.pri. При этом в журнал будет занесена ошибка сборки, указывающая пользователю на отсутствующие ресурсы <XamlName>.xaml и <ImageName>.jpg. Чтобы сборка прошла успешно, пользователь должен вручную скопировать эти файлы ресурсов в выходную папку проекта для сборки и отладки (выполнения). Для решения этой проблемы создайте пакет SDK расширения, следуя инструкциям в статье Создание средств разработки программного обеспечения, или измените файл проекта, добавив в него следующее свойство:
При добавлении этого свойства сборка может выполняться медленнее.
Последние
Элементы Сборки, COM, Windows и Обзор поддерживают вкладку Последние, содержащую список компонентов, которые были недавно добавлены в проекты.
Поиск
Панель поиска в диалоговом окне "Диспетчер ссылок" работает с текущей активной вкладкой. Например, если пользователь вводит в области поиска запрос "System", когда открыта вкладка Решение, поиск не вернет результаты, если решение не содержит проекта, в имени которого есть слово "System".
добавьте ссылку на него в свой проект и предложение using в верхней части CS-файла, где вы хотите его использовать.
- в Visual Studio щелкните проект и добавьте ссылку.
- перейдите на вкладку "Обзор" и найдите DLL вы хотите добавить ссылку.
Примечание: видимо, с помощью кнопки Обзор является дурным тоном, если библиотека DLL, которую вы хотите использовать в одном проекте. Вместо этого щелкните правой кнопкой мыши проект и выберите команду добавить Ссылка, затем выберите соответствующий класс на вкладке Проект: - нажмите OK.
добавление предложения using:
добавьте "using [namespace];" в файл CS, где вы хотите ссылаться на свою библиотеку. Итак, если библиотека, на которую вы хотите ссылаться, имеет пространство имен MyLibrary, добавьте в файл CS следующее:
в окне Обозреватель решений щелкните правой кнопкой мыши проект, из которого вы хотите использовать библиотеку классов, и выберите пункт меню "Добавить ссылку". Затем, если библиотека классов находится в том же файле решения, перейдите на вкладку Проекты и выберите ее; если она не находится на той же вкладке, вы можете перейти на вкладку Обзор и найти ее таким образом.
тогда вы можете использовать что угодно в этой сборке.
Я не уверен, почему все утверждают, что вам понадобится using заявление в верхней части файла, так как это совершенно лишнее.
щелкните правой кнопкой мыши папку " ссылки "в вашем проекте и выберите"Добавить ссылку". Если ваша новая библиотека классов является проектом в том же решении, выберите вкладку "проект" и выберите проект. Если новая библиотека не находится в том же решении, перейдите на вкладку "Обзор" и найдите.dll файлы для вашего нового проекта.
добавить его в качестве ссылки.
ссылки > добавить ссылку > Поиск библиотеки DLL.
затем вам нужно будет добавить оператор using в верхнюю часть кода.
здесь - хорошая статья о создании и добавлении библиотеки классов. Даже показывает, как создавать методы с помощью мастера методов и как использовать его в приложении
вы должны добавить ссылку на библиотеку классов из проекта. Щелкните правой кнопкой мыши папку references и выберите Добавить ссылку. Вы можете либо найти DLL, либо, если ваш класс libaray является проектом в вашем решении, вы можете добавить ссылку на проект.
- добавить ссылку на библиотеку
- импортировать пространство имен
- потребляйте типы в своей библиотеке
есть необходимые шаги, которые отсутствуют в приведенных выше ответах, чтобы работать для всех уровней разработчиков:
щелкните правой кнопкой мыши на Project-->Add--> New Project-->нажмите на библиотеку классов. Теперь библиотека классов ur создается как class1.цезий Щелкните правой кнопкой мыши по ссылкам (вашей программы/приложения consol)--> AddReference-->classLibrary1(независимо от имени) Теперь упомяните "использование ClassLibrary1" в вашей программе/consoleApp
Читайте также: