Практическое руководство. Создание консольного приложения CLR (C++/CLI)
Шаблон консольного приложения CLR можно использовать в диалоговом окне «Новый проект» для создания проекта консольного приложения, который уже содержит основные ссылки на проекты и файлы.
Шаблон консольного приложения CLR можно использовать в диалоговом окне «Новый проект» для создания проекта консольного приложения, который уже содержит основные ссылки на проекты и файлы.
Поддержка C++/CLI не устанавливается по умолчанию при установке рабочей нагрузки Visual Studio C++. Если в диалоговом окне «Новый проект» отсутствует заголовок СРЕДЫ CLR, может потребоваться установить поддержку C++/CLI. Дополнительные сведения см. в разделе «Установка поддержки C++/CLI» в Visual Studio 2022.
Шаблон консольного приложения CLR (платформа .NET Framework) можно использовать в диалоговом окне «Создание проекта« для создания проекта консольного приложения, который уже содержит основные ссылки на проекты и файлы.
Поддержка C++/CLI не устанавливается по умолчанию при установке рабочей нагрузки Visual Studio C++. Если в диалоговом окне «Создание проекта» не отображаются шаблоны проектов СРЕДЫ CLR, может потребоваться установить поддержку C++/CLI. Дополнительные сведения см. в статье о программировании .NET с помощью C++/CLI.
Как правило, консольное приложение компилируется в автономный исполняемый файл, но не имеет графического интерфейса пользователя. Пользователи запускают консольное приложение в командной строке. Они могут использовать командную строку для выдачи инструкций работающему приложению. Приложение предоставляет выходные данные в виде текста в командном окне. Немедленный отзыв консольного приложения делает его отличным способом изучения программирования. Вам не нужно беспокоиться о том, как реализовать графический пользовательский интерфейс.
При использовании шаблона консольного приложения CLR для создания проекта он автоматически добавляет следующие ссылки и файлы:
- Ссылки на следующие пространства имен .NET Framework:
- System, : System.DataSystem.XmlЭти ссылки содержат основные классы, определяющие часто используемые типы, события, интерфейсы, атрибуты и исключения.
- mscorlib.dll : БИБЛИОТЕКА DLL сборки, поддерживающая разработку платформа .NET Framework.
- ConsoleApplicationName.cpp : основной исходный файл и точка входа в приложение. Этот файл имеет базовое имя, указанное для проекта. Он определяет DLL-файл проекта и пространство имен проекта. В этом файле содержится разработанный вами код.
- AssemblyInfo.cpp : содержит атрибуты и параметры, которые можно использовать для изменения метаданных сборки проекта. Дополнительные сведения см. в разделе » Содержимое сборки».
- stdafx.cpp : используется для создания предварительно скомпилированного файла заголовка, именованного ConsoleApplicationName.pch и файла предварительно скомпилированных типов stdafx.obj .
- stdafx.h : используется для создания предварительно скомпилированного файла заголовка, именованного ConsoleApplicationName.pch и файла предварительно скомпилированных типов stdafx.obj .
- resource.h : созданный файл включения для app.rc .
- app.rc : файл скрипта ресурса программы.
- app.ico : файл значка программы.
При использовании шаблона консольного приложения CLR для создания проекта он автоматически добавляет следующие ссылки и файлы:
- Ссылки на следующие пространства имен .NET Framework:
- System, : System.DataSystem.XmlЭти ссылки содержат основные классы, определяющие часто используемые типы, события, интерфейсы, атрибуты и исключения.
- mscorlib.dll : БИБЛИОТЕКА DLL сборки, поддерживающая разработку платформа .NET Framework.
- ConsoleApplicationName.cpp : основной исходный файл и точка входа в приложение. Этот файл имеет базовое имя, указанное для проекта. Он определяет DLL-файл проекта и пространство имен проекта. В этом файле содержится разработанный вами код.
- AssemblyInfo.cpp : содержит атрибуты и параметры, которые можно использовать для изменения метаданных сборки проекта. Дополнительные сведения см. в разделе » Содержимое сборки».
- pch.cpp : используется для создания предварительно скомпилированного файла заголовка, именованного ConsoleApplicationName.pch и файла предварительно скомпилированных типов pch.obj .
- pch.h : используется для создания предварительно скомпилированного файла заголовка, именованного ConsoleApplicationName.pch и файла предварительно скомпилированных типов pch.obj .
- Resource.h : созданный файл включения для app.rc .
- app.rc : файл скрипта ресурса программы.
- app.ico : файл значка программы.
Создание проекта консольного приложения СРЕДЫ CLR
- В строке меню выберите Файл >Создать >Проект.
- В диалоговом окне «Новый проект» выберите узел «Установленные>шаблоны>Visual C++>CLR» и выберите шаблон консольного приложения CLR.
- В поле Имя введите уникальное имя для приложения. Можно указать другие параметры проекта и решения, но они не требуются.
- Нажмите кнопку «ОК«, чтобы создать проект и исходные файлы.
- В строке меню выберите Файл >Создать >Проект.
- В диалоговом окне «Новый проект» выберите узел установленного> visual C++>CLR, а затем выберите шаблон консольного приложения CLR.
- В поле Имя введите уникальное имя для приложения. Можно указать другие параметры проекта и решения, но они не требуются.
- Нажмите кнопку «ОК«, чтобы создать проект и исходные файлы.
- В строке меню выберите Файл >Создать >Проект.
- В диалоговом окне «Создание проекта» введите «консоль clr» в поле поиска. Выберите шаблон консольного приложения CLR (платформа .NET Framework), а затем нажмите кнопку «Далее«.
- В поле Имя введите уникальное имя для приложения. Можно указать другие параметры проекта и решения, но они не требуются.
- Нажмите кнопку «Создать«, чтобы создать проект и исходные файлы.
Как создать консольное приложение .Net Standard?
Я использую Visual Studio 2017 и пытаюсь создать проект «Console App (.Net Standard)». Однако его нет в в списке возможных проектов, когда я выбираю «File -> New Project. » Как же мне это можно сделать?
Отслеживать
задан 19 окт 2018 в 14:50
28.7k 22 22 золотых знака 61 61 серебряный знак 143 143 бронзовых знака
ассоциация: stackoverflow.com/q/45788018/5752652
19 окт 2018 в 14:501 ответ 1
Сортировка: Сброс на вариант по умолчанию
Этого сделать не получится никаким способом. Консольных проектов на .Net Standard не существует в природе.
Вы можете выбрать консольное приложение на .Net Framework или на .Net Core — но проекты .Net Standard могут быть библиотеками, которые можно подключить либо в консольное приложение .Net Framework, либо в консольное приложение .Net Core.
Можете думать о .NET Standard по аналогии с интерфейсами C#: .NET Standard — это как интерфейс, он не имеет конкретной реализации. Он может быть реализован либо в приложении .NET Framework, приложении .NET Core и других платформах.
Проект .NET Standard имеет смысл только как библиотека классов, а не как консольное приложение.
Руководство. Создание консольного приложения .NET с помощью Visual Studio
В этом руководстве показано, как создать и запустить консольное приложение .NET с помощью Visual Studio 2022.
Предварительные условия
- Предварительная версия Visual Studio 2022 с установленной рабочей нагрузкой разработки классических приложений .NET. Пакет SDK для .NET 8 устанавливается автоматически при выборе этой рабочей нагрузки. См. раздел Установка пакета SDK для .NET с помощью Visual Studio.
Создание приложения
Создайте проект консольного приложения .NET с именем HelloWorld.
- Запустите Visual Studio 2022.
- На начальной странице выберите Создать проект.
- На странице Создание проекта введите в поле поиска консоль. Затем выберите C# или Visual Basic из списка языков, а затем — Все платформы из списка платформ. Выберите шаблон консольного приложения и нажмите кнопку «Далее«.
Совет Если вы не видите шаблоны .NET, вероятно, у вас не установлена требуемая рабочая нагрузка. В сообщении Не удается найти то, что ищете? выберите ссылку Установка других средств и компонентов. Откроется Visual Studio Installer. Убедитесь, что у вас установлена рабочая нагрузка Разработка классических приложений .NET.
- В диалоговом окне Настройка нового проекта в поле Имя проекта введите HelloWorld. Теперь щелкните Далее.
- В диалоговом окне Дополнительные сведения выполните следующие действия.
- Выберите .NET 8 (предварительная версия).
- Выберите «Не использовать операторы верхнего уровня».
- Выберите Создать.
Шаблон создает простое приложение, отображающее «Hello, World!» в окне консоли. Код находится в файле Program.cs или Program.vb:
namespace HelloWorld; internal class Program < static void Main(string[] args) < Console.WriteLine("Hello, World!"); >>
Imports System Module Program Sub Main(args As String()) Console.WriteLine("Hello World!") End Sub End Module
Если нужный язык не отображается, измените выбор языка в верхней части страницы.
Код определяет класс Program с одним методом Main , который принимает массив String в качестве аргумента. Main — точка входа в приложение. Это метод, который автоматически вызывается средой выполнения при запуске приложения. Все аргументы, предоставленные в командной строке при запуске приложения, доступны через массив args.
C# имеет функцию с именем операторов верхнего уровня, которая позволяет опустить Program класс и Main метод. В этом руководстве эта функция не используется. Независимо от того, используете ли вы его в программах, это вопрос предпочтения стиля.
Выполнить приложение
- Нажмите клавиши CTRL + F5 , чтобы запустить программу без отладки. Откроется окно консоли с текстом «Hello, World!» на экране. (Или «Hello World!» без запятой в шаблоне проекта Visual Basic.)
- Для закрытия окна консоли нажмите любую клавишу.
Улучшение приложения
Давайте расширим приложение. Теперь у пользователя будет запрашиваться имя, которое затем будет отображаться с датой и временем.
-
В Program.cs или Program.vb замените содержимое метода Main (строка, вызывающая Console.WriteLine ) следующим кодом:
Console.WriteLine("What is your name?"); var name = Console.ReadLine(); var currentDate = DateTime.Now; Console.WriteLine($"Hello, , on at !"); Console.Write($"Press any key to exit. "); Console.ReadKey(true);
Console.WriteLine("What is your name?") Dim name = Console.ReadLine() Dim currentDate = DateTime.Now Console.WriteLine($"Hello, , on at ") Console.Write($"Press any key to exit. ") Console.ReadKey(True)
Этот код отображает запрос в окне консоли и ожидает, чтобы пользователь ввел строку текста и нажал клавишу ВВОД . Приложение сохраняет полученную строку в переменной с именем name . Оно также получает значение свойства DateTime.Now, которое содержит текущее локальное время, и присваивает его переменной с именем currentDate . Затем оно отображает эти значения в окне консоли. Наконец, приложение выводит запрос в окне консоли и вызывает метод Console.ReadKey(Boolean) для ожидания ввода данных пользователем. Environment.NewLine — это независимый от платформы и языка способ для представления разрыва строки. Его альтернативами являются \n в C# и vbCrLf в Visual Basic. Знак доллара ( $ ) перед строкой позволяет вставить такие выражения, как имена переменных, в фигурные скобки в строке. Значение выражения вставляется в строку вместо выражения. Такой синтаксис называется интерполированными строками.
- Нажмите клавиши CTRL + F5 , чтобы запустить программу без отладки.
- В ответ на приглашение в командной строке введите имя и нажмите клавишу ВВОД .
- Для закрытия окна консоли нажмите любую клавишу.
- Выпуски стандартной поддержки (STS) и долгосрочные выпуски поддержки (LTS).
- Visual Studio 2022 версии 17.4 или более поздней версии с установленной рабочей нагрузкой разработки классических приложений .NET. Пакет SDK для .NET 7 устанавливается автоматически при выборе этой рабочей нагрузки. См. раздел Установка пакета SDK для .NET с помощью Visual Studio.
- Запустите Visual Studio 2022.
- На начальной странице выберите Создать проект.
- На странице Создание проекта введите в поле поиска консоль. Затем выберите C# или Visual Basic из списка языков, а затем — Все платформы из списка платформ. Выберите шаблон консольного приложения и нажмите кнопку «Далее«.
Дополнительные ресурсы
Далее
В этом учебнике показано, как создать консольное приложение .NET. В следующем учебнике описывается отладка приложения.
В этом руководстве показано, как создать и запустить консольное приложение .NET с помощью Visual Studio 2022.
Предварительные условия
Создание приложения
Создайте проект консольного приложения .NET с именем HelloWorld.
Совет Если вы не видите шаблоны .NET, вероятно, у вас не установлена требуемая рабочая нагрузка. В сообщении Не удается найти то, что ищете? выберите ссылку Установка других средств и компонентов. Откроется Visual Studio Installer. Убедитесь, что у вас установлена рабочая нагрузка Разработка классических приложений .NET.
- В диалоговом окне Настройка нового проекта в поле Имя проекта введите HelloWorld. Теперь щелкните Далее.
- В диалоговом окне Дополнительные сведения выполните следующие действия.
- Выберите .NET 7 (поддержка со стандартным термином).
- Выберите «Не использовать операторы верхнего уровня».
- Выберите Создать.
Шаблон создает простое приложение, отображающее «Hello, World!» в окне консоли. Код находится в файле Program.cs или Program.vb:
namespace HelloWorld; internal class Program < static void Main(string[] args) < Console.WriteLine("Hello, World!"); >>
Imports System Module Program Sub Main(args As String()) Console.WriteLine("Hello World!") End Sub End Module
Если нужный язык не отображается, измените выбор языка в верхней части страницы.
Код определяет класс Program с одним методом Main , который принимает массив String в качестве аргумента. Main — точка входа в приложение. Это метод, который автоматически вызывается средой выполнения при запуске приложения. Все аргументы, предоставленные в командной строке при запуске приложения, доступны через массив args.
В последней версии C# новая используются операторы верхнего уровня, которые позволяют игнорировать класс Program и метод Main . Большинство существующих программ на C# не используют операторы верхнего уровня, поэтому в этом руководстве эта новая функция не используется. Но она доступна в C# 10, и то, используете ли вы ее в своих программах, зависит от стилистических предпочтений.
Выполнить приложение
- Нажмите клавиши CTRL + F5 , чтобы запустить программу без отладки. Откроется окно консоли с текстом «Hello, World!» на экране. (Или «Hello World!» без запятой в шаблоне проекта Visual Basic.)
- Для закрытия окна консоли нажмите любую клавишу.
Улучшение приложения
Давайте расширим приложение. Теперь у пользователя будет запрашиваться имя, которое затем будет отображаться с датой и временем.
-
В Program.cs или Program.vb замените содержимое метода Main (строка, вызывающая Console.WriteLine ) следующим кодом:
Console.WriteLine("What is your name?"); var name = Console.ReadLine(); var currentDate = DateTime.Now; Console.WriteLine($"Hello, , on at !"); Console.Write($"Press any key to exit. "); Console.ReadKey(true);
Console.WriteLine("What is your name?") Dim name = Console.ReadLine() Dim currentDate = DateTime.Now Console.WriteLine($"Hello, , on at ") Console.Write($"Press any key to exit. ") Console.ReadKey(True)
Этот код отображает запрос в окне консоли и ожидает, чтобы пользователь ввел строку текста и нажал клавишу ВВОД . Приложение сохраняет полученную строку в переменной с именем name . Оно также получает значение свойства DateTime.Now, которое содержит текущее локальное время, и присваивает его переменной с именем currentDate . Затем оно отображает эти значения в окне консоли. Наконец, приложение выводит запрос в окне консоли и вызывает метод Console.ReadKey(Boolean) для ожидания ввода данных пользователем. Environment.NewLine — это независимый от платформы и языка способ для представления разрыва строки. Его альтернативами являются \n в C# и vbCrLf в Visual Basic. Знак доллара ( $ ) перед строкой позволяет вставить такие выражения, как имена переменных, в фигурные скобки в строке. Значение выражения вставляется в строку вместо выражения. Такой синтаксис называется интерполированными строками.
- Нажмите клавиши CTRL + F5 , чтобы запустить программу без отладки.
- В ответ на приглашение в командной строке введите имя и нажмите клавишу ВВОД .
- Для закрытия окна консоли нажмите любую клавишу.
- Visual Studio 2022 версии 17.1 или более поздней версии с установленной рабочей нагрузкой разработки классических приложений .NET. Пакет SDK для .NET 6 устанавливается автоматически при выборе этой рабочей нагрузки. См. раздел Установка пакета SDK для .NET с помощью Visual Studio.
- Запустите Visual Studio 2022.
- На начальной странице выберите Создать проект.
- На странице Создание проекта введите в поле поиска консоль. Затем выберите C# или Visual Basic из списка языков, а затем — Все платформы из списка платформ. Выберите шаблон Консольное приложение и нажмите Далее.
- В диалоговом окне Настройка нового проекта в поле Имя проекта введите HelloWorld. Теперь щелкните Далее.
- В диалоговом окне Дополнительные сведения выберите .NET 6 (долгосрочная поддержка), а затем щелкните Создать. Шаблон создает простое приложение, которое отображает Hello World в окне консоли. Код находится в файле Program.cs или Program.vb:
Console.WriteLine("Hello, World!");
Imports System Module Program Sub Main(args As String()) Console.WriteLine("Hello World!") End Sub End Module
namespace HelloWorld < class Program < static void Main(string[] args) < Console.WriteLine("Hello World!"); >> >
' This step of the tutorial applies only to C#.
Выполнить приложение
- Нажмите клавиши CTRL + F5 , чтобы запустить программу без отладки. Откроется окно консоли с текстом «Hello World!» на экране.
- Для закрытия окна консоли нажмите любую клавишу.
Улучшение приложения
Давайте расширим приложение. Теперь у пользователя будет запрашиваться имя, которое затем будет отображаться с датой и временем.
-
В Program.cs или Program.vb замените содержимое метода Main (строка, вызывающая Console.WriteLine ) следующим кодом:
Console.WriteLine("What is your name?"); var name = Console.ReadLine(); var currentDate = DateTime.Now; Console.WriteLine($"Hello, , on at !"); Console.Write($"Press any key to exit. "); Console.ReadKey(true);
Console.WriteLine("What is your name?") Dim name = Console.ReadLine() Dim currentDate = DateTime.Now Console.WriteLine($"Hello, , on at ") Console.Write($"Press any key to exit. ") Console.ReadKey(True)
Этот код отображает запрос в окне консоли и ожидает, чтобы пользователь ввел строку текста и нажал клавишу ВВОД . Приложение сохраняет полученную строку в переменной с именем name . Оно также получает значение свойства DateTime.Now, которое содержит текущее локальное время, и присваивает его переменной с именем currentDate . Затем оно отображает эти значения в окне консоли. Наконец, приложение выводит запрос в окне консоли и вызывает метод Console.ReadKey(Boolean) для ожидания ввода данных пользователем. Environment.NewLine — это независимый от платформы и языка способ для представления разрыва строки. Его альтернативами являются \n в C# и vbCrLf в Visual Basic. Знак доллара ( $ ) перед строкой позволяет вставить такие выражения, как имена переменных, в фигурные скобки в строке. Значение выражения вставляется в строку вместо выражения. Такой синтаксис называется интерполированными строками.
- Нажмите клавиши CTRL + F5 , чтобы запустить программу без отладки.
- В ответ на приглашение в командной строке введите имя и нажмите клавишу ВВОД .
- Для закрытия окна консоли нажмите любую клавишу.
- Установите и запустите на своем компьютере Visual Studio с рабочей нагрузкой Разработка классических приложений на C++. Если установка еще не выполнена, см. статью Установка поддержки C++ в Visual Studio.
- В Visual Studio откройте меню «Файл» и выберите «Создать > проект «, чтобы открыть диалоговое окно «Создать проект «. Выберите шаблон Консольное приложение с тегами C++, Windows и Консоль, а затем нажмите кнопку Далее.
Дополнительные ресурсы
Далее
В этом учебнике показано, как создать консольное приложение .NET. В следующем учебнике описывается отладка приложения.
В этом руководстве показано, как создать и запустить консольное приложение .NET с помощью Visual Studio 2022.
Предварительные условия
Создание приложения
Создайте проект консольного приложения .NET с именем HelloWorld.
Совет Если вы не видите шаблоны .NET, вероятно, у вас не установлена требуемая рабочая нагрузка. В сообщении Не удается найти то, что ищете? выберите ссылку Установка других средств и компонентов. Откроется Visual Studio Installer. Убедитесь, что у вас установлена рабочая нагрузка Разработка классических приложений .NET.
Дополнительные ресурсы
Далее
В этом учебнике показано, как создать консольное приложение .NET. В следующем учебнике описывается отладка приложения.
Создание проекта консольного приложения С++
Обычно программист C++ начинает с создания приложения «Hello, world!», которое запускается из командной строки. Это то, что вы создаете в Visual Studio на этом шаге.
Необходимые компоненты
Создание проекта приложения
Visual Studio использует проекты, чтобы упорядочить код для приложения, и решения, чтобы упорядочить проекты. Проект содержит все параметры, конфигурации и правила, используемые для сборки приложения. Он управляет связью между всеми файлами проекта и любыми внешними файлами. Чтобы создать приложение, сначала создайте проект и решение.
Диалоговое окно создания проекта с выбранным шаблоном консольного приложения. Этот шаблон говорит: запуск кода в терминале Windows. По умолчанию выводит hello world. Содержит теги c++, Windows и консоль.
В диалоговом окне Настроить новый проект в поле Имя проекта введите HelloWorld. Выберите Создать, чтобы создать проект.
Диалоговое окно «Настройка нового проекта» с помощью HelloWorld, введенного в поле «Имя проекта».
Visual Studio создаст проект. Вы можете приступать к добавлению и изменению исходного кода. По умолчанию шаблон консольного приложения предоставляет исходный код для приложения Hello World, как показано ниже.
Отображает новый проект. Файл HelloWorld.cpp открыт, отображая код по умолчанию, включенный в этот шаблон. Этот код состоит из #include iostream и функции main(), содержащей строку: std::cout helloworld.sln файл) в проводник.
Если в диалоговом окне Новый проект в списке Установленные нет элемента Visual C++, возможно, в вашей копии Visual Studio не установлена рабочая нагрузка Разработка классических приложений на C++. Установщик можно запустить прямо из диалогового окна Новый проект. Чтобы снова запустить установщик, щелкните ссылку Открыть Visual Studio Installer. Если в диалоговом окне Контроль учетных записей пользователей запрашиваются разрешения, выберите Да. При необходимости обновите установщик. В установщике должна быть выбрана рабочая нагрузка Разработка классических приложений на C++. Нажмите кнопку ОК, чтобы обновить установку Visual Studio.
Если проект с таким именем уже существует, выберите другое имя для проекта. Можно также удалить существующий проект и повторить попытку. Чтобы удалить существующий проект, удалите папку решения (папку, содержащую helloworld.sln файл) в проводник.
Настройка проекта как консольного приложения: проблемы
Если в списке Свойства конфигурации нет элемента Компоновщик, нажмите кнопку Отмена, чтобы закрыть диалоговое окно Страницы свойств. Перед повторной попыткой убедитесь в том, что в обозревателе решений выбран проект HelloWorld. Не выбирайте решение HelloWorld или другой объект в обозревателе решений.
Раскрывающийся список не открывается в поле свойства Подсистема, пока не будет выбрано свойство. Щелкните поле ввода, чтобы выбрать его. Можно также последовательно переходить по элементам управления в диалоговом окне с помощью клавиши TAB, пока не будет выделено поле Подсистема. Щелкните раскрывающийся список или нажмите клавиши ALT+стрелка вниз, чтобы открыть его.
Добавление файла исходного кода: проблемы
Файлу исходного кода можно спокойно присвоить другое имя. Однако не добавляйте в проект несколько файлов с одинаковым кодом.
Если вы добавили в проект файл неправильного типа, например файл заголовка, удалите его и повторите попытку. Чтобы удалить файл, выберите его в обозревателе решений. Затем нажмите клавишу DELETE.
Добавление кода в файл исходного кода: проблемы
Если вы случайно закрыли окно редактора с файлом исходного кода, его можно легко открыть снова. Чтобы сделать это, дважды щелкните файл HelloWorld.cpp в окне обозревателя решений.
Если в редакторе исходного кода какие-либо элементы подчеркнуты красной волнистой линией, проверьте, соответствуют ли их написание, пунктуация и регистр символов используемым в примере. В коде на C++ регистр имеет важное значение.