Как переделать файл в dll
Но как правильно установить dll-файлы на Winodws? В какую папку их поместить в зависимости от версии ОС и ее разрядности? Об этом и пойдет речь ниже.
Предлагаем вам познакомиться с простой инструкцией, где вы узнаете всю информацию о том, как установить и зарегистрировать файлы dll.
Чем открыть файл dll для редактирования
Вне зависимости от того, является понятие частью прикладной программы или входит в состав систем МС, распространённый вопрос — чем открыть файл dll для редактирования.
Стоит знать, что он реализует ряд программных функций. От соединения с внешними устройствами и работы с жестким диском до применения в кросс платформенных приложениях.
Примечание: Поэтому какие-либо изменения в его структуре могут привести к ошибкам операционной системы.
Но, если вы хотите познакомиться с исходным кодом, вам потребуется специальный редактор для системных ресурсов Resource Hacker (ResHacker). Он позволяет извлекать и изменять код на ваше усмотрение (Рисунок 2).
Рисунок 2. Интерфейс приложения Resource Hacker для открытия файлов формата .dll
Пошаговая инструкция
Итак, как открыть dll файл для изменения?
- Запустите ResHacker.
- Для чтения в исходном формате выберите в верхней панели File>Open.
- Слева будут показаны директивы с содержащимися в них открываемыми объектами.
- В центре утилиты содержатся коды, подлежащие изменениям и сохранению.
- Для компиляции воспользуйтесь кнопкой Compile Script.
- Для сохранения используйте команду File>Save.
Типичные ошибки регистрации
Открыть dll файл онлайн
Если вы имеете дело с веб-страницей, то вам понадобится открыть этот dll файл онлайн. Он содержит в себе скрипты сервера, отвечающие за генерирование HTML. К примеру, VB или Perl.
Как открыть dll файл windows 10
Если это элементы библиотеки, которые расположены в системной папке, то они предназначены для запуска приложений, созданных при помощи Visual C++.
Поэтому, чтобы их открыть на том же windows10 понадобится соответствующее ПО от МС — Visual Studio или VisualFoxPro (Рисунок 3).
Рисунок 3. Визуальный пример открытого файла формата .dll в приложении Visual Studio на Windows 10
Также «длл» должен открываться программой, использующей его библиотеку.
Алгоритм работы rundll32
В общих чертах, поскольку утилита представляет из себя некую обертку, алгоритм работы rundll32 можно описать следующим образом:
- Вызывается функция LoadLibrary, которая загружает выбранную DLL;
- Вызывается функция GetProcAddress, для получения адреса точки входа вызываемой из библиотеки функции;
- Вызывается сама функция и ей передаются входные параметры;
- Происходит выход из функции по завершению её работы;
- Библиотека DLL выгружается системой из памяти.
Как открыть файл dll на windows 8
Windows 8 уже является специализированным программным обеспечением для этого формата, поэтому задача с его открытием имеет очень простое решение. Если трудности и возникают — необходимо изменить ассоциацию файлов, установив и назначив одну из указанных ниже программ приложением по умолчанию.
- Microsoft Windows 8;
- Visual Studio;
- Visual FoxPro;
- Resource Hacker;
- Microsoft Windows NT 4.0;
- DLL-Files Fixer.
Правила создания функций
Очевидно, что в создаваемую нами пользовательскую библиотеку DLL нам необходимо поместить функцию со входными следующими параметрами. Пример описания процедуры на языке Ассемблера:
При создании экспортируемой функции (в примерах выше она имеет псевдо-имя EntryPoint) необходимо учитывать следующие моменты:
- Вместо строки «EntryPoint», желательно указать фактическое имя функции. Обратите внимание, что «точка входа», используемая программой rundll32, не зависит от функции DllEntryPoint, которая в 32-разрядных библиотеках DLL осуществляет обработку процессов и оповещение о подключении и отключении потоков. Это точка входа в саму функцию.
- Функцию, являющуюся точкой входа для программы rundll32, необходимо определить, используя соглашение о вызовах _stdcall (в C++ по умолчанию для атрибута _stdcall используется значение CALLBACK). Иначе, по умолчанию будет использоваться другое соглашение о вызовах _cdecl. Это приведет к аварийному завершению работы программы rundll32 после вызова данной функции.
Функции, являющейся точкой входа, передаются следующие параметры:
Параметр | Описание |
hWnd | Идентификатор (дескриптор) родительского окна, который обычно используется при создании окон в функциях загружаемой библиотеки DLL. |
hInstance | Дескриптор (заголовок экземпляра) выбранной библиотеки DLL. Иначе, стартовый адрес процесса DLL в адресном пространстве. |
lpCmdLine | Командная строка, передаваемая библиотеке. Данная строка представляет собой последовательность символов, завершающуюся символом с кодом 0. |
nCmdShow | Режим отображения окон выбранной библиотеки. (данные, передаваемые функции CreateProcess). |
Как открыть файл dll в windows 7
Вы можете встретить распространённый тип документа mfc42u.dll, который относится к Microsoft Foundation Class (MFC).
Примечание: Он отвечает за запуск рабочих дополнений на вашем ПК.
Открыть этот файл dll и подобные ему в windows 7 можно теми же утилитами, что используются для 8 версии, или воспользоваться небольшим редактором исполняемых элементов — Resource Tuner (Рисунок 4).
Рисунок 4. Интерфейс приложения Resource Tuner с открытым файлом формата .dll
Он позволяет изменять различные детали пользовательского интерфейса — строки меню и диалоговых окон, внешний вид курсора, иконок и так далее. В нём ресурсы библиотеки отделены от кода, который остаётся неизменным. Для его редактирования есть используемые в программировании профессиональные редакторы PE Explorer и FlexHex, (в зависимости от вносимых правок).
Resource Tuner предусматривает несколько способов открытия объекта.
- Для просмотра и изменения кликните Open File на панели инструментов.
- Для выполнения действия в меню — введите команду File>Open.
- Или используйте комбинацию клавиш CTRL+O.
Всплывающее окно возле кнопки тулбара предоставит вам список последних открывавшихся элементов. Его можно получить командой File>Recent Files из меню программы, которая пользуется динамически подключаемой библиотекой. Настройка количества данных в списке осуществляется в окне диалога Customize.
Варианты установки
Установить библиотеку в систему можно различными способами. Есть специальные программы для выполнения данной операции, а также можно сделать это вручную. Проще говоря, в этой статье будет дан ответ на вопрос — «Куда кидать dll файлы?» после их скачивания. Рассмотрим каждый вариант по отдельности.
Способ 1: DLL Suite
DLL Suite — это программа, которая может сама отыскать нужный вам файл в интернете и установить его в систему.
Для этого потребуется выполнить следующие действия:
- Выбрать в меню программы пункт «Загрузить DLL».
- Ввести в строку поиска имя нужного файла и нажать на кнопку «Поиск».
- В результатах поиска выбрать подходящий вариант.
В описании файла программа покажет вам путь, по которому обычно сохраняется данная библиотека.
Все, в случае успешной загрузки, программа обозначит загруженный файл зеленой отметкой.
Для установки библиотеки здесь нужно произвести следующие действия:
- Ввести имя искомого файла.
- Нажать на кнопку «Выполните поиск DLL файла».
Все, ваша DLL библиотека скопирована в систему.
В случае, если нужно скопировать файл не в папку по умолчанию, вы нажимаете на кнопку «Выберите версию» и попадаете в окно параметров установки для продвинутого пользователя. Здесь вы производите следующие действия:
- Задаете путь, по которому будет выполнена установка.
- Нажимаете на кнопку «Установить сейчас».
Программа скопирует файл в указанную папку.
Открытие dll файл на linux
Чтобы получить доступ к ним на Linux, понадобится эмулятор Windows – Wine. Он подражает поведению различных версий этой операционной системы.
Утилита поддерживает её исполняемые данные, поэтому проблем с открытием имеющихся файлов ни в одном из дистрибутивов быть не должно. Она эмулирует библиотеки Windows, создавая их альтернативные варианты, которые не требуют лицензии Microsoft, обеспечивая тем самым независимость вашего ПО.
Настроить работу Wine можно при помощи вкладки Default Settings — установок по умолчанию. Так он будет автоматически запускать приложения в выбранной вами ОС.
Иногда простого помещения файлов в папку оказывается недостаточным. Их ещё нужно зарегистрировать в системе. Сделать это можно несколькими способами, но суть их одинакова.
Через окно «Выполнить»
Знаете, как вызывается данное окошко? Если нет, то необходимо зажать на клавиатуре Win + R.
В него следует вписать команду regsvr32.exe вместе с названием скачанного файла, то есть тем, которое вы запоминали на первом шаге предыдущей инструкции.
Итог должен получиться примерно таким, как на картинке.
Не получилось? Попробуйте указать полный путь к файлу — вместе с расположением в папке, куда вы его забросили. Не забудьте подтвердить действие кнопкой «ОК».
С помощью командной строки
Альтернативный вариант — выполнить то же самое, только в командной строке:
- Запустите её от имени администратора через меню правой клавиши мыши;
- Впишите ту же команду и адрес к файлу полностью;
- Нажмите Enter.
Вместо этого вам в очередной раз указано на ошибку? У меня найдётся ответ и на это.
Программа для открытия dll файлов
Для отображения в родной среде можно использовать обычный блокнот. Но в таком случае возникнет трудность с не читаемыми символами. Чтобы её не было, необходима специальная программа для открытия dll файлов. К примеру, бесплатный декомпилятор dotPeek.
- Запустите софт.
- Нажмите «файл»/«открыть».
- Найдите нужный элемент для декомпиляции.
- Вы можете его просто просмотреть, не нарушая целостности системы.
32-битные и 64-битные версии программы
В 64-битных версиях ОС семейства Windows присутствуют 2 варианта программы rundll32.exe:
- 64-битная версия, расположенная в %SystemRoot%\System32\;
- 32-битная версия, расположенная в %SystemRoot%\SysWOW64\.
В 64-битной ОС, для загрузки 64-битной библиотеки DLL может быть использована 64-битная версия rundll32.exe, находящаяся в директории %SystemRoot%\System32\. Напротив, 32-битные программы в 64-битной ОС, обращающиеся к %SystemRoot%\System32\, в целях обеспечения совместимости будут перенаправлены в %SystemRoot%\SysWOW64\ и, соответственно, будут использовать уже 32-битную версию rundll32.exe.
DLL-библиотеки – это одна из разновидностей исполняемого файла, который может многократно использоваться каким-либо приложением или компонентом Windows. Благодаря этому происходит экономия дискового пространства, так как для каждого приложения не нужен отдельный файл с одинаковыми параметрами. Иногда у пользователя может возникнуть необходимость просмотреть содержимое DLL-файла или даже отредактировать его.
Как открыть DLL-файл для редактирования
DLL-файл ничем не отличается от любого другого файла с кодом, следовательно, может быть открыт с помощью специальных программ для просмотра или редактирования, в том числе и с помощью встроенного в Windows Блокнота. Однако мы бы рекомендовали вам использовать для редактирования более профессиональные программы, которые поддерживают подсветку синтаксиса кода и автоматическое исправление.
Редактируя DLL-файл не забывайте, что любое неверное изменение может привести к потери работоспособности некоторых программ, а иногда и все операционной системы. Действуйте на свой страх и риск. Далее рассмотрим несколько программ, с помощью которых можно выполнить редактирование DLL-файлов.
Программа 1: Блокнот
Самый примитивный вариант. Блокнот встроен по умолчанию во все операционные системы Windows. С его помощью можно открывать и редактировать практически любые файлы. К сожалению, функциональность здесь оставляет желать лучшего: нет подсветки, выделения ошибок, автоматического исправления и многих других интересных функций. Мы бы рекомендовали использовать его только для просмотра содержимого DLL-файла или внесения мелких корректировок.
Инструкция по редактированию DLL-файла с помощью программы Блокнот выглядит следующим образом:
- Перейдите в директорию, где находится нужный вам DLL-файл. Кликните по нему правой кнопкой мыши.
- Из контекстного меню выберите «Открыть с помощью». По умолчанию операционная система сама предложит вам открыть данный файл с помощью Блокнота. Выберите этот вариант.
После сохранения обязательно проверьте работоспособность файла.
Программа 2: Sublime Text 3
Sublime Text 3 создавался в первую очередь для веб-разработчиков и смежных профессий, поэтому в DLL-файлах подсветки синтаксиса и автоматического исправления ошибок может не быть. Единственным удобством останется нумерация строк, благодаря чему будет удобно ориентироваться в документе.
Инструкция по открытию и обработке файлов в редакторе Sublime Text 3 выглядит следующим образом:
-
Откройте программу. В верхнем меню воспользуйтесь кнопкой «File» и выберите из выпавшего списка вариант «Open File» или просто используйте сочетание клавиш Ctrl+O.
Программа 3: Hex Workshop
Более профессиональное ПО, предназначенное именно для работы с исполнительными файлами, в том числе и с расширением DLL. Подходит в основном очень продвинутым пользователям, так как отображает код файла по умолчанию в бинарном виде, но вы можете переключиться на другой вариант отображения. Плюс, в программе можно выполнить компиляцию полученного кода, чтобы сразу же проверить его на наличие ошибок.
Инструкция по работе с Hex Workshop выглядит следующим образом:
-
Запустите программу. Там, в верхнем меню, нужно воспользоваться иконкой в виде папки с зеленой стрелкой. Она отвечает за выбор файла для открытия. Аналогичные действия выполняет и комбинация клавиш Ctrl+O.
Программа 4: Resource Hacker
Это одна из самых популярных, удобных и продвинутых программа для редактирования содержимого исполняемых файлов. Здесь вы можете запускать их, изменять и снова запуска для отладки. В случае появления распространенных ошибок программа сама предложит варианты их решения. Ее преимущество над другими решениями заключается в грамотной структуризации и правильном отображении иерархии составляющих файла с отображением бинарного и привычного исходного кода.
Инструкция по работе с Resource Hacker для DLL-файлов выглядит следующим образом:
- Скачайте и установите программу к себе на компьютер. Запустите ее.
- Для открытия файла на компьютере воспользуйтесь иконкой в виде папки с зеленой стрелкой, что расположена в верхнем меню интерфейса программы.
- Если вам нужно просто сохранить изменения в том же DLL-файле, то воспользуйтесь сочетанием клавиш Ctrl+S или нажмите «File» и далее «Save».
- Если требуется перевести данный файл в другое расширение или создать просто другой DLL-файл на основе внесенных изменений, то в верхнем меню выберите пункт «Action» и там укажите, в каком виде вам нужно сохранить полученный файл.
Программа 5: Среда разработки Embarcadero RAD Studio
Данный вариант в большей степени следует рассматривать профессиональным программистам, так как Embarcadero RAD Studio это уже профессиональная среда разработки. Помимо встроенного редактора здесь есть множество полезных инструментов, но при этом и сама программа занимает места больше и потребляет ресурсов компьютера больше, чем представленные выше варианты.
Давайте рассмотрим, как работать с файлами DLL с помощью программы Embarcadero RAD Studio:
- Выполните запуск среды разработки. В верхнем меню кликните по кнопке «File». Из выпавшего списка выберите вариант «Open». В нашем случае мы открываем именно один файл. Если же у вас есть проект с несколькими файлами и папками, где присутствуют DLL-файлы, то выбирайте вариант «Open Project».
- В «Проводнике» Windows укажите файл, который вам нужно открыть. Если вы нажали просто «Open», то выделяйте один DLL-файл, если же открываете проект, то вам требуется выделить папку с проектом. Для подтверждения открытия нажмите кнопку «Открыть».
- В рабочей области программы появится иерархия всех составляющих файла. В случае с проектом она будет более обширной и содержать только файлы без иерархии. Справа отобразятся различные атрибуты, например, название элемента, место его хранения, вспомогательное описание и исходный код. Представленные элементы доступны для внесения в них изменений.
- Некоторые файлы сразу же открываются программой только в бинарном виде. Это зависит уже от настроек самого файла. При необходимости вы можете переключить вид с обычного кода на бинарный и наоборот.
- После внесения изменений не забудьте сохранить файл или проект. Для этого нажмите по кнопке в виде дискеты в верхнем меню или воспользуйтесь сочетанием клавиш Ctrl+S.
Мы рассмотрели 5 программ, с помощью которых вы можете не только открыть DLL-файл для просмотра, но и выполнить его редактирование. В последнем случае мы рекомендуем выбирать более профессиональное ПО, а также создать копии DLL-файлов, чтобы в случае неудачи вы смогли снова вернуться к работоспособному элементу.
В операционной системе Windows приложения и службы при запуске ищут DLL, необходимые для их правильного функционирования. Если эти DLL не найдены или их загрузка реализована небезопасным способом (DLL вызываются без использования полного пути), то можно повысить привилегии, заставив приложение загрузить и выполнить вредоносный DLL-файл.
Следует отметить, что когда приложению необходимо загрузить DLL, то ее поиск осуществляется в следующем порядке:
- Каталог, из которого загружается приложение
- C:\Windows\System32
- C:\Windows\System
- C:\Windows
- Текущий рабочий каталог
- Каталоги в пользовательской переменной окружения PATH
- Каталоги в системной переменной окружения PATH
Шаг 1 — Процессы с отсутствующими DLL
На первом этапе необходимо найти процессы, которые работают от SYSTEM и пытаются загрузить отсутствующие DLL. Это можно сделать с помощью Process Monitor от Sysinternals, применив фильтр, указанный ниже:
Фильтры Procmon для поиска процессов, загружающих отсутствующие DLL
Process Monitor определит отсутствующие DLL, которые приложение пытается загрузить, и покажет фактический путь, по которому осуществляется поиск этой DLL.
Процесс с отсутствующей DLL
В данном примере для процесса Bginfo.exe отсутствует несколько DLL-файлов, которые могут быть использованы для повышения привилегий.
Шаг 2 — Разрешения на папки
Если программное обеспечение установлено в каталог C:\ вместо C:\Program Files , то по умолчанию у аутентифицированных пользователей будет доступ на запись в этот каталог. Кроме того, такое программное обеспечение как Perl, Python, Ruby и т. п. обычно добавляется в переменную PATH. Это дает возможность повышения привилегий, так как пользователь может записать в данный каталог вредоносную DLL, которая будет загружена при следующем запуске процесса и получить права этого процесса.
Слабые разрешения на папку
Шаг 3 — Подмена DLL
С помощью Metasploit можно сгенерировать DLL с полезной нагрузкой в виде сеанса с привилегиями службы.
Генерация вредоносной DLL
Процесс Bginfo.exe запущен под SYSTEM, поэтому после перезапуска у вредоносной DLL будут такие же привилегии, так как DLL загружается и выполняется этим процессом.
Процесс запущен под SYSTEM
Как было указано выше, процесс не может найти Riched32.dll , поэтому pentestlab.dll необходимо переименовать в Riched32.dll . Это запутает приложение, и оно попытается загрузить DLL, поскольку думает, что это легитимная DLL. Вредоносную DLL необходимо поместить в одну из папок, в которых Windows ищет DLL-файлы.
Вредоносная DLL переименована и размещена
Как видно ниже, при перезапуске службы с помощью подмены DLL открывается сессия Meterpreter с привилегиями SYSTEM.
Metasploit – Эскалация привилегий через подмену DLL
PowerSploit
Процесс подмены DLL можно сделать через PowerSploit, в котором есть три модуля, которые помогут в поиске служб с отсутствующими DLL, в обнаружении папок с правами на модификацию и в генерации DLL.
Модуль Find-ProcessDLLHijack найдет все процессы в системе, которые пытаются загрузить отсутствующие DLL.
PowerSploit — Обнаружение процессов с отсутствующими DLL
Следующим шагом будет определение папок, в которых пользователь может изменять содержимое. Будут найдены папки, в которые необходимо подбросить вредоносные DLL.
Обнаружение папок с правами на изменение
Последний шаг заключается в создании зловредной DLL в одной из папок с Modify (M) — разрешениями.
Создаем DLL в папке со слабыми разрешениями
Заключение
Для возможности повышения привилегий через подмену DLL должны быть выполнены следующие условия:
Очень часто в своей работе, Вы будете сталкиваться с такой ситуацией.
Перед вами стоит задача, нужно написать программу " Супер Блокнот" которая должна сохранить все функции стандартного блокнота, но при этом иметь ряд каких-то дополнительных функций, благодаря которым, при выборе программы для работы с текстом, пользователь будет отдавать предпочтение именно вашей программе. Для этого было решено добавить несколько новых функций, одна из них, будет отвечать за подсчет и вывод количества слов в тексте.
Через пару недель программа была написана, затем она попала в Интернет, пользователи оценили новый продукт и стали им пользоваться. Цель достигнута.
Проходит время и перед вами ставят новую задачу, написать программу "Супер парсер". Одной из функции данной программы, будет подсчет слов в тексте. Вы понимаете, что снова придется разрабатывать метод, который будет вести подсчёт слов. Но, при этом вспоминаете, что совсем не давно уже разрабатывали программу, в которой применялась данная функция. Чтобы не изобретать велосипед, Вы открываете исходник программы "Супер блокнот"; и копируете весь метод в исходник новой программы "Супер парсер". Отлично, теперь Вам не придется тратить время на написание этого метода заново, и Вы можете посветить больше времени остальным элементам программы. Задача решена.
Но, что если метод по подсчету слов, писали не Вы, а допустим, какой-нибудь коллега по работе и по каким-то причинам, Вы не можете получить доступ к исходному коду программы "Супер блокнот". То есть первый вариант, копирование метода из исходника, не прокатит и данный метод придется писать самому ммм, печалька.
Но, тут вам звонит ваш коллега по работе и говорит: Ты знаешь, я тут вспомнил, когда я разрабатывал данный метод, я подумал, что возможно мне придется его использовать ещё где-то, и по этому я решил вынести его в отдельную сборку, в виде файла динамической библиотеки (dll).Ты просто скопируй этот файл dll в свой проект, и подключи его, как внешнюю сборку, после чего ты получишь доступ к моему методу и сможешь им пользоваться.
Отлично! Вы проделываете все описанные действия, в программе “Супер парсер” появляется нужный метод, задача решена и вам вновь не пришлось повторно писать код руками.
На этом присказка закончена и теперь переходим к более подробному изучению.
Что такое DLL
DLL (dynamic-link library) - это динамически подключаемая библиотека, или сокращено динамическая библиотека.
Как уже писал ранее, динамические библиотеки, позволяют повторно использовать ранее написанный код, а так же они обеспечивают лучшую переносимость кода. Достаточно, скинуть файл на флешку, или скачать dll файл из Интернета, после чего добавить его в текущий проект и тут же получить набор разных дополнительных функций для вашего приложения. Так же стоит знать, что в одном dll файле может храниться любое количество типов, членов и пространств имён.
Создание файла dll
Для начала выберем тип нового создаваемого приложения, а точнее проекта.
Выбираем Class Library, то есть создаем файл динамической библиотеки (dll)
Так же Вы можете указать, под какую версию Фреймворка будет создаваться данный проект.
После того, как Visual Studio создаст каркас проекта, Вы увидите следующее:
Так будет выглядеть окно Solution Explorer
А так будет выглядеть рабочая область, где Вы обычно пишите код программы
И так дано пространство имён: Car и класс: Class1. Class1 не удачное название, давайте немного изменим наш код, заменив Class1 на BMW, и добавим метод, который будет выводить имя нашего класса.
И так код написан, и теперь необходимо выполнить компиляцию, чтобы получить сборку.
Если сейчас попытаться нажать F5 или Ctrl+F5, то вы увидите данное окно
Данная ошибка, говорит лишь о том, что был создан файл динамической библиотеки (dll), а не исполняемый файл (exe), который не может быть запущен.
Для того, чтобы скомпилировать проект, нажмите клавишу F6, после чего в директории bin\Debug появиться файл Car.dll.
Чтобы проверить был ли создан файл библиотеки, воспользуйтесь кнопкой Show All Files на вкладке Solution Explorer
Сборка, в виде файла динамической библиотеки успешно создана.
Теперь перейдем в папку bin\Debug, для того, чтобы быстро переместиться в текущую директорию проекта, в том же Solution Explorer воспользуйтесь пунктом Open Folder in Windows Explorer
Скопируйте полученный файл сборки (в нашем случае - это файл Car.dll) в какую-нибудь временную папку. На самом деле, это делать необязательно, Вы можете оставить данный файл в этой папке, но для удобства, создадим новую папку, и поместим туда созданный файл библиотеки.
Создаем новый проект.
Новый проект создан. Теперь подключим в текущий проект, нашу библиотеку (Car.dll)
Подключение dll
Для этого на папке References, в окне Solution Explorer нужно нажать правую кнопку мыши и выбрать пункт Add Reference, откроется вот такое окно:
- Выберите вкладку Browse
- Укажите папку, в которой лежит файл созданной библиотеки (в нашем примере - Car.dll)
- Выделите файл нужной библиотеки и нажмите кнопку ОК;
На ней видно, что в наш текущий проект была успешна, добавлена ссылка на нашу сборку Car.dll, в которой храниться наш код на языке IL. Надеюсь, Вы помните, что после компиляции весь написанный вами код преобразуется в промежуточный код на языке IL (CIL, MSIL - это одно и тоже). А так же видно, что в папку bin\Debug была помещёна копия нашей библиотеки.
Если вдруг Вы забыли, какое пространство имен, типы, или члены содержит ваша созданная библиотека. Вы всегда можете воспользоваться таким инструментом Visual Studio, как Object Browser. Для этого перейдите на вкладку Solution Explorer, откройте папку References, и просто щёлкните правой кнопкой мыши по добавленной ранее библиотеке, в нашем случае напоминаю - это файл (Car.dll) и выберите пункт View in Object Browser, появиться вот такое окно.
В окне Object Browser можно посмотреть содержимое нашей сборки.
Сборка подключена и теперь Вы можете работать с её содержимым. Далее выполним необязательный пункт.
Добавим, с помощью ключевого слова using пространство имен Car из созданной нами библиотеки Car.dll, после чего создадим объект класса BMW и выполним метод Вывести_Имя_Класса().
- Создаем файл динамической библиотеки (dll)
- Подключаем созданную библиотеку в наш проект, путем добавления в папку References ссылки на наш файл dll.
- (Необязательный пункт) Подключаем пространство имен из подключенной сборки, с помощью ключевого слова using, либо используем полное наименование, то есть Пространство имён.Тип (Car.BMW).
- Profit
И в конце не много информации о типах сборок:
Сборки бывают следующих основных видов: общие и частные.
Частная сборка (private assembly)
Это файлы библиотек, как наш ранее созданный файл Car.dll, которые содержаться на протяжении всего времени в каталоге текущего приложения или любом из его подкаталогов.
Вернёмся к началу статьи.
После того, как было создано приложение “Супер парсер”, мы получили сборку в виде файла (exe). Затем мы решили протестировать нашу программу и отдаём её нашему другу, при этом Вы так же упоминаете, что если он хочет иметь дополнительные функции в программе, то ему нужно просто рядом с его exe файлом поместить файл библиотеки Car.dll. После чего он получит возможность подсчёта слов в тексте. То есть библиотека будет храниться в той же директории, что и исполняемый файл.
Общие сборки (shared assembly)
Это сборки, предназначенные для множественного использования разными приложениями, установленными на одном компьютере.
Читайте также: