С момента появления первой Windows и до сегодняшних дней множество
пользователей выказывали свое недовольство по тем или иным проблемам, связанным
с данной ОС. Особенно досталось разлетающимися язвительными каламбурами всеми
«любимой» «Висте». Конечно, в каждой шутке есть только доля шутки, а остальное
все – правда. Но болтать – не мешки ворочать, а создать собственную стабильную и
производительную сборку редмондской операционной системы может не каждый
«нигилист».
WAIK
Microsoft довольно часто пресекала на корню любые попытки изменения
стандартной конфигурации «Виндоус». Ну не нравится ей, когда «копаются» во
внутренностях ее продуктов. Как оказалось, софтовый гигант не устоял перед
натиском любопытных пользователей и с появлением шестой операционки выпустил
пакет автоматической установки
WAIK (Windows Automated Installation Kit, 756.8 Мбайт).
ЧТО? Windows 9 существует??
Основой «мелкомягкого» конструктора является Microsoft Windows
Preinstallation Environment (WindowsPE) – операционная система в
минимальной конфигурации. Функциями среды являются помощь при установке
«окошек», а также запуск компьютера без ОС, редактирование, создание разделов
винчестера и их форматирование. Всевозможные программы-восстановители
операционных систем на ноутбуках (о них чуть позже) работают именно с пакетом
автоматической установки от конторы Билла Гейтса. В свою очередь, WPE целиком и
полностью опирается на возможности консольной утилиты ImageX, работающей
с образами формата .wim (windows image), и Windows Deployment Services (WDS) –
сервиса централизованного развертывания, помогающего через локальную сеть
установить систему сразу на несколько компьютеров. Важной частью по созданию
собственной «оконной рамы» является приложение Windows System Image Manager
(WSIM), отвечающее за создание файла ответов формата .clg (каталоги). Но
я бы посоветовал первым делом пристально изучить руководство по работе с Windows
AIK.
Автоматический пакет установки работает с операционными системами XP (не ниже
второго SP), Vista и Server 2008 (следовательно, и Windows 7). Пример создания
своего дистрибутива в этой статье приводился на основе 64-битной Windows Vista
Ultimate.
Шаманим в консоли
Из подопытного DVD, из папки sources, копируем файл install.wim (размером
почти 3 гигабайта) в директорию, например, «howto». Теперь пришло время консоли.
Запускаем ImageX и в появившейся командной строке набираем:
imagex /mountrw c:install.wim 4 c:howto mounting (RW): [c:install.wim, 4]
-> [c:howto]
Каждый набор символов вне квадратных скобок обязателен для выполнения
задуманного действия. Отсутствие (или неправильное написание) содержания скобок
Новенькая на работе Дед Мороз и Снегурочка
приведет к сохранению образа в корне приложения WAIK (С:Program FilesWindows
AIK). Слово /mountrw импортирует wim-файл в режиме чтение/запись, а цифра «4»
означает тип создаваемой сборки (в данном случае это Ultimate).
Посмотреть, какой вид операционной системы соответствует какому номеру, можно
тут же, набрав в окне командной строки imagex/INFO c:install.wim. В появившемся
ответе высветится фраза вида Windows Vista HOMEPREMIUM.
После монтирования образа в ImageX можно переходить непосредственно к
улучшению стандартной сборки. Все очень просто: записываем в ту же папку «howto»
драйвера формата .inf и набираем в черной-черной строке «заклинание»:
peimg /inf=c:howto*.inf /image=c:howtowindows
Точно так же выполняются команды по интегрированию других файлов. Если
требуется установка данных (программ, сервис-паков), смело набираем
peimg /install=WinPE-HTA c:howtomountwindows
где HTA – строка подстановочных знаков.
Предпоследним консольным действием проверяем интегрированное добро и утилиты:
peimg /list c:howtomountWindows
Финальную черту подводит строчка закрытия созданного образа:
imagex /unmount /commit c:howto
Вот и все, install.wim готов! Остается создать так называемый файл ответов (Answer
File, AF) – меню, задающее множество вопросов при установке операционной системы
и отвечающее за компоненты и сервисы системы. При его правильной настройке
Windows не будет запрашивать ключ, учетные записи и многое другое. К тому же
именно через AF можно провести твик ОС, выставив все параметры заблаговременно.
Менеджер среднего звена
Достичь столь желанного автоматизма поможет упомянутая программа Windows
System Image Manager. Только что созданный образ необходимо загрузить с
помощью меню file программы. После запроса и минутного ожидания в окошке Answer
File получаем запрос на выбор версии ОС. Теперь из нижнего левого экрана Windows
Image можно сортировать встроенные приложения (Components) и элементы (Packages)
«Висты». Кутузову не снился такой план маневров, который предлагается избрать
при настройке системы. Добавлению и удалению подлежит практически все: без
проблем можно избавиться от встроенного плеера, дефрагментатора, «Пэйнта»,
графических эффектов и другой туевой хучи «барахла». Также разрешается «выгнать»
ненужные драйверы Windows и настроить под себя сервисы. Всего-то и требуется,
что установить в меню Properties какого-либо приложения параметр true или false.
Например, файл x86_Microsoft-Windows-Foundation-Package изменением настроек
позволит удалить встроенные игры, а заодно и освободить немного драгоценного
места на жестком диске. В некоторых компонентах можно выбирать настройки.
Например, Internet Explorer’у разрешено установить уровень фильтрации.
Думаю, стоит напомнить о нелишней осторожности при создании нового файла
ответов. Хотя Microsoft подстраховалась, введя в меню семиуровневую оценку
элементов Insert Pass: windowsPE, offlineServicing, package(s), specialize,
auditSystem, auditUser и oobeSystem. Выбрав четвертую строчку, ты получишь метку
UserData в панели файла ответов, в свойствах которой можно задать лицензионный
ключ операционной системы. Если ты не помнишь хаотично составленного
регистрационного номера, воспользуйся утилитой – например, TuneUp Utility. В том
же меню не забудь установить параметр WillShowUI в режим never. И так далее.
Заполнение говорящих за себя строчек, типа Organization и Full Name, не должно
вызвать каких-то сложностей. Лучше давай сразу же поделим жесткий диск!
Пилим блины
Манипуляция осуществляется по принципу: «как два пальца об асфальт».
Вставляем новый диск в меню DiscConfiguration и задаем необходимые опции (CreatePatitionsModifyPartitions).
Как ты уже догадался, пользователю разрешается изменить тип файловой системы,
размер нового локального диска и название из одной заглавной буквы. Также можно
залить утилиты, которые будут установлены одновременно с Windows. Создаем папку
soft (которую потом нужно разместить в каталоге будущего дистрибутива) и
закидываем в нее все необходимые программы и дополнения. А затем в меню
oobeSystem выбираем «синхронная команда» и пишем, например:
Большое количество приложений удобнее записать в файле ответов через
пересылочный текстовый файл, используя функцию строки cmd.
Последним шагом создания собственного дистрибутива операционной системы
служит проверка только что «испеченного» файла ответов и замена полученных
файлов в образе установочного DVD.
Долгожданный набор команды
oscdimg –u2 –bc:howtobootetfsboot.com -1SJ_os –h c:howto c:SJ_os.iso
в консоли ImageX создаст образ (в моем случае – SJ_os) твоей индивидуальной
операционной системы. Значение «–h» позволяет добавить в дистрибутив скрытые
папки и файлы, «-1» выставляет метку, а «b» указывает на загрузочный файл.
Создание своей сборки операционной системы средствами WAIK только сперва
кажется трудным и запутанным. В начинаниях всегда поможет обширное руководство,
прилагаемое к образу. Немного желания, и создание дистрибутива займет не больше
времени, чем ручная оптимизация системы после инсталляции. К тому же настроенный
файл ответов позволит спокойно заниматься своими делами, пока идет установка ОС.
Если мои доводы кого-то не убедили, предлагаю воспользоваться утилитой
GImageX. С ее помощью
можно легко (без применения командной строки) преобразовать файл install.wim.
Функционал тезки ImageX ничуть не уступает рассмотренной среде.
Ковыряем CD ASUS Eee PC
Самым ощутимым достоинством использования Windows AIK является полная «лицензионность»
полученной версии операционной системы. Но есть такие устройства, в которых
применение пакета автоматической установки Microsoft нерационально. К таким
можно отнести столь популярный нетбук ASUS Eee PC 701. «Хиленький»
селерончик с частотой 630 МГц, смешной на сегодня объем оперативной памяти в 512
Мбайт (64 которых уходят на нужды графического чипа) и несчастные 4 гигабайта
ПЗУ представляют довольно унылую картину. А тут еще и Windows XP, в совокупности
с дополнительными программными пакетами, оставляет пользователю всего 250 Мбайт
свободного пространства. Выход один – поудалять все к чертовой бабушке! Более
креативным способом решить проблему нехватки столь драгоценного места можно,
создав сборку операционной системы с нуля. Давай поможем нашему крохотному
другу!
В прилагаемом к нетбуку компакт-диске ASUS Recovery System в папке RECOVERY
находится файл EeePC. В совокупности с утилитой Norton Ghost за считанные
мгновения происходит восстановление системы. Через нее можно переустановить XP.
Но для создания дистрибутива нужно зайти в каталог i396XP, где под шпионским
названием Eee PC Multilanguage package и представлен дистрибутив Windows XP HOME
SP2.
Копируем папку целиком на жесткий диск. С той же болванки можно скопировать
драйверы ноутбука ASUS в нужную директорию. Отличным «сборщиком» Windows XP и по
сей день является бесплатная софтина
nLite. Но для того чтобы
программа опознала только что созданную папку i386XP, необходимо туда же
скопировать файлы WIN51 (нужен для установки SP3) и WIN51IC. Найти их можно в
каком-нибудь дистрибутиве пятых «окошек» либо на просторах всезнающего Google. В
тот же каталог переносим BOOTFONT.BIN, если не хотим при установке системы
видеть вместо русской символики непонятные иероглифы. Ну вот и все. Время
работать с конструктором ОС.
nLite
При запуске программы nLite вежливо попросит нас оказать услугу в виде
избрания языка взаимодействия с утилитой (по умолчанию с тобой будут «общаться»
на шекспировском наречии). Выбираем великий и могучий и, в следующем окне
указываем путь к созданному каталогу i386XP. После десятисекундной задержки
программный экран оповестит тебя о модели «Винды», языке установки, сервис-паке,
версии и весе «нетто» в мегабайтном эквиваленте. В меню «Предустановки»
отображаются последние сборки. Если программа запускается впервые, то это окно
не вызовет у пользователя особого интереса. А вот функция «Выбор задач»
предоставляет возможность полного манипулирования операциями («интегрировать»,
«удалить», «установка», «создать ISO-образ») по созданию своей сборки. Первый по
порядку пункт «Сервис-пак» позволяет интегрировать SP3. Кстати, официальные
ссылки на сайт Microsoft, приведенные в окошке, не работают :). Так что ищи
пакет в другом месте. Далее nLite разрешает внедрить в ОС драйверы (формата .inf),
хотфиксы и стороннее ПО (браузер, плеер и т.д.). Меню «Компоненты», наоборот,
удалит виновников, в честь которых назвали этот пункт. Красным цветом выделяются
опции, отключение которых может привести к неработоспособности ОС. Но разве
нетбуку ASUS нужна поддержка процессоров AMD, фильтров AGP и FireWire? А вот
поддержку «синезубых» устройств и батареи лучше не трогать. Также не вижу смысла
нетбуку с флеш-картой устанавливать дефрагментатор, игры и (внимание!) «того
надоедливого пса в поиске» :). А для экономии места можно избавиться от
необязательных папок docks, support и др. В общем, не жалей время и хорошенько
покопайся в настройках. В следующем меню «Автоматизация» редактируется файл
ответов. Выставив оные раз и навсегда, впредь разрешается не вносить серийный
ключ, название компьютера и учетные записи.
Также можно настроить автоматическое обновление, и даже опции монитора.
Основным при использовании данной функции является вкладка «автоматический
режим». Неверный выбор, и во время установки ОС придется выполнять действия, как
при обычной инсталляции:
- «Provide defaults» показывает измененные параметры как настройки
по умолчанию. В момент установки ты с легкостью сможешь изменить их; - «Fully automated» производит установку без возможности
вмешательства пользователя. Если какой-либо параметр или драйвер неверен, то
инсталлятор пропускает его, продолжая самоличный процесс инсталляции
(телодвижения по установке ОС превращаются в одно нажатие клавиши «Enter»); - «Hide pages» – определяет, что ответы в графах меню – значения по
умолчанию. В отличие от «provide defaults», установка не отображает
интерфейс пользователя в ходе установки; - «Read only» – режим говорит сам за себя. Ответы определяются и
показываются только для чтения (если, конечно, эти ответы существуют).
Установка производится без вмешательства юзера, если все графы заполнены; - «GUI attended» – определяет контролируемую на всех стадиях
инсталляцию. Когда необходимо, пользователь должен ответить на все вопросы
перед завершением установки; - и последняя опция «Prompt repair». Шестой режим включает функции
ремонта и необходим для восстановления поврежденной операционной системы.
Осталось совсем немного. В меню «Настройка» располагаются одни из самых
полезных системных опций перед установкой, например, изменение пути и патчи.
Предпоследним окошком «опции» настраиваются службы Windows XP. Можешь провести
твик заранее, что очень удобно при периодической переустановке операционной
системы.
Осталось подождать, пока nLite сгенерирует сборку, и записать ее в ISO-образ.
Полученный файл заменяем, как в восстановительном компакт-диске от ASUS, и
используем по назначению. Но вот беда: у «малыша» Eee нет привода! Если под
рукой не оказалось внешнего DVD-ROM’а, предлагаю воспользоваться одной из
множества утилит по созданию загрузочных USB-устройств, а именно – UNetbootin.
Принцип работы прост до безобразия. В проводнике программы выбираем только что
созданный образ и флешку, с которой будем загружаться. Остальные манипуляции не вызовут у тебя
сложностей, и через некоторое время Windows XP благополучно установится на нетбук.
Размер собственной ОС составил всего 648 Мбайт (при
размере образа в 290 Мбайт), что существенно меньше чем раньше. А после установки всего необходимого программного обеспечения места вполне хватит для спокойного использования ASUS Eee 701. Чего и тебе желаю!
Источник: xakep.ru
Что такое комплекты Windows и как они работают?
В старые добрые времена при разработке C++ проекта под Windows в Visual Studio, ваша версия Visual Studio имела свою собственную версию библиотек C и C++, и ваш проект должен был ссылаться на определенную версию Windows SDK, чтобы получить доступ к заголовкам для доступа к платформе Win32. Если у вас было установлено несколько версий Windows SDK, существовала сложная система с переменными окружения, которая позволяла вам выбрать, какую версию Windows SDK Visual Studio будет использовать по умолчанию.
Это было не очень хорошо, и чтобы заставить ее работать правильно, нужно было немного покопаться в ней, но она почти работала.
Я только что обновился с VS2012 до VS2015, и мне кажется, что система, которой заменили эту, либо откровенно сломана, либо я ее просто не понимаю.
- Обновление простого консольного приложения VS2012 C++, включающего conio.h, до VS2015 завершается без сообщения об ошибке. Почему? conio.h больше не находится в библиотеках Visual Studio C/C++, а вместо этого живет в Windows Kit 10, обновление проекта не переустанавливает используемый SDK (как можно было бы ожидать).
- Создание совершенно нового приложения Hello World C++ в VS2015 Директории include проекта C++ наследуют $(VC_IncludePath) и $(WindowsSDK_IncludePath). $(WindowsSDK_IncludePath) берет заголовки из C:Program Files (x86)Windows Kits8.1, а $(VC_IncludePath) берет заголовки из C:Program Files (x86)Windows Kits10.
Таким образом, простое обновление проектов проходит без ошибок, о которых не сообщается при обновлении. Чистые новые консольные проекты тянут заголовки из двух разных установок Windows Kit одновременно, и теперь у меня есть записи для 8.1 и 10 в C:Program Files (x86)Microsoft SDKs и C:Program Files (x86)Windows Kits. Windows Kit 8.1 содержит заголовки Win32 и WinRt, а Windows Kit 10 содержит заголовки C/C++.
Я неправильно настроил и испортил установку или это беспорядок, как и должно быть?
Если все так, как должно быть, то как это должно работать? Я пробовал искать в MSDN информацию о наборах Windows, но ничего не нашел, кроме материала о Windows Driver Kit, который раньше был чем-то совершенно другим, но я не знаю, является ли он таковым и сейчас.
Есть ли какая-нибудь документация, которую я пропустил, объясняющая смысл этой конфигурации библиотеки и то, как ее предполагается использовать?
13 2016-04-25T13:47:33+00:00 1
Решение / Ответ
23-го мая 2016 в 11:09
2016-05-23T11:09:20+00:00
Дополнительно
Я уже несколько раз сталкивался с различными вариантами этой проблемы, причем проблемы возникали как с разрешением заголовочных файлов, так и с зависимостями библиотек в проектах, обновленных с VS2012 до VS2015.
Комментарий Hans’ в ответ на мой вопрос действительно решает проблему для заголовков, но после столкновения с той же проблемой для библиотечных зависимостей у меня есть более простое решение, которое работает и для неудачного разрешения библиотечных зависимостей.
При открытии проекта VS2012 в VS2015 не происходит автоматического обновления. Открытие свойств проекта и изменение General -> Platform Toolset на Visual Studio 2015 (v140), скорее всего, воспроизведет либо вариант ошибки разрешения заголовков, описанной в моем первоначальном вопросе, либо другую ошибку разрешения библиотечных зависимостей.
Самый простой способ, который я нашел, чтобы исправить это, это открыть свойства проекта и перейти к VC++ Directories -> Include Directories. Среди всех путей, которые вы могли добавить в проект самостоятельно, вы, вероятно, найдете $(VCInstallDir)include;$(VCInstallDiratlmfcinclude;$(WindowsSDK_IncludePath)
Щелкните на пути, чтобы отобразить выпадающий список и нажмите кнопку редактировать, в результате появится диалог с тремя секциями, сверху вниз, явно определенные пути, оцененные пути и унаследованные пути. В самом низу есть флажок ‘Наследовать от родителя или проекта по умолчанию’, который я всегда считал изначально не отмеченным.
Из явно определенных путей включения удалите записи $(VCInstallDir)include;$(VCInstallDiratlmfcinclude;$(WindowsSDK_IncludePath), описанные выше, и выберите настройку ‘Наследовать от родительских или проектных настроек по умолчанию’. Это должно решить все проблемы с зависимостями заголовочных файлов.
Если у вас также есть проблемы со ссылками на библиотеки, сделайте то же самое с записями Library Directory, отредактируйте настройки, удалите явные записи plaform и выберите ‘Inherit from parent or project defaults’. (Это может быть хорошей идеей сделать это, даже если вы не видите ошибок компоновщика, иначе вы можете использовать опцию компилятора набора инструментов платформы для VS2015 при компоновке с библиотеками для VS2012).
Я не знаю, почему это происходит у меня, если я не сталкивался с подобными проблемами у других, у меня не было проблем с обновлением решений Visual Studio раньше.
Я также не выяснил, почему некоторые версии Windows Kits теперь содержат либо заголовки платформы Windows, либо заголовки библиотек C++, тогда как раньше SDK’ы всегда содержали заголовки платформы, а заголовки C++ всегда были частью установки Visual Studio. Кажется, что подобные изменения должны быть описаны в блоге разработчиков или в другой документации. Но пока это работает, меня это не слишком волнует.
Надеюсь, это кому-нибудь поможет.
Источник: de-vraag.com