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

Как из visual studio сделать exe

  • автор:

#10 – Создание Exe файла. Завершение

#10 – Создание Exe файла. Завершение

Для отправки вашего приложения друзьям или знакомым вам в первую очередь нужно создать EXE файл проекта. Его создание не столь сложный процесс. В уроке мы подведем итоги курса и создадим EXE файл.

Видеоурок

В ходе курса мы с вами изучили построение простых приложений с использованием языка C# и платформы WPF. Платформа состоит из сотен классов, функций и различных объектов. Изучить их все – очень сложно, а главное не нужно.

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

Программа обучения

Если вас интересует более углубленное изучение самого языка и его фреймворков, то предлагаем вашему внимаю наш полный курс по изучению C# . За курс вы изучите язык C#, научитесь делать веб проекты на основе ASP NET и строить приложения при помощи WinForms и WPF.

Большое задание по курсу

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

Руководство. Создание приложения

Область применения:yesVisual Studio Visual Studio для Mac noVisual Studio Code no

В этой статье описываются некоторые параметры, которые можно настроить при создании приложений с помощью Visual Studio. Вы создадите настраиваемую конфигурацию сборки, скроете определенные предупреждения и расширите выходные данные сборки для примера приложения.

Установите пример приложения

Пример кода, используемый в этом руководстве, приведен в примерах WPF. Чтобы клонировать репозиторий, нажмите зеленую кнопку клонирования GitHub и выберите «Клонировать» в Visual Studio. Вы можете выбрать расположение на локальном жестком диске, чтобы создать копию содержимого репозитория. Репозиторий содержит множество решений. Если Visual Studio открывает одно из решений, закройте решение, а затем выберите «Открыть проект или решение» и перейдите к расположению, в котором клонировали репозиторий, и в этом разделе найдите метод GettingStarted/WalkthroughFirstWPFApp/csharp/ExpenseItIntro.sln , чтобы работать в C#, или GettingStarted/WalkthroughFirstWPFApp/vb/ExpenseItIntro2.sln для работы в Visual Basic.

Создание настраиваемой конфигурации сборки

При создании решения конфигурации сборки отладки и выпуска и их целевых объектов платформ по умолчанию определяются для решения автоматически. Затем вы можете настроить эти конфигурации или создать собственные. Конфигурации указывают тип сборки. Целевые платформы указывают операционную систему, на которое ориентировано приложение для этой конфигурации. Дополнительные сведения см. в разделе «Общие сведения о конфигурациях сборки», «Настройка проектов для целевых платформ» и «Практическое руководство. Настройка конфигураций отладки и выпуска».

Конфигурации и параметры платформы можно изменять или создавать с помощью диалогового окна Диспетчер конфигураций. В этой процедуре вы создадите конфигурацию сборки для тестирования.

Создание конфигурации сборки

  1. Откройте диалоговое окно Диспетчер конфигураций. Screenshot of the Build menu, Configuration Manager command.
  2. В списке Активная конфигурация решения выберите . Screenshot showing creating a new solution configuration.
  3. В диалоговом окне Создание конфигурации решения введите для новой конфигурации имя Test , скопируйте параметры из существующей конфигурации Отладка и нажмите кнопку ОК. Screenshot of the New Solution Configuration Dialog Box.
  4. В списке Активная платформа решения выберите .
  5. В диалоговом окне Создание платформы решения выберите x64 и не копируйте параметры из платформы x86. Screenshot of New solution platform dialog box.
  6. Нажмите кнопку ОК. Активная конфигурация решения была изменена на Тест, а для активной платформы решения задано значение x64. Screenshot of Configuration Manager with Test configuration.
  7. Выберите Закрыть.

Активную конфигурацию решения можно быстро проверить или изменить с помощью списка Конфигурации решения на панели инструментов Стандартная.

Screenshot of Solution Configurations dropdown list on the Standard toolbar.

  1. Откройте диалоговое окно Диспетчер конфигураций. Screenshot of the Build menu Configuration Manager command.
  2. В списке Активная конфигурация решения выберите . Screenshot showing creating a new solution configuration.
  3. В диалоговом окне Создание конфигурации решения введите для новой конфигурации имя Test , скопируйте параметры из существующей конфигурации Отладка и нажмите кнопку ОК. Screenshot showing creating a Test configuration in the New Solution Configuration dialog box.
  4. В столбце «Платформа» разверните раскрывающийся список и выберите «Создать»,> чтобы создать новую платформу проекта. Screenshot showing creating a new project platform in the Configuration Manager.
  5. В диалоговом окне «Новая платформа проекта» выберите x64 и не копируйте параметры из платформы x86. Screenshot of New solution platform dialog box.Если платформа решения x64 уже существует, не проверка поле «Создание активной платформы решения».
  6. Нажмите кнопку ОК. Активная конфигурация решения была изменена на Тест, а для активной платформы решения задано значение x64. Screenshot of Configuration Manager with Test configuration.
  7. Выберите Закрыть.

Активную конфигурацию решения можно быстро проверить или изменить с помощью списка Конфигурации решения на панели инструментов Стандартная.

Screenshot of Solution Configurations dropdown list on the Standard toolbar.

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

Сборка приложения

Далее вам предстоит создать решение с помощью настраиваемой конфигурации сборки.

Выполните сборку решения.

  • В строке меню последовательно выберите Сборка>Собрать решение (или нажмите CTRL+SHIFT+B). Окно Вывод отображает результат сборки. Сборка успешно завершена.

Скрытие предупреждений компилятора

Далее мы добавим код, который приводит к созданию предупреждения компилятором.

  1. В проекте C# откройте файл ExpenseReportPage.xaml.cs. В методе ExpenseReportPage добавьте следующий код: int i; . ИЛИ В проекте Visual Basic откройте файл ExpenseReportPage.xaml.vb. В пользовательском конструкторе Public Sub New. добавьте следующий код: Dim i .
  2. Постройте решение.

Окно Вывод отображает результат сборки. Сборка была выполнена успешно, но были созданы предупреждения:

Screenshot of build warning in Output Window for Visual Basic.

Screenshot of build warning in Output Window for C#.

Screenshot of build warnings in Output window for C#.

Screenshot of build warnings in Output window for Visual Basic.

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

Скрытие определенного предупреждения C#

  1. В обозревателе решений выберите узел проекта верхнего уровня.
  2. В строке меню выберите Вид>Страницы свойств. Открывается Конструктор проектов.
  3. Выберите вкладку «Сборка » или раздел, а затем в поле «Отключить предупреждения» укажите номер предупреждения 0168. Если другие предупреждения уже перечислены, используйте точку с запятой в качестве разделителя.

Screenshot of Build page, Project Designer.

Screenshot of Build section in Project Properties.

Screenshot of Output Window for C# with no build warnings

Screenshot of Output window for C# with no build warnings

Отключение всех предупреждений сборки в Visual Basic

  1. В обозревателе решений выберите узел проекта верхнего уровня.
  2. В строке меню выберите Вид>Страницы свойств. Открывается Конструктор проектов.
  3. На странице Компиляция установите флажок Выключить все предупреждения.

Compile page, Project Designer.

Screenshot of disabling warnings in the Compile tab of the Project Designer.

Screenshot of Output Window for Visual Basic with no build warnings.

Screenshot of Output window for Visual Basic with no build warnings.

Отображение дополнительных сведений о сборке в окне вывода

Вы можете изменить объем информации, отображаемый о процессе сборки в окне Вывод. В общем случае задан минимальный уровень детализации сборки, при котором в окне Вывод отображается только сводка по процессу сборки вместе с высокоприоритетными предупреждениями или ошибками. Чтобы отобразить дополнительные сведения о сборке, см. раздел Диалоговое окно «Параметры», «Проекты и решения», «Сборка и запуск».

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

Изменение объема сведений в окне вывода

  1. Откройте диалоговое окно Параметры.

Screenshot of Options command on the Tools menu.

Screenshot of Tools, Options menu item.

Совет В окне Вывод можно искать содержимое, отобразив диалоговое окно Найти нажатием клавиш CTRL+F.

Создание сборки выпуска

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

Указание сборки выпуска для Visual Basic

  1. Чтобы открыть конструктор проектов, выберите узел проекта в Обозреватель решений, щелкнув правой кнопкой мыши и выбрав «Свойства» (или нажмите клавиши ALT +ВВОД) или в меню «Вид«, выберите страницы свойств:

Screenshot of View, Property Pages menu item.

Screenshot of View, Property Pages menu item.

Важно! Может появиться окно с предупреждением о том, что указанная вами сетевая общая папка может быть ненадежна. Если вы доверяете указанному расположению, нажмите кнопку ОК в окне сообщения.

Build Solution command on the Build menu.

Screenshot of Build Solution command on the Build menu.

Указание сборки выпуска для C#

  1. Открывается Конструктор проектов.

Screenshot of View, Property Pages menu item.

Screenshot of View, Property Pages menu item.

Важно! Может появиться окно с предупреждением о том, что указанная вами сетевая общая папка может быть ненадежна. Если вы доверяете указанному расположению, нажмите кнопку ОК в окне сообщения.

Build Solution command on the Build menu.

Screenshot of Build Solution command on the Build menu.

Поздравляем! Вы успешно завершили работу с этим руководством.

См. также

  • Пошаговое руководство. Сборка проекта (C++)
  • Общие сведения о предварительной компиляции проектов веб-приложений ASP.NET
  • Пошаговое руководство. Использование MSBuild

Создание .exe установщика для UWP приложения

«Нoвый фopмaт пpилoжeний для мaгaзинa Windows pacпpocтpaняeтcя в ycтaнoвoчных фaйлaх .Appx и .AppxBundle и включaет в ceбя лишь caмy пpoгpaммy, eё имя и oпиcaниe. Эти пaкeты пoзвoляют paзpaбoтчикaм нe иcпoльзoвaть coбcтвeнный ycтaнoвщик для инcтaлляции, кaк этo былo c oбычными пpoгpaммaми.» — MIcrosoft.

В обход истории.

Если вам нужна инструкция как создать установщик, сразу листайте до “создание .exe установщика для UWP”

Звучит круто, не правда ли? Но что, если я хочу скинуть свою кривую, новорождённую, никому не нужную программу другу, не проходя все проверки от магазина Microsoft? Или же друг не знает как включить режим разработчика и установить твой сертификат. Тут уже возникают трудности и приходится идти обходными путями и сегодня я расскажу о самом интересном из них! Видите ли, при компиляции программы мы не получим exe’шник, который можно запустить и радоваться жизни. У UWP много таких приколов и ограничений, которые являются одновременно и сильными сторонами (в плане безопасности, кроссплатформенности), так и слабыми (например, нельзя хранить информацию своей программы, где попало на локальной машине). О всех минусах и плюсах данной технологии поговорим в другой раз, а пока я начну свой рассказ со своего знакомства с UWP.

Знакомство с UWP

Как-то раз, на 2 курсе университета у меня получилось отличиться, и преподаватель заметил меня, спустя несколько дней после первых его практических занятий он создал группу и пригласил туда меня.

— Добрый день, не хотите помочь с курсовой работой?

— Отлично! Нам нужно создать свой собственный мессенджер. Давайте начнём с выбора технологии.

На этом моменте кто-то предложил Windows Form (дабы не париться), WPF (для больших возможностей) и… всё. Про UWP ни слова. Я на тот момент жутко любил смотреть новости про обновления UWP и Windows. Меня поражало, как просто можно сделать красивое приложение с готовым дизайном. А плиточки… Ох, это была моя первая любовь в мире IT. Именно поэтому, я начал бить кулаком об грудь и жутко защищать данную технологию, продвигая её в массы. Преподаватель, поддержал меня и сказал следующую фразу: “Хорошо, давайте покажем, что такое новые технологии”. У нас возник вопрос с распространением приложения, ведь оно бы запускалось только на компьютерах с Windows 10, но и эта проблема была решена новым оборудованием в ВУЗе.

Месяц разработки спустя мессенджер был готов, и я успел возненавидеть UWP, ведь она могла кидать такие ошибки, что С++ и рядом не стоял. Как оказалось смотреть как кто-то пишет код и писать код самостоятельно, абсолютно разные вещи, из-за чего вся работа перешла на Олега (моего однокурсника), и он вывозил клиент мессенджера, практически сам. Но пришло время сдавать проект, а скомпилировать его в .exe и отправить на другой компьютер оказалось невозможной задачей.

Создание .exe установщика для UWP

У меня на руках был готовый код и всё что от меня требовалось, так это создать установщик, чтобы распространить приложение. Полазив по интернету, я понял 2 вещи:

  1. Microsoft любит деньги и приложения нужно загружать на их магазин со всякими комиссиями и аккаунтами разработчика.
  2. Есть корпоративный способ, но там нужно использовать PowerShell и лезть в настройки, чтобы активировать режим разработчика.

Казалось бы, 2 способ, то, что нужно, но это не установщик. Ты должен сам куда-то лезть и что-то включать. И вы, наверное, уже догадались, что мы должны всё автоматизировать. В этом нам поможет программа “Inno Setup Compiler”. С помощью неё мы создадим тот самый автоматизированный установщик UWP приложения. На этом моменте мой преподаватель объяснил, что новые технологии, это не обязательно хорошо, иногда со старой банально удобнее работать и никакие “фишки” не переманят программистов, если они неудобно реализованы. Таким образом, он специально разрешил нам использовать UWP, чтобы мы столкнулись с этим и поняли всё сами. Мы пропустили дедлайн из-за меня, но задача создать установщик поставлена и её нужно было решить.

Подготовка к созданию установщика

Закончив создание приложения, мы настраиваем package.appxmanifest под свои нужды, после чего правой кнопкой мыши нажимаем по проекту и выбираем publish → создать пакеты приложений. Здесь выбираем Загрузка неопубликованных приложений (и убираем галочку с автоматического обновления) → Да, использовать текущий сертификат → вводим версию, выбираем архитектуру и создаём. Теперь, заходим в папку с проектом и ищем там AppPackages → папка с названием приложения.

Перед нами предстало несколько файлов. Файл с расширением .msixbundle, это и есть тот самый новый установщик. Install.ps1 с Add-AppDevPackage.ps1 это сценарии Windows, который мы и будем использовать. Их можно было бы и так засунуть в наш установщик, но в коде данных сценариев есть специальные блоки, отвечающие за контекстное меню по типу: «Установить: Да? нет?». Естественно, нас это не устраивает, и мы избавляемся от них, примеры кода я скинул на GitHub. + мы добавляем пару строчек, которые включают неполноценный режим разработчика. Видите ли, раньше в настройках Windows было 3 режима, безопасный, установка UWP приложений из неизвестных источников и режим разработчика. Так вот, мы используем тот самый полу вырезанный режим полу разработчика, который теперь нигде не отображается.

Теперь пришло время для создания скрипта на InnoSetup. Я напишу самый простой скрипт, чтобы было легче понять. В блоке Run мы прописываем:

Filename: «powershell.exe»; Verb: runas; \

Parameters: «-ExecutionPolicy Bypass -File «»\Install.ps1″»»; \

WorkingDir: ; Flags: runhidden shellexec

(Verb: runas – запросить права администратора).

Таким образом у нас установился неполноценный режим разработчика и наш сертификат (исполняя инструкцию Windows используя PowerShell), а это значит, что мы удовлетворяем все потребности официального установщика Windows .msixbundle. Следом запустим модифицированную установку приложения, но пользователь не увидит интерфейс, ведь все блоки отвечающие за: «Установить, да? нет?» мы вырезали.

Parameters: «Add-AppxPackage «»\CLient_CS_UWP_0.5.1.0_x86_x64_Debug.msixbundle»»»; \

WorkingDir: ; Flags: runhidden

Полный пример кода опять же можно найти на GitHub.

После всех действий компилируем получившийся скрипт и получаем тот самый .exe установщик для UWP приложения.

В завершении

Хоть у UWP и есть много интересных особенностей, но я всё равно безумно люблю эту платформу. Она по-своему прекрасна и отвратительна в одном лице, что заставляет пережить целую палитру эмоций во время разработки. На ответ почему нет .exe у данных приложений есть 2 ответа. Первый ответ: Они используют безопасное расширение, все файлы хранятся в специальной закрытой папке, благодаря этому можно не беспокоиться о кроссплатформенности. Второй ответ: деньги. И можно было бы долго рассуждать на тему того, как сильно Microsoft любит деньги, но.. Мир меняется, и вот-вот, Microsoft Store станет бесплатен и доступен для всех, а это значит, что у UWP большое и светлое будущее.

Уроки C# / Как сделать EXE файл в Visual Studio

Иконка канала Творческие Моменты

Привет друзья! Как сделать EXE файл в Visual Studio? Как скомпилировать в исполняемый файл в EXE? Смотри ответ в видео! �� Где нас можно найти ► ✔ Вступай в группу ВК — https://vk.com/wiseplat ✔ Дополнительные уроки с домашними заданиями можно найти на сайте WISEPLAT: https://wiseplat.org/ ✅ Смотрите наши обучающие видеоуроки и выучите C# быстрее всех! 🙂 C# очень популярный язык программирования. #урокиcsharp #урокисишарп #csharp #программирование #дляначинающих — Уроки от #OlegShpagin ������ Ставь лайк, если тебе понравилось видео �� ►► Подписывайся на канал! ✅ Начинаете программировать? – Повторяйте все то, что показываем в обучающем видео. Тогда вы будете закреплять материал быстрее и сможете начать программировать на C# эффективно. �� Смотрите наши обучающие видеоуроки и выучите C# быстрее всех! 🙂

Показать больше

Войдите , чтобы оставлять комментарии

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

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