Converter CMD to BBcode
Утилита для выкладывания файлов BAT, CMD на форум
с использованием цветовой темы для ключевых слов.
Это помогает лучше воспринимать код.
Скачать
страничка программы
Предлагаю воспользоваться и обсудить.
- Конвертирует в BBcode
- Конвертирует в HTML
- Преобразует кодировку 866 > 1251
- Имеет две темы (White и Black)
- Несколько второстепенных настроек
читать дальше »
Пример как это выглядит:
Код:
![Выделить весь код](images/misc/selectcode.png)
@ECHO OFF
REM Установка обработчика открытия папок в случае монтирования без запуска.
SET "FOLDER_OPEN=explorer.exe"
REM Проверка обязательных параметров
IF NOT EXIST "%SystemRoot%\system32\imagex.exe" ECHO Не найдена утилита для монтирования!&PAUSE&EXIT
REM Инициализация параметров "по-умолчанию"
IF NOT "%~1"=="" (SET "WIM_FILE=%~1") ELSE (ECHO Не указан WIM-файл для монтирования!&PAUSE&START notepad.exe "%SystemRoot%\SYSTEM32\readme_wim_loader.txt"&EXIT)
IF NOT EXIST "%WIM_FILE%" ECHO Не найден WIM-файл!&PAUSE&EXIT
SET "MOUNT_PATHS=%~dpn1"
SET "MOUNT_PATHS=%TEMP%\WIM_PRG\DISK_%MOUNT_PATHS::=%"
SET "WIM_SECTION=1"
REM Присвоение переменных в случае указания параметров через INI-файл.
IF "%~2"=="" (
IF EXIST "%~dpn1_wim_par.ini" (
FOR /F "USEBACKQ TOKENS=1* EOL=; DELIMS== " %%a IN ("%~dpn1_wim_par.ini") DO (
IF "%%a"=="FILE_LOAD" (SET "FILE_LOAD=%%b")
IF "%%a"=="WIM_SECTION" (SET "WIM_SECTION=%%b")
IF "%%a"=="MOUNT_PATHS" (SET "MOUNT_PATHS=%%b")
)
)
)
REM Присвоение переменных в случае запуска с указанием всех параметров из командной строки.
IF "%~2"=="2" (
IF NOT "%~3"=="" (SET "FILE_LOAD=%~3") ELSE (ECHO Не указан файл для запуска!&PAUSE&START notepad.exe "%SystemRoot%\SYSTEM32\readme_wim_loader.txt"&EXIT)
IF NOT "%~4"=="" (SET "WIM_SECTION=%~4")
IF NOT "%~5"=="" (SET "MOUNT_PATHS=%~5")
)
REM Отбрасывание последнего символа "\" в пути монтирования
SET "LAST_CHAR=%MOUNT_PATHS:~-1%"
IF "%LAST_CHAR%"=="\" SET "MOUNT_PATHS=%MOUNT_PATHS:~0,-1%"
REM Трансляция переменных окружения в реальные значения
FOR /f "usebackq tokens=1 eol=; delims=" %%a IN (`ECHO %MOUNT_PATHS%`) DO SET "MOUNT_PATHS=%%a"
REM Отбрасывание первого символа "\" в файле запуска
IF DEFINED FILE_LOAD (
SET "FIRST_CHAR=%FILE_LOAD:~0,1%"
IF "%FIRST_CHAR%"=="\" SET "FILE_LOAD=%FILE_LOAD:~0%"
)
REM Создание точки монтирования
IF NOT EXIST "%MOUNT_PATHS%" MD "%MOUNT_PATHS%"
IF NOT EXIST "%MOUNT_PATHS%" ECHO Не удалось создать точку монтирования!&PAUSE&EXIT
REM Присвоение маркера монтирования
IF DEFINED FILE_LOAD (SET "MOUNT_MARKER=%FILE_LOAD%") ELSE (SET "MOUNT_MARKER=*")
REM Проверка существование файла маркера...
FOR /R "%MOUNT_PATHS%" %%i IN ("%MOUNT_MARKER%") DO (IF EXIST "%%i" SET "IS_MOUNT=1")
REM Монтирование в случае когда файл-маркер не существует...
IF NOT "%IS_MOUNT%"=="1" (
"%SystemRoot%\SYSTEM32\imagex.exe" /mount "%WIM_FILE%" %WIM_SECTION% "%MOUNT_PATHS%">nul
)
REM Проверка существование файла маркера после монтирования...
FOR /R "%MOUNT_PATHS%" %%i IN ("%MOUNT_MARKER%") DO (IF EXIST "%%i" SET "IS_MOUNT=1")
REM Проверка существования файла маркера после монтирования
IF NOT "%IS_MOUNT%"=="1" (ECHO Не удалось смонтировать WIM-файл!&PAUSE&EXIT)
REM Считывание файла для запуска из внутреннего _wim_par.ini
IF NOT DEFINED FILE_LOAD (
IF EXIST "%MOUNT_PATHS%\_wim_par.ini" (
FOR /F "USEBACKQ TOKENS=1* EOL=; DELIMS== " %%a IN ("%MOUNT_PATHS%\_wim_par.ini") DO IF "%%a"=="FILE_LOAD" SET "FILE_LOAD=%%b"
) ELSE (ECHO Не существует описатель запуска _wim_par.ini!&ECHO Поэтому открываю папку...&START "%FOLDER_OPEN%" "%MOUNT_PATHS%\"&EXIT)
)
REM Проверка наличия параметра FILE_LOAD во внутреннем _wim_par.ini
IF NOT DEFINED FILE_LOAD (ECHO Описатель запуска _wim_par.ini не содержит параметра FILE_LOAD!&ECHO Поэтому открываю папку...&PAUSE&START "%FOLDER_OPEN%" "%MOUNT_PATHS%\"&EXIT)
REM Проверка существования файла для запуска
IF NOT EXIST "%MOUNT_PATHS%\%FILE_LOAD%" (ECHO Файл указанный для запуска не существует!&ECHO Поэтому открываю папку...&PAUSE&START "%FOLDER_OPEN%" "%MOUNT_PATHS%\"&EXIT)
REM Устанавливаю рабочую директорию для исполняемого файла
FOR /F "delims=" %%i IN ("%MOUNT_PATHS%\%FILE_LOAD%") DO CD /D "%%~dpi"
REM Запуск программы
START "" "%MOUNT_PATHS%\%FILE_LOAD%"
EXIT