BAT 2 EXE и Bat To EXE, или как создать из BAT-скрипта исполняемый EXE-файл
Использование готовых пакетных файлов является прекрасной альтернативой ручному выполнению команд в командной строке. Однако в некоторых случаях пользователи могут столкнуться с ограничениями применения скриптов форматов CMD или BAT . Обойти это ограничение можно, сконвертировав скрипт в исполняемый файл формата EXE . Полученный экзешник выполняет те задачи, что и скрипт, хотя сам процесс исполнения может отличаться.
Например, если EXE -файл выполняется в фоновом режиме, пользователь не сможет получить данные, которые при выполнении CMD -скрипта должны выводиться в графическом интерфейсе командной строки. Но как правило, с подобным явлением приходится встречаться редко, тем более, что скрипт может быть изменен таким образом, что данные будут выводится вне консоли.

Утилит, предназначенных для конвертирования «батников» существует достаточно много. Если вы опытный пользователь, имеющий представление о языке интерпретатора CMD (хотя в целом знать его необязательно) , вам подойдёт утилита Bat To EXE. Если же вы собираетесь ограничиться простым конвертированием пакетного файла, воспользуйтесь портативной тулзой BAT 2 EXE.

Bat To EXE поддерживается конвертирование, создание и редактирование скриптов отдельно до 32- и 64-битных систем, добавление в исполняемый файл иконки, дополнительных сведений о версии, реализация возможности запуска EXE -файла с правами администратора, а также выполнение в фоновом (скрытом) режиме. BAT 2 EXE намного проще. По большому счету всё что умеет делать инструмент, это преобразовывать BAT- и CMD -скрипты в EXE -файлы.

После первого запуска утилита попросит указать каталог с конвертируемым скриптом и запросит разрешение на выполнение процедуры. Чтобы начать процесс конвертирования батника, ведите в консольном интерфейсе BAT 2 EXE «y» и нажмите ввод. Также потребуется указать выходной каталог для сохранения результата. Полученный экзешник будет иметь то же имя, что и скрипт.
Пошаговое руководство. Компиляция машинной программы на языке C++ из командной строки
Visual Studio включает в себя командную строку C и компилятор C++. Его можно использовать для создания всех элементов — от базовых консольных приложений до приложений универсальной платформы Windows, классических приложений, драйверов устройств и компонентов .NET.
В этом пошаговом руководстве приводятся инструкции по созданию программы на языке C++ в стиле «Hello, Wolrd» в текстовом редакторе с последующей компиляцией из командной строки. Если вы хотите попробовать интегрированную среду разработки Visual Studio вместо использования командной строки, см . пошаговое руководство. Работа с проектами и решениями (C++) или использование интегрированной среды разработки Visual Studio для классических приложений C++.
В этом пошаговом руководстве вместо ввода показанного кода можно использовать собственную программу на языке C++. Также можно использовать пример кода C++ из другой статьи справки.
Необходимые компоненты
Для выполнения этого пошагового руководства необходимо установить Visual Studio и дополнительную рабочую нагрузку Разработка настольных приложений на C++ или Build Tools командной строки для Visual Studio.
Visual Studio — интегрированная среда разработки (IDE). Она поддерживает полнофункциональный редактор, диспетчеры ресурсов, отладчики и компиляторы для многих языков и платформ. Доступные версии включают бесплатный выпуск Visual Studio Community Edition, и все они могут поддерживать разработку на C и C++. Сведения о скачивании и установке Visual Studio см. в статье Установка поддержки C++ в Visual Studio.
Build Tools для Visual Studio устанавливают только средства, библиотеки и компиляторы командной строки, необходимые для сборки программ C и C++. Это идеальный вариант для создания заданий и упражнений, а установка выполняется относительно быстро. Чтобы установить только средства командной строки, найдите Build Tools для Visual Studio на странице загрузки Visual Studio.
Прежде чем можно будет выполнить сборку программ C или C++ в командной строке, убедитесь, что эти средства установлены и к ним можно получить доступ из командной строки. Visual C++ имеет сложные требования к среде командной строки для поиска используемых средств, заголовков и библиотек. Visual C++ нельзя использовать в простом окне командной строки без предварительной подготовки. К счастью, Visual C++ устанавливает ярлыки для запуска командной строки разработчика, для которой настроена среда для сборок из командной строки. К сожалению, имена ярлыков командной строки разработчика и места их расположения отличаются практически во всех версиях Visual C++ и в различных версиях Windows. Первая задача пошагового руководства — найти нужную командную строку.
Ярлык командной строки разработчика автоматически задает правильные пути для компилятора и средств, а также для всех необходимых заголовков и библиотек. Эти значения среды необходимо задавать самостоятельно, если используется обычное окно командной строки. Дополнительные сведения см. в статье Использование набора инструментов MSVC из командной строки. Рекомендуется использовать ярлык командной строки разработчика вместо создания собственного.
Открытие командной строки разработчика
- Если вы установили Visual Studio 2017 или более поздней версии в Windows 10 или более поздней версии, откройте меню «Пуск» и выберите Все приложения. Прокрутите вниз и откройте папку Visual Studio (не приложение Visual Studio). Выберите элемент Командная строка разработчика для VS, чтобы открыть окно командной строки. Если вы установили Microsoft Visual C++ Build Tools 2015 в Windows 10 или более поздней версии, откройте меню Пуск и выберите Все приложения. Прокрутите вниз и откройте папку Microsoft Visual C++ Build Tools. Выберите элемент Командная строка Native Tools x86 Visual C++ 2015, чтобы открыть окно командной строки. Можно также ввести «командная строка разработчика» в строке поиска в Windows и выбрать командную строку, которая соответствует установленной версии Visual Studio. Откройте окно командной строки с помощью ярлыка.
- Затем убедитесь в том, что командная строка разработчика Visual C++ настроена правильно. В окне командной строки введите cl и убедитесь в том, что выходные данные выглядят примерно так:
C:\Program Files (x86)\Microsoft Visual Studio\2017\Enterprise>cl Microsoft (R) C/C++ Optimizing Compiler Version 19.10.25017 for x86 Copyright (C) Microsoft Corporation. All rights reserved. usage: cl [ option. ] filename. [ /link linkoption. ]
Возможно, существуют различия в текущем каталоге или номерах версий. Эти значения зависят от версии Visual C++ и установленных обновлений. Если приведенный выше результат похож на отображаемый, можно приступать к сборке программ C или C++ в командной строке.
Примечание. Если при выполнении команды cl появляется сообщение о том, что «cl не распознается как внутренняя или внешняя команда, исполняемая программа или пакетный файл», или возникают ошибки C1034 или LNK1104, дело в том, что вы не используете командную строку разработчика или что-то не так с установкой Visual C++. Для продолжения нужно будет исправить ошибку.
Если вы не можете найти ярлык командной строки разработчика или при вводе cl появляется сообщение об ошибке, возможно, возникла проблема с установкой Visual C++. Попробуйте переустановить компонент Visual C++ в Visual Studio или Microsoft Visual C++ Build Tools. Не переходите к следующему разделу, пока команда cl не сработает. Дополнительные сведения об установке Visual C++ и устранении неполадок см. в статье Установка Visual Studio.
Примечание. В зависимости от версии Windows, установленной на компьютере, и конфигурации системы безопасности может потребоваться правой кнопкой мыши открыть контекстное меню для ярлыка командной строки разработчика и выбрать пункт Запуск от имени администратора, чтобы успешно выполнить сборку и запуск программы, созданной в этом пошаговом руководстве.
Создание файла исходного кода на языке Visual C++ и его компиляция из командной строки
- В окне командной строки разработчика введите md c:\hello , чтобы создать каталог, а затем введите cd c:\hello , чтобы перейти к этому каталогу. В этом каталоге создаются файл исходного кода и скомпилированная программа.
- В окне командной строки введите notepad hello.cpp . Когда Блокнот предложит создать файл, выберите Да. Откроется пустое окно Блокнота, в котором можно ввести код для файла hello.cpp.
- В окне блокнота введите следующие строки кода:
#include using namespace std; int main()
c:\hello>dir Volume in drive C has no label. Volume Serial Number is CC62-6545 Directory of c:\hello 05/24/2016 05:36 PM . 05/24/2016 05:36 PM .. 05/24/2016 05:37 PM 115 hello.cpp 1 File(s) 115 bytes 2 Dir(s) 571,343,446,016 bytes free
Даты и некоторые другие данные будут отличаться на вашем компьютере.
Примечание. Если файл исходного кода hello.cpp не отображается, убедитесь, что текущий рабочий каталог в командной строке — это созданный вами каталог C:\hello . Это должен быть каталог, в который вы сохранили файл исходного кода. Также убедитесь, что файл исходного кода был сохранен с расширением имени файла .cpp , а не .txt . Если открыть Блокнот из командной строки с помощью команды notepad hello.cpp , файл исходного кода автоматически сохраняется в текущем каталоге в виде файла .cpp . Если Блокнот открыть другим способом, его поведение также будет другим. По умолчанию Блокнот добавляет расширение .txt в новые файлы при их сохранении. Кроме того, файлы по умолчанию сохраняются в каталоге Документы. Чтобы сохранить файл с расширением .cpp в Блокноте, выберите Файл>Сохранить как. В диалоговом окне Сохранение файла перейдите к папке C:\hello в элементе управления иерархического представления каталогов. Затем используйте раскрывающийся список «Сохранить как тип», чтобы выбрать все файлы (*.*). Введите hello.cpp в элемент управления «Поле ввода» Имя файла и нажмите кнопку Сохранить, чтобы сохранить файл.
c:\hello>cl /EHsc hello.cpp Microsoft (R) C/C++ Optimizing Compiler Version 19.10.25017 for x86 Copyright (C) Microsoft Corporation. All rights reserved. hello.cpp Microsoft (R) Incremental Linker Version 14.10.25017.0 Copyright (C) Microsoft Corporation. All rights reserved. /out:hello.exe hello.obj
Примечание. Если вы получаете сообщение об ошибке, например «cl не распознается как внутренняя или внешняя команда, исполняемая программа или пакетный файл», ошибке C1034 или LNK1104, командная строка разработчика настроена неправильно. Чтобы получить сведения о том, как устранить эту проблему, вернитесь к разделу Открыть командную строку разработчика.
Примечание. Если вы получаете другое сообщение об ошибке или предупреждение компилятора или компоновщика, проверьте исходный код, исправьте ошибки, сохраните его и снова запустите компилятор. Для получения сведений о конкретных ошибках введите номер ошибки в поле поиска.
Hello, world, from Visual C++!
Следующие шаги
Этот пример «Hello, World» является самой простой программой C++. Реальные программы обычно имеют файлы заголовков, дополнительные исходные файлы и ссылки на библиотеки.
Вы можете использовать шаги, описанные в этом пошаговом руководстве по C++, для создания собственного кода, чтобы не вводить приведенный пример. Эти шаги также позволяют собрать множество примеров кода C++, которые можно найти в других местах. Вы можете разместить исходный код и собрать приложения в любом доступном для записи каталоге. По умолчанию интегрированная среда разработки Visual Studio создает проекты в папке пользователя в подпапке source\repos . Старые версии могут помещать проекты в папку Documents\Visual Studio \Projects .
Чтобы скомпилировать программу с дополнительными файлами исходного кода, введите их все в командной строке, например:
cl /EHsc file1.cpp file2.cpp file3.cpp
Параметр командной строки /EHsc указывает компилятору на необходимость стандартной обработки исключений C++. В противном случае созданные исключения могут привести к неуничтоженным объектам и утечкам ресурсов. Дополнительные сведения см. в статье /EH (модель обработки исключений).
При указании дополнительных исходных файлов компилятор использует первый входной файл для создания имени программы. В этом случае выводится программа с именем file1.exe. Чтобы изменить имя на program1.exe, добавьте параметр компоновщика /out:
cl /EHsc file1.cpp file2.cpp file3.cpp /link /out:program1.exe
Чтобы автоматически перехватывать другие ошибки программирования, рекомендуется выполнить компиляцию с помощью порога предупреждений /W3 или /W4:
cl /W4 /EHsc file1.cpp file2.cpp file3.cpp /link /out:program1.exe
В компиляторе cl.exe есть множество дополнительных параметров. Их можно применять для создания, оптимизации, отладки и анализа кода. Чтобы просмотреть краткий список, введите cl /? в командной строке разработчика. Можно также выполнять компиляцию и компоновку отдельно и применять параметры компоновщика в более сложных сценариях сборки. Дополнительные сведения о параметрах и использовании компилятора и компоновщика см. в справочнике по сборке для C/C++.
Для настройки и создания более сложных проектов в командной строке можно использовать NMAKE и файлы makefile, MSBuild и файл проекта или CMake. Дополнительные сведения об использовании этих средств см. в разделах Справочник по NMAKE, MSBuild и Проекты CMake в Visual Studio.
Языки C и C++ похожи, но имеют различия. Компилятор MSVC использует простое правило для определения языка, используемого при компиляции кода. По умолчанию компилятор MSVC рассматривает файлы с расширением .c как исходные файлы на языке С, а файлы с расширением .cpp — как исходные файлы на языке С++. Если указан параметр компилятора /TP, компилятор будет рассматривать все файлы как исходные файлы на языке С++ вне зависимости от расширения.
Компилятор MSVC содержит библиотеку времени выполнения C (CRT), которая соответствует стандарту ISO C99 с небольшими исключениями. Переносимый код обычно компилируется и выполняется, как ожидалось. Некоторые устаревшие функции библиотеки и несколько имен функций POSIX не рекомендуется использовать в компиляторе MSVC. Функции поддерживаются, но предпочтительные имена изменились. Дополнительные сведения см. в статьях Функции безопасности в CRT и Предупреждение компилятора (уровень 3) C4996.
Как правильно компилировать с помощью cmd.exe?

Задам нубский вопрос: как компилировать через cmd.exe в моем случае программу? В файле MiniDuckSimulator нах-ся psvm. Где я вообще могу посмотреть, как правильно компилировать файлы в различных случаях, а то я не очень понимаю, когда использовать -cp, -sourcepath, -classpath и т.п. Мне очень хотелось бы разобраться вэтом вопросе и научиться архивировать, распаковывать через командную строку. Что можете посоветовать?
Отслеживать
задан 30 июн 2020 в 21:13
Александр Скворцов Александр Скворцов
123 1 1 серебряный знак 6 6 бронзовых знаков
На habr имеется неплохая статья.
30 июн 2020 в 21:25
1 ответ 1
Сортировка: Сброс на вариант по умолчанию
Консольная утилита javac :
Используется для компиляции программы, основной опцией которой является:
- —source-path / -sourcepath — указывает на каталог, в котором находятся файлы исходного кода (для java — это файлы с расширением .java ):
- используется при компиляции исходников в байткод (в .class файлы);
Консольная утилита java :
Используется для запуска программы, основной опцией которой является:
- —class-path path / -classpath path / -cp — указывает на каталог, в котором находятся скомпилированные файлы ( .class ):
- используется при запуске программы (за счет интерпретации на стороне JVM файлов байткода, т.е. .class файлов).
Консольная утилита jar :
Используется для манипуляции с архивами (создания архивов, извлечение из них .class файлов, . ), основной опцией которой является:
- —create / -c — создание архива.
На изучение:
- статья на habr, посвященная вашему вопросу;
- официальная документация на консольную утилиту javac (в рамках JDK 11);
- официальная документация на консольную утилиту java (в рамках JDK 11);
- официальная документация на консольную утилиту jar (в рамках JDK 11).
Bat превратить в Exe

Как превратить BAT файл в EXE так чтобы в нём Русский отображался Русскими буквами, а не всякой фигнёй.
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
Ответы с готовыми решениями:Неправильно работает EXE-файл, скомпилированный из BAT-файла с помощью программы Bat To Exe Converter
Сдрасте люди, я пришел к вам с того самого мира, или как то так У меня уже мозги кипят на.EXE + BAT
Есть FreeArc (v0.67 Alpha) очень хорошо сжимает файлы нужно, что бы после распаковки произошел.EXE to vbs or bat
Всем привет! Молжно ли? и как? из исполняемого exe файла сделать vbs или bat скрипт?:umbrage: .zenity.exe в bat\cmd
Приветствую всех! Гуру помогите разобраться, решил вот использовать утилиту zenity.ехе для вывода.1745 / 350 / 41
Регистрация: 15.10.2012
Сообщений: 549
Сохранить батник в ДОС кодировке (CP-866)
Регистрация: 31.08.2012
Сообщений: 110
Сообщение от Smitis 
ДОС кодировке (CP-866)
А с помощью чего в такой кодировке можно сохранить?
Добавлено через 6 минут
Сделал с помощью NotePad++, но когда конвертнул в EXE то там опять всякая фигня вылезла вместо РусскогоДобавлено через 3 часа 12 минут
Всё решил с помощью этого, токо некоторые символы потом дописывать через NotePad++ пришлось

17987 / 7688 / 892
Регистрация: 25.12.2011
Сообщений: 11,466
Записей в блоге: 17
Сообщение от Jeka_Osokin 
А с помощью чего в такой кодировке можно сохранить?
Сообщение от Jeka_Osokin 
но когда конвертнул в EXE то там опять всякая фигня вылезла вместо Русского
Попробуйте в начале пакетного файла написать принудительно:chcp 866 >NUL
Какой конвертер используете?
1779 / 761 / 130
Регистрация: 09.04.2011
Сообщений: 1,325
Сообщение от Jeka_Osokin 
Как превратить BAT файл в EXE так чтобы в нём Русский отображался Русскими буквами
Quick Batch File Compiler http://www.abyssmedia.com/quickbfc/
5197 / 2079 / 406
Регистрация: 06.01.2013
Сообщений: 4,789А самый
удобныйкастомизируемый способ — это 7zsfx.info
Для эффекта псевдокомпиляции нужна скрытая распаковка и автозапускДобавлено через 14 секунд
Проблем с кодировкой быть не должно279 / 84 / 12
Регистрация: 04.09.2013
Сообщений: 187FraidZZ, точно.
Пользуюсь надстройкой 7-ZIP SFX Maker, все четко отрабатывает. Самое приятное, что в отличие от всяких Bat2exe этот 100% удаляет темпы со скриптом. Ну и переменные можно передавать в батник. И много еще полезного и приятного.
Проблем с кодировками нет.
И еще одно преимущество — не портит JS вставки, конвертеры первой строкой вставляют свою информацию, после чего такие батники просто не работают в части выполнения JS кода.27 / 26 / 11
Регистрация: 25.03.2014
Сообщений: 217
Noname сборки неизвестного качества (особенности вот эту — Bat To Exe Converter (Rus From ICE_XAKEP).rar
выкладывать строго запрещено . )
Ссылка для просвещения, о чем вообще речь.

17987 / 7688 / 892
Регистрация: 25.12.2011
Сообщений: 11,466
Записей в блоге: 17
Официальный сайт утилиты — http://www.battoexeconverter.com/
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
Помогаю со студенческими работами здесь
Преобразование BAT в EXE с ресурсами
Добрый вечер. Прошу подсказать ,как из bat сделать exe. Bat написал.Там стоит команда ftp.Она.Компиляция BAT и VBS в EXE
Здравствуйте! Суть дела в том что необходимо добавить ветку в реестр со значением, используя права.BAT распаковки exe в папку с заменой
Подскажите bat команду распаковка портативного браузера "C:\Slimjet\sjt7z_x86.exe" в папку.
Можно ли из exe-файла получить bat?
Добрый день Подскажите пожалуйста, как можно из ЕХЕ получить ВАТ? Был bat воспользовался.Или воспользуйтесь поиском по форуму: