Введення в роботу з образами і WIMGAPI
Все OC Windows, починаючи з Windows Vista, поширюються у вигляді .WIM файлів, новому форматі файлів образів. Його переваги:
- Файли образів Windows базуються на файловому форматі, що дозволяє зберігання кількох образів в одному файлі. Можливо виконання часткових захоплень диска, виключаючи файли (наприклад, файли підкачки), які не потрібні, щоб бути розгорнутими з образом.
- Формат WIM значно зменшує розміри файлу при використанні стиснення і методів зберігання єдиного примірника (файл образу містить одну фізичну копію файлу для кожного його примірника в файлі WIM, що значно зменшує розмір файлів, що містять кілька образів).
- Ви можете обслуговувати образ, що міститься у файлі WIM, включаючи додавання та видалення пакетів, оновлень програмного забезпечення та драйверів пристроїв, без багаторазового перевтілення нового образу, застосовуючи старий образ, налаштовуючи його, і знову захоплюючи його, коли всі зміни протестовані.
- Файли WIM можуть бути монтовані як каталоги, полегшуючи оновлення файлів в містять їх образах.
- Windows Imaging дозволяє неруйнуюче застосування способу до цільового комп'ютерного жорсткого диска. Можливе застосування способу до цільових дискам різного розміру, оскільки файли WIM не вимагають, щоб цільовий жорсткий диск був того ж самого розміру або більше ніж вихідний жорсткий диск.
- Файли образів Windows можуть бути розділені на частини, дозволяючи користувачеві використовувати накопичувачі на оптичних дисках, для поширення великих файлів WIM.
- Файли WIM для Windows PE (Preinstallation Environment) є Самозавантажний. Наприклад, користувач може завантажити Windows PE з файлу WIM.
WIMGAPI - це інтерфейс прикладного програмування (API) Windows Imaging, який розробники можуть використовувати для роботи з файлами WIM. API надає всю функціональність для роботи з образами: основна мета Imaging API (Wimgapi.dll) полягає в тому, щоб програмно захоплювати, змінювати, і застосовувати образи для розгортання у виробництві або корпоративної ІТ-середовищі. Фактично, інструмент ImageX - інтерфейс командного рядка для WIMGAPI. WIMGAPI введений починаючи з Windows Vista і вище.
Можливості WIMGAPI безмежні. Наприклад, розробник може використовувати функції API, щоб створити новий файл WIM і захопити образ в нього. Код розробника може змонтувати файл WIM як папку, оновити її вміст, і демонтувати файл образу. Нарешті, код розробника може підготувати жорсткий диск комп'ютера, створюючи розділи і форматуючи їх, а потім застосувати файл образу до диска. API навіть надає повідомлення зворотного виклику (callback повідомлення), які дозволяють коду розробника показувати прогрес та повідомляти користувача про помилки.
WIMGAPI дозволяє незалежним постачальникам програмного забезпечення і виробникам комплектного обладнання розробляти для третіх сторін продукти розгортання і обслуговування образів для задоволення практично будь-яких потреб. Це також дозволяє ІТ-розробникам легше створювати приватні рішення для роботи з образами.
Формат файлу Windows Imaging (WIM)
WIM - це файловий формат образу диска, який був введений в Windows Vista. Файли WIM - стислі пакети, які містять багато пов'язаних файлів. Формат файлу WIM оптимізований для максимального стиснення (використовуючи LZX), для швидкого стиснення (використовуючи XPRESS), або може бути несжатим.
Структура файлу WIM
Структура файлу WIM містить до шести типів ресурсів: заголовок, ресурси файлу, ресурс метаданих, довідкову таблицю, дані XML і таблицю цілісності. Ілюстрація нижче показує загальний опис файлу WIM, який містить два зображення.
Опис файлу WIM
Робота з WIMGAPI
API бібліотека для Windows Imaging складається з наступних файлів:
Я продемонструю, як використовувати WIMGAPI на C ++. C ++ був обраний з тим, щоб дозволити додатком працювати як в повній версії Windows ОС, так і в Windows PE. Windows PE не містить .NET, проте якщо ваша заявка розробляється тільки для повної версії Windows, то WIMGAPI може бути використано з C # за допомогою PInvoke / DLLImport. Демонстраційне додаток може бути зібрано як для x86, так і для x64 / AMD64 архітектур. Три операції WIMGAPI будуть розкриті в демонстраційному прикладі:
- Захоплення образу диска або каталогу в файл WIM.
- Застосування способу з файлу WIM до диску або каталогу.
- Видалення зображення з файлу WIM.
Щоб обробити помилку / повідомлення про стан, ми повинні реалізувати функцію зворотного виклику (Callback-функцію) наступним чином:
Зауваження щодо демонстраційного коду.
висновок
Як ми бачимо, робота з WIMGAPI є досить простий і прямий. WIMGAPI дозволяє незалежним постачальникам програмного забезпечення і виробникам комплектного обладнання розробляти свої власні настроюються рішення для розгортання і відновлення образів, для використання в середовищі Windows.
Список літератури
- Windows 7 AIK Documentation