Справочник по C#

    Исходники по языку программирования CSharp

    Создание библиотеки динамической компоновки Dll: Справочник по C#

    /
    /
    /
    127 Views


          Иногда при запуске какой-либо программы появляется сообщение, что не найден файл *.dll. Для операционных систем Microsoft Windows, большая часть функциональных возможностей операционной системы обеспечивается библиотеками динамической компоновки (DLL). Кроме того, некоторые возможности программ могут быть реализованы в библиотеках DLL. Например некоторые программы могут содержать много различных модулей и при работе использовать только часть из них. Таким образом операционная система и программы загружаются быстрее, работают быстрее и занимают меньше места на диске компьютера.
    Что такое DLL?
          DLL — это библиотека, содержащая код и данные, которые могут использоваться несколько программами одновременно. Например, в операционных системах Windows, библиотека Comdlg32.dll выполняет общие функции, связанные с диалоговыми окнами. Таким образом каждая программа может использовать функцию, которая содержится в этой библиотеке для реализации диалогового окна Открыть . Это позволяет повысить уровень повторного использования кода и эффективного использования памяти.
          С помощью библиотек можно реализовать модульность для программы, в виде отдельных компонентов. Например бухгалтерскую программу можно продать по модулям. Каждый модуль может быть загружен в основной программе во время выполнения установки. Отдельные модули загружается только при запросе функций заложенных в них, поэтому загрузка программы выполняется быстрее.
          Кроме того обновления легче применить для каждого модуля, не влияя на другие части программы. Например имеется программа по зарплате и надо изменить налоговые ставки за каждый год. Когда эти изменения изолированы в библиотеке, можно применить обновления без необходимости построения или установки программы целиком. Давайте рассмотрим пример создания библиотеки с самыми простыми математическими методами, такие как произведение, деление, сумма и разность.
          Для начала, создадим новый проект, для этого запустите Microsoft Visual Studio и перейдите в меню Файл -> Создать -> Проект… или выполните сочетание клавиш Ctrl+Shift+N.

          В открывшемся диалоговом окне выберете версию Framework, а в левой части «Установленные шаблоны» выберете «Visual C#», в центральной части вам будет представлен список шаблонов, выберете «Библиотека классов» и введите имя библиотеки, можно оставить по умолчанию.

    У вас откроется вкладка с классом по умолчанию.

           По умолчанию создается класс Class1, переименуем его в класс Calculator. Для этого перейдите в меню Вид – > Классы или выполните сочетание клавиш Ctrl + W, с последующем нажатием клавиши C.

    В правой части программы у вас откроется вкладка «Окно классов».

          Выберете по умолчанию созданный класс Class1, сделайте клик правой клавишей мыши по нему и выберете «Переименовать…».

          В открывшемся окне введите новое имя класса Calculator и нажмите кнопку OK, обратите внимание, что данное окно позволяет переименовать класс во всем проекте.

          После нажатия клавиши OK, вам будет предложено просмотреть список изменений, которые будут внесены в проект, а так же просмотр изменений кода.

    Добавим в класс Calculator несколько методов и добавим к ним описание.

    namespace ClassLibrary1
    {
    /// 
    /// Математический класс
    /// 
    public class Calculator
    {
    /// 
    /// Метод возвращает сумму двух целых чисел
    /// 
    /// /// /// 
    public static int Summ(int firstNumber, int secondNumber)
    {
    return firstNumber + secondNumber;
    }
    /// 
    /// Метод возвращает разность двух целых чисел
    /// 
    /// /// /// 
    public static int Division(int firstNumber, int secondNumber)
    {
    return firstNumber - secondNumber;
    }
    /// 
    /// Метод возвращает произведение двух чисел
    /// 
    /// /// /// 
    public static long Multiply(long x, long y)
    {
    return (x * y);
    }
    /// 
    /// Метод возвращает деление двух чисел
    /// 
    /// /// /// 
    public static int Residual(int firstNumber, int secondNumber)
    {
    return (firstNumber / secondNumber);
    }
    }
    }

          По умолчанию для всех проектов стоит режим построения Debug(режим отладки), переведем проект в режим построения конечной версии (Release). Для этого перейдите в обозреватель решений и сделав клик правой клавишей мыши по названию проекта, выберете в открывшемся контекстном меню пункт «Свойства».

          В открывшемся окне «Страницы свойств Решение “ClassLibrary1”» выберете везде конфигурацию Release, как показано на скриншоте ниже.

          Наверно все замечали, что при наборе кода, появляется подсказка к методам или функциям. Мы задали такую подсказку в тегах. Но если сейчас просто выполнить построение библиотеки, то при подключении к другим проектам никаких подсказок видно не будет. Что бы устранить данную проблему, нам необходимо сформировать XML файл документации к проекту. Для этого в обозревателе решений выполните клик правой клавишей мыши по названию библиотеки и в открывшемся контекстном меню выберете пункт «Свойства».

          После этих действий у вас откроется новая вкладка со свойствами проекта ClassLibrary1. Выберете в вкладку «Построение» и найдите раздел «Вывод», там вам будет предложено ввести путь куда будет выполнено построение конечной версии библиотеки и пункт необходимый нам для построения xml файла документации, тут вам необходимо просто поставить галочку как показано на скриншоте ниже. Тут важно чтобы библиотека и файл документации находились в одном месте, поэтому проверьте чтобы их путь вывода совпадал.

          Остались последние шаги и мы получим готовую для использования библиотеку. И так продолжим, вам необходимо в верхней части программы выбрать режим конфигурации Release как показано на скриншоте ниже.

    После этого, выполним построение решения. Нажав на клавиатуре клавишу F6.

          Как только программа закончит построение, можно перейти в директорию с проектом и посмотреть что получилось. На этом этапе закончилось создание библиотеки.

    Для проверки работоспособности библиотеки создадим тестовый проект. Выполните Файл -> Создать -> Проект…

    Выберете из предложенных шаблонов, шаблон «Приложение Windows Forms Visual C#». Задайте имя проекта и нажмите кнопку OK.

          После создания проекта, в обозревателе решений сделайте клик правой клавишей мыши по разделу «Ссылки» и выберете в появившемся контекстном меню пункт «Добавить ссылку…».

    Выберете вкладку «Обзор» и укажите вашу библиотеку.

    Если вы все успешно выполнили, в разделе «Ссылки» у вас появится название вашей библиотеки.

          Сделайте клик правой клавишей мыши по главной форме вашего проекта и в открывшемся контекстном меню выберете пункт «Свойства».

    В боковой панели откроются «Свойства» формы. Найдите метод Load и сделайте двойной клик левой клавишей мыши по нему, у вас откроется новая вкладка с добавленным методом Form1_Load.

    Добавим пространство имен с названием нашей библиотеки.

    using ClassLibrary1;

          Пропишите вызов нескольких методов из библиотеки и вывод результата в диалоговом окне «MessageBox». Обратите внимание что при выборе методом из библиотеки у вас показывается подсказка которую мы прописывали. Если такого не происходит то, xml файл документации отсутствует в директории с библиотекой. Пример подсказок вы можете посмотреть на скриншоте ниже.

          Запустите проект, нажав клавишу F5. И вы увидите результат выполнения методов прописанных в библиотеке, с параметрами которые вы передали при вызове.

    Ссылка для скачивания примера библиотеки: Яндекс.Диск

    Ссылка для скачивания примера: Яндекс.Диск

    Создание библиотеки динамической компоновки Dll: Справочник по C#

    0.00 (0%) 0 votes

    moyadcode13
    • Facebook
    • Twitter
    • Google+
    • Linkedin
    • Pinterest
    moyadcode10
    moyadcode11
    moyadcode9