Скорее всего вы не включили C++/CLI во время установки Visual Studio 2017
1. При создании проекта жмем «Открыть установщик Visual Studio»
2. В установщике под Visual Studio 2017 Community жмем кнопку Modify
3. В открывшемся окне выбираем вкладку «Individual Components» (Индивидуальные компоненты)
4. Мотаем в низ пока не увидим «Поддержка C++/CLI», затем слева ставим галочку
5. После в правом-нижнем углу жмем кнопку Modify, готово!
P.S. Если у вас установщик на русском, то названия могут отличаться.
Распределенное обучение с TensorFlow и Python
AI_Generated 05.05.2025
В машинном обучении размер имеет значение. С ростом сложности моделей и объема данных одиночный процессор или даже мощная видеокарта уже не справляются с задачей обучения за разумное время. Когда. . .
CRUD API на C# и GraphQL
stackOverflow 05.05.2025
В бэкенд-разработке постоянно возникают новые технологии, призванные решить актуальные проблемы и упростить жизнь программистам. Одной из таких технологий стал GraphQL — язык запросов для API,. . .
Распознавание голоса и речи на C#
UnmanagedCoder 05.05.2025
Интеграция голосового управления в приложения на C# стала намного доступнее благодаря развитию специализированных библиотек и API. При этом многие разработчики до сих пор считают голосовое управление. . .
Реализация своих итераторов в C++
NullReferenced 05.05.2025
Итераторы в C++ — это абстракция, которая связывает весь экосистему Стандартной Библиотеки Шаблонов (STL) в единое целое, позволяя алгоритмам работать с разнородными структурами данных без знания их. . .
Разработка собственного фреймворка для тестирования в C#
UnmanagedCoder 04.05.2025
C# довольно богат готовыми решениями – NUnit, xUnit, MSTest уже давно стали своеобразными динозаврами индустрии. Однако, как и любой динозавр, они не всегда могут протиснуться в узкие коридоры. . .
Распределенная трассировка в Java с помощью OpenTelemetry
Javaican 04.05.2025
Микросервисная архитектура стала краеугольным камнем современной разработки, но вместе с ней пришла и головная боль, знакомая многим — отслеживание прохождения запросов через лабиринт взаимосвязанных. . .
Шаблоны обнаружения сервисов в Kubernetes
Mr. Docker 04.05.2025
Современные Kubernetes-инфраструктуры сталкиваются с серьёзными вызовами. Развертывание в нескольких регионах и облаках одновременно, необходимость обеспечения низкой задержки для глобально. . .
Создаем SPA на C# и Blazor
stackOverflow 04.05.2025
Мир веб-разработки за последние десять лет претерпел коллосальные изменения. Переход от традиционных многостраничных сайтов к одностраничным приложениям (Single Page Applications, SPA) — это. . .
Реализация шаблонов проектирования GoF на C++
NullReferenced 04.05.2025
«Банда четырёх» (Gang of Four или GoF) — Эрих Гамма, Ричард Хелм, Ральф Джонсон и Джон Влиссидес — в 1994 году сформировали канон шаблонов, который выдержал проверку временем. И хотя C++ претерпел. . .
C# и сети: Сокеты, gRPC и SignalR
UnmanagedCoder 04.05.2025
Сетевые технологии не стоят на месте, а вместе с ними эволюционируют и инструменты разработки. В . NET появилось множество решений — от низкоуровневых сокетов, позволяющих управлять каждым байтом. . .
При создании нового проекта в Visual Studio для языка программирования C++ в мастере нет пункта Windows Forms. Но, безусловно, язык C++ поддерживает .NET и, соответственно, Windows Forms. Из этой статьи Вы узнаете, как создать в Visual Studio проект Windows Form на C++.
Сначала необходимо создать новый проект в Visual Studio.
Создание нового проекта C++ в Visual Studio
Запустите Visual Studio. Нажмите «Файл» → «Создать» → «Проект…». Или нажмите сочетание клавиш Ctrl + Shift + N на клавиатуре.
В появившемся окне «Создать проект» слева выберите группу «Visual C++», а в ней пункт «CLR». Щелкните по «Пустой проект CLR», введите имя проекта и нажмите кнопку «OK».
Таким образом мы создали новый проект на языке программирования C++ в Visual Studio.
Добавление Windows Forms в проект C++
Теперь в созданный проект на C++ добавим форму Windows Forms.
Для этого щелкните в «Обозревателе решений» на названии проекта правой кнопкой мыши, выберите пункт «Добавить» и затем «Создать элемент…». Либо просто нажмите на клавиатуре сочетание клавиш Ctrl + Shift + A.
Загрузится окно «Добавление нового элемента». В нём щёлкните левой кнопкой мыши по группе UI в выберите элемент «Форма Windows Forms — Visual C++». Можете изменить имя создаваемой формы. По завершении нажмите кнопку «Добавить».
Далее откройте файл исходного кода «MyForm.cpp» (если вы изменяли название формы, то файл будет иметь другое имя). В него добавьте следующий текст:
using namespace System; using namespace System::Windows::Forms; [STAThread] void main(array<String^>^ arg) { Application::EnableVisualStyles(); Application::SetCompatibleTextRenderingDefault(false); WinFormsTest::MyForm form; //WinFormsTest — имя вашего проекта Application::Run(%form); } |
Если Вы указали имя проекта отличное от WinFormsTest, то, соответственно, в коде укажите введённое Вами имя.
Сохраните изменения в файле.
Теперь необходимо произвести ряд настроек проекта в Visual Studio. Приступим.
Щёлкните по названию проекта в «Обозревателе решений» правой кнопкой мыши и затем нажмите кнопку «Свойства». Либо сразу нажмите сочетание клавиш Alt + Enter.
В «Странице свойств» проекта слева выберите группу «Компоновщик» → «Система». В раскрывающемся списке «Подсистема» укажите Windows и нажмите кнопку «Применить».
Далее в разделе «Дополнительно» группы «Компоновщик» в качестве «Точки входа» укажите функцию main (напишите словом). Щелкните кнопку «Применить», а затем «ОК».
На этом настройка и создание проекта Windows Forms на C++ завершены! Чтобы просмотреть результат — запустите проект на выполнение (клавиша F5).
Видеоурок создания проекта WinForms C++
Skip to main content
Skip to main content
Visual Studio
Visual Studio
Sign in
Visual Studio 2013 и выше: как сделать приложение Windows Forms?
Ну да, такого «мастера приложений с одной главной формой», как в версии 2010, нет. Но это не значит, что работа с формами не поддерживается — просто создавайте пустой проект CLR и добавляйте форму в него «вручную». Вот весь процесс, расписанный по шагам:
Меню Создать проект, Visual C++, CLR, Пустой проект CLR.
После создания проекта нажать на вкладку Проект, Добавить новый элемент, UI, форма Windows Form. Потом добавить следующий код в файл MyForm.cpp
:
#include "MyForm.h" //Здесь пишем имя h-файла вашей формы! using namespace Example1; //Здесь пишем имя вашего проекта! [STAThreadAttribute] int main(array<System::String ^> ^args) { Application::EnableVisualStyles(); Application::SetCompatibleTextRenderingDefault(false); Application::Run(gcnew MyForm()); //Тоже пишем имя своей формы, если оно не MyForm return 0; }
Далее нажимаем вкладку Проект, Свойства имя_текущего_проекта.
Выбираем Свойства конфигурации, Компоновщик, Система, справа в поле Подсистема вставляем Windows (строку /SUBSYSTEM:WINDOWS
).
Затем Свойства конфигурации, Компоновщик, Дополнительно, справа поле Точка входа, вставляем строку main
Приведённый вариант кода MyForm.cpp
— не единственный, в новых версиях Studio лучше делать так:
#include "MyForm.h" using namespace System; using namespace System::Windows::Forms; [STAThread] int main(array<String^>^ arg) { Application::EnableVisualStyles(); Application::SetCompatibleTextRenderingDefault(false); Project1::MyForm form; //Вместо Project1 - имя вашего проекта Application::Run(%form); return 0; }
Это всё, можно работать.
Для экспорта шаблона делаем следующее: из меню «Файл» выбираем пункт «Экспорт шаблона». В появившимся мастере шаблонов соглашаемся со всем, только проверяем, чтобы стояла галочка на «Автоматический импорт шаблонов в Visual Studio». Жмем Готово. Теперь в мастере проектов появился новый пункт.
P.S. Проверил в Visual Studio 2015, подход также сработал. Увы, экспорт шаблона в некоторых сборках версий Studio 2015 и 2017 может работать криво, не добавляя в шаблон файлы .cpp и .h!
P.P.S. В Visual Studio 2019 действия те же, но если после установки Visual Studio 2019 отсутствует конструктор формы Windows Forms, читаем и ставим это.
Если устанавливается актуальная сборка версии Enterprice (16.5.X и старше), установить рабочую нагрузку «Разработка классических приложений» и из раздела «Дополнительные компоненты» отметить «Поддержка C++/CLI» (C++/CLI Support)
Цитируем официальную доку:
«В Visual Studio 2017 и более поздних версиях поддержка C++/CLI является необязательным компонентом. Чтобы установить его, откройте Visual Studio Installer из меню «Пуск» Windows. Убедитесь, что установлен флажок Разработка классических приложений на C++, и в разделе Дополнительные компоненты также следует проверить поддержку C++/CLI.
«Individual Components» (Индивидуальные компоненты) — «Поддержка C++/CLI» («C++/CLI support»)»
Возможно, без обновления версии поможет вот это дополнение.
В версии Studio 2019 примерно со сборки 16.5 (см. меню Справка — О программе) отдельно «доставлять» конструктор форм не нужно, создаваемый тип проекта называется «Пустой проект CLR (.NET Framework)», а сохранить шаблон можно из меню Проект — Экспорт шаблона.
В принципе, для работы с C++ и Windows Forms нужны только следующие нагрузки:
Рабочие нагрузки VS 2019 CPP
09.02.2015, 14:54 [18042 просмотра]
К этой статье пока нет комментариев, Ваш будет первым