26.7.15

Правила создания REG-файлов

REG-файл создается в текстовом редакторе по описанным ниже правилам и сохраняется с расширением reg ( Имя_Файла.reg ).

ВерсияРедактораРеестра
ПустаяСтрока
;СтрокаКомментария
[ПервыйПутьРеестра]
"Имя_элемента_данных1"="Тип_данных1:Значение_данных1"
"Имя_элемента_данных2"="Тип_данных2:Значение_данных2"
Пустая строка
;СтрокаКомментария
[ВторойПутьРеестра]

;СтрокаКомментария
"Имя_элемента_данных3"="Тип_данных3:Значение_данных3"

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

Для Windows 98 или Windows NT она должна выглядеть так

               REGEDIT4

Для Windows 2000, XP, 7 и др.

               Windows Registry Editor Version 5.00

Вторая строка должна быть пустой

Последующие строки заполняются по такому шаблону:
Строка содержащая в квадратных скобках путь к разделу реестра в который собираемся вносить изменения. Если такого раздела не существует, то он будет создана при слиянии этого файла с реестром

                [HKEY_CLASSES_ROOT\Directory\Background\shell\Terminal\command]

Следом за этой строкой идут строки с изменяемыми параметрами данного раздела реестра. По строке на каждый параметр. Если этих параметров не существует, то они будут созданы

                "Icon"=""
                "Position"="Bottom"
                "MUIVerb"="Admin Tools"
                "SubCommands"="AIMP;CPUZ"

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

Удалить подраздел можно добавив после открывающей квадратной скобки перед путем к разделу знак минус

 [-HKEY_CLASSES_ROOT\Directory\Background\shell\Terminal\command]

Удалить параметр можно поставив знак минус в правой части после знака равенства

"SubCommands"=-

Оставляйте комментарии в REG-файлах. Это поможет разобраться в назначении файлов в будущем. Строка комментария начинается с точки с запятой

; Это комментарий и он не вноситься в реестр

21.7.15

Слияние редакций из нескольких образов Windows 7

1. Устанавливаем WAIK или WOPK для x86 платформы (именно x86 позволяет работать с образами для всех архитектур)
2. Распаковываем образы Windows 7 x86 и Windows 7 x64 в соответствующие пустые директории(Например: d:\work\x86; d:\work\x64)
3. Смотрим индексы редакций
dism /get-wiminfo /wimfile:"d:\work\x86\sources\install.wim"
dism /get-wiminfo /wimfile:"d:\work\x64\sources\install.wim"
4. Экспортируем редакции x64 из d:\work\x64\sources\install.wim в d:\work\x86\sources\install.wim
imagex /export "d:\work\x64\sources\install.wim" 1 "d:\work\x86\sources\install.wim" "Windows 7 HomeBasic (x64)" /compress maximum
imagex /export "d:\work\x64\sources\install.wim" 2 "d:\work\x86\sources\install.wim" "Windows 7 HomePremium (x64)" /compress maximum
imagex /export "d:\work\x64\sources\install.wim" 3 "d:\work\x86\sources\install.wim" "Windows 7 Professional (x64)" /compress maximum
imagex /export "d:\work\x64\sources\install.wim" 4 "d:\work\x86\sources\install.wim" "Windows 7 Ultimate (x64)" /compress maximum
5. В директории создаваемого образа ("d:\work\x86") удаляем файл \sources\ei.cfg для возможности выбора редакций
del "d:\work\x86\sources\ei.cfg"
6. Посмотрим информацию о новом install.wim
dism /get-wiminfo /wimfile:"d:\work\x86\sources\install.wim"
10. Обновим файлы каталогов. (Можно и не обновлять, но возможны проблемы при работе с файлом ответов)
Для этого откроем Windows System Image Manager
Меню "Файл">"Выбрать образ Windows..."
В открывшемся окне выбираем файл "d:\work\x86\sources\install.wim"
Выбраем редакцию x86 для обновления каталога
Если программа не предложила создать каталог, то идем в меню "Сервис">"Создать каталог..."
Повторяем процедуру для x64 редакции
11. Обратно запаковать всё в ISO-образ можно с помощью OSCDIMG, которая входит в WAIK и WOPK
SET source=d:\work\img
SET target=d:\work
SET bootloader="%source%\boot\etfsboot.com"
oscdimg -u2 -lWIN7 -m -h -b"%bootloader%" "%source%" "%target%\WIN7x86-x64.iso"

::-u2 - Создает образ, который имеет файловую систему UDF.
::-l  - Задает метку тома. Между параметрами l и метка пробелов быть не должно.
::-b  - Указывает на загрузочный файл образа, который используется для создания загрузочного сектора на DVD-диске или образе.
::-h  - Включает в создаваемый образ все скрытые файлы и папки, расположенные по указанному пути
::-m  - Игнорирует ограничение максимального размера образа.

8.7.15

Справка по командам MHDD 4.6

EXIT / QUIT / <ALT+X> Выход из программы

BATCH / <F5> Запуск пакетного файла на исполнение


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

Сменить канал на Secondary

Выполнить дважды сканирование с ремапом
Выполнить 10 раз стирание первых 10000 секторов
Сменить канал (накопитель)
Выполнить полную очистку диска

и т.д.

В этом же пакетном файле вы описываете реакцию программы на ошибки. Все происходящие события протоколируются в файл MH_BATCH.LOG.
Чтобы запустить пакетный файл на исполнение, достаточно нажать <F5> и ввести имя пакетного файла без расширения.
Все пакетные файлы должны находиться в каталоге BATCH.
Там же находится пример пакетного файла.

Формат пакетного файла
Первой строкой пакетного файла считается строка с номером версии MHDD, например:
V4.6
Версия нужна для избежания внештатных ситуаций запуска файла на несоответствующей версии MHDD. Когда автор изменяет формат команд BATCH-файла, он увеличивает и номер версии.
После строви с версией можно вводить команды. Регистр значения не имеет. Команды и параметры разделяются одиночным пробелом. Коментарии должны начинаться только с начала строки, первый символ строки-комментария должен быть ";" (точка с запятой).

HALT_ON При любой ошибке остановить работу пакета

HALT_OFF При возникновении ошибок работу продолжить

ENDSND_ON Включить звуковое оповещение о окончании каждого теста

ENDSND_OFF Отключить звуковое оповещение

ASK_ON Спрашивать подтверждение выполнения каждой команды

ASK_OFF Не спрашивать подтверждений

DEV_SELECT Вывести меню выбора дисков

DRV_ID Идентификация накопителя

DRV_RESET Сброс накопителя

DRV_STOP Останов шпинделя

SOUND <x> Включить звук (частота = х)

NOSOUND Выключить звук

DRV_SCAN <x> <y> <z> Сканирование поверхности

x = стартовый номер LBA (можно указывать "MIN" без кавычек)
y = конечный номер LBA (можно указывать "MAX" без кавычек)
z:  0 = только сканирование; 1 = включить ремап; 2 = включить Erase Delays

DRV_PORT <x> Переключить канал

x: 1 = Primary Master
...
x: 3 = Secondary Master
...
x: 6 = PCI, первый канал

BEEP <x> Сигнал х секунд

PAUSE <x> Пауза х секунд

REPEAT <x> Повторить следующую строку х раз

DRV_SEEK <x> Запуск seek test на х секунд

DRV_NHPA Восстановить заводской размер диска

DRV_WAIT Ждать готовности накопителя

DRV_ERASE <x> <y> Стирание поверхности накопителя

х - стартовый сектор (можно указывать "MIN" без кавычек)
у - конечный сектор (можно указывать "MAX" без кавычек)

HELP Краткая справка

CLS Очистка консоли

SCREENSHOT / <F10> Сделать снимок экрана в файл SCRSHOT.LOG

PORT / <SHIFT+F3> Меню выбора дисков

WAIT Издать сигнал, когда накопитель освободится (для отладки)

SCSIINFO / <F9> Вывести информацию о всех обнаруженных контроллерах и накопителях

MAN

ID Вывод краткой информации о накопителе

EID / <SHIFT+F2> Вывод расширенной информации о накопителе

PCISCAN Просканировать шину PCI и записать результат в MHDD_PCI.LOG

SCAN Сканирование поверхности и восстановление поврежденных секторов

Опция Remap: если встретится BAD-сектор, произвести попытку переназначения
Опция Erase Delays: если встретится BAD-сектор или "долгочитаемая" группа секторов, то выполнить запись в эту группу (обычно 255 сектора подряд)
Внимание: опция Erase Delays деструктивна  для данных!
Во время сканирования доступны следующие клавиши:
<ESC> - остановить сканирование
<R> - сбросить накопитель
<Клавиши управления курсором> - перейти к другому участку диска

SWITCHMBR Позволяет "активировать" и "деактивтровать" MBR

HPA Позволяет уменьшить физичексий размер диска

NHPA Вернуть оригинальный (заводской) размер диска

RHPA Отобразить оригинальный (заводской) размер диска

RX Получить буфер из диска (для отладки)

RST / <F3> Послать сигнал сброса накопителю

PWD Установить USER-пароль на диск

UNLOCK Временное снятие пароля

DISPWD Полностью разблокировать накопитель

Перед подачей этой команды следует подать команду UNLOCK

RPM Изменить частоту вращения шпинделя (работа этой процедуры не гарантирована)

FF Записать секторы диска. Данные для записи берутся из указанного файла

AAM Настроить шумовые характеристики накопителя

MAKEBAD Генерация BAD-блоков. Работает не на всех накопителях

RANDOMBAD Генерация бед-блоков, разбрасывая их случайным образом по поверхности

INIT Сброс и рекалибровка

FDISK Сделать один раздел на весь диск. Изменяется только MBR

SMART / <F8> Управление системой SMART, а также просмотр атрибутов

STOP / <SHIFT+F4> Остановить шпиндель

I / <F2> Послать команды ID, затем INIT

ERASE Выборочное стирание секторов или полное стирание поверхности (низкоуровневое форматирование)

Для стирания напрямую, минуя BIOS, можно отключить диск в настройках BIOS, либо стирать с параметром  /DISABLEBIOS.  На скорость стирания данный параметр не влияет.

FASTERASE Стирание поверхности на максимальной скорости (используется парольная система)

TOF Чтение секторов диска в файл

ATOF Чтение секторов диска в файлы, автоматическая нарезка файлов

CLRMBR Стирание MBR. Предварительно будет создана резервная копия

CX Тест поиска с замером среднего времени доступа к сектору

MAKELOG Сканирование диска и построение специального лога. По этому логу можно строить графики и воспроизводить результаты скана

SETCDSPEED Изменение текущей скорости привода IDE CD-ROM

UNITSIZE Изменить размер сектора. Требует последующего форматирования (SCSIFORMAT)

SCSIFORMAT Форматирование SCSI накопителя