Как папку сделать dll


  • Вероятно вам приходилось видеть, что некоторые DLL-файлы содержат множество значков. Например, shell32.dll, imageres.dll и другие. Мы также можем создать такую библиотеку значков, которая будет храниться в DLL-файле. Также я покажу, как можно извлечь значки и вывести их на форме.

    Шаг первый. Запустите Visual Studio 2010 и создайте новый проект Class Library. Для удобства я присвоил проекту имя IconLibrary.

    Далее выбираем в меню File | New | File и в диалоговом окне выбираем пункт Native Resource Template и щелкаем на кнопке Open.

    В результате будет создан файл ResTempl1.rct. Щелкните правой кнопкой на файле в Visual Studio и выберите команду как папку сделать dll Add Resource....

    В диалоговом окне Add Resource выберите элемент Icon и щелкните кнопку Import.... Вам необходимо указать значки, которые вы хотите импортировать. Рекомендую сложить все необходимые значки в одну папку и затем их выбрать сразу все (поддерживается множественный выбор). Когда вы щелкните кнопку Open, все значки будут импортированы под именами IDI_ICON1, IDI_ICON1 и т.д.

    Снова выбираем команду Add Resource... и выбираем элемент Version и щелкаем на кнопке New. Будет создана заготовка для хранения информации о версии файла. Добавьте свою информацию о версии файла, названии продукта, торговой марке и т.д.

    Далее необходимо сохранить файл ResTempl1.rct как res-файл (File | Save ResTempl1.rct as... и выберите расширение res).

    Вернитесь на вкладку Class1.cs и выберите Project | IconLibrary Properties.... Установите переключатель Resource File и укажите путь к созданному ранее файлу ресурсов с расширением RES.

    Далее выбираем Build | Build IconLibrary. В результате у нас образуется файл динамической библиотеки IconLibrary.dll.

    Чтобы убедиться в том, что у нас появился полноценный DLL-файл со значками, выберите ярылк любого папку exe-файла, например, Notepad.exe и в свойствах ярлыка выберите кнопку Сменить значок. В диалоговом окне Смена значка через кнопку Обзор укажите путь к вашей библиотеке и вы увидите все значки, которые хранятся в вашем файле. Поздравляю, вы создали свою библиотеку значков.

    Существуют несколько вариантов использования DLL-файла со значками в собственных целях. Например, вы создали собственное расширение для своего приложения и в реестре можете прописать путь к вашему файлу и указать порядковый номер значка (эта тема выходит за рамки данной статьи).

    Рассмотрим пример извлечения значка из Dll-файла и показа его на форме.

    Создадим обычное приложение Windows Form Application и разместим на форме кнопку. Далее воспользуемся системной функцией Windows API ExtractIcon:

    using System.Runtime.InteropServices; [DllImport("shell32.dll")] static extern IntPtr ExtractIcon(IntPtr hInst, string sFileName, int nIconIndex);

    Итак, мы объявили фукнцию и теперь можем извлечь любой значок. Не забываем, что отчет значков идет с 0. Предположим, мы хотим вывести второй значок из DLL-файла в верхней части формы:

    private void button1_Click(object sender, EventArgs e) { Graphics g = CreateGraphics(); IntPtr hIcon; hIcon = ExtractIcon(this.Handle, @"C:\Users\tehnolog\Projects\IconLibrary\IconLibrary.dll", 1); g.DrawIcon(Icon.FromHandle(hIcon), 10, 15); g.Dispose(); }

    Как видите, ничего сложного. Удачного вам программирования!

    При подготовке статьи использовались материалы с сайта

    Реклама



    Рекомендуем посмотреть ещё:


    Закрыть ... [X]

    Пошаговое руководство. Создание и использование библиотеки Бант из атласной ленточки своими руками

    Как папку сделать dll Как папку сделать dll Как папку сделать dll Как папку сделать dll Как папку сделать dll Как папку сделать dll

    Похожие новости