Msiexec — описание команды и примеры использования

Чем открыть файл в формате MSI

Формат MSI (полн. Windows Installer Package) представляет собой файл, являющийся одним из основных инсталляционных компонентов Windows. Расширение MSI включает установочный архив, необходимый для оперативной и корректной инсталляции различных программных приложений на платформе Windows. Данный формат может быть эффективно использован как для установки внешнего программного обеспечения от сторонних разработчиков, так и для обновления компонентов операционной системы. MSI файл содержит исчерпывающую информацию, которая требуется инсталлятору для корректной установки утилиты (плагина) и обработки интерфейса пользователя.

Каждый подобный инсталляционный пакет в виде MSI файла включает структурированную базу данных на основе OLE, которая представляет собой набор из взаимосвязанных электронных таблиц с данными о программном приложении и последовательности процессов его установки.

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

Помимо базы данных в виде электронных таблиц, MSI расширение может содержать пользовательские проекты (написанные на JScript, VBScript или Eclipse), различные динамические DLL библиотеки (если того требует установка), а также сами инсталляционные пакеты в виде CAB архивов.

Так как стандартный MSI файл – пакет данных, то распаковать его можно с использованием типового архиватора, например, 7-Zip.

Доступен он будет также и при помощи командной строки cmd.exe, в которой следует выполнить команду: msiexec /a c:filename.msi /qb TARGETDIR=c:tmp.

Следует отметить, что полным аналогом MSI расширения является MSU. Однако последнее функционирует исключительно на платформе Windows Vista.

Программы для открытия MSI файлов

MSI расширение может быть сгенерировано и открыто для редактирования только на базе ОС-Windows.

Для этого могут быть использованы следующие программных комплексы и архиваторы данных:

На платформе Mac и Linux практическое использование расширения не предусмотрено.

Если при открытии расширения MSI возникает ошибка, причины могут заключаться в следующем:

  • поврежден или инфицирован файл;
  • файл не связан с реестром ОС (выбрано некорректное приложение для воспроизведения или не произведена инсталляция конкретного плагина);
  • недостаточно ресурсов устройства или ОС;
  • поврежденные или устаревшие драйвера.

Конвертация MSI в другие форматы

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

Почему именно MSI и в чем его достоинства?

MSI расширение не является востребованным в среде обычных пользователей и применяется сугубо как инсталляционный компонент Windows, необходимый для определения последовательности этапов и включающий в себя определенные сценарии:

  • сбор инсталляционных данных;
  • вызов исполнительных команд, отвечающих за установку;
  • вероятностный откат в случае сбоя операционной системы и прерывания инсталляции.

Содержит информацию инсталляции для конкретной программы установки, например, файлы, которые должны быть установлены, и директория инсталляции. Может применяться для обновлений Windows, а также сторонних установщиков программ.

Содержимое пакета MSI может извлекаться при помощи утилиты декомпрессии файлов 7-Zip.

Примечание: в Windows Vista файлы .MSU используются для установки системных обновлений и хотфиксов.

Чем открыть файл в формате MSI (Windows Installer Package)

5 простых способов запуска программы в Windows 10 от имени другого пользователя

Во всех поддерживаемых версиях Windows существует возможность запускать в текущей сессии программы от имени другого пользователя ( Run As ). Благодаря этому можно выполнить скрипт (.bat, .cmd, .vbs, .ps1), исполняемый .exe файл или запустить установку приложения (.msi, .cab) с полномочиями другого пользователя (привелигированного).

К примеру, благодаря возможности использовать функционал Run As можно в сессии пользователя с ограниченными правами запустить установку программы или открыть нужную MMC оснастку управления компьютером под административной учетйно записью. Также возможность запуска программы «от имени» может быть полезна в ситуациях, когда приложение настроено под другим пользователем (и соответственно хранит свои настройке в чужом профиле, к которому у данного пользователя нет данных), а его нужно запустить с теми же настройками в сессии другого пользователя.

В Windows 10 есть несколько способов запустить процесс от имени другого пользователя.

Учетная запись администратора

Второе решение ошибки «Запрошенная операция требует повышения», которое мы рассмотрим, это активация учётной записи администратора, встроенной в систему Windows, и выполнение нужных операций из под пользователя Администратор.
Данный способ не очень желателен, так как после входа в систему под учётной записью Администратор юзеру станет доступно большее количество функций и возможностей, которые, с одной стороны, абсолютно не нужны рядовым пользователям ПК, а с другой — могут навредить системе и её компонентам при бесконтрольном использовании.

Тем не менее, возможность активации встроенной учётной записи Администратор есть, и данную возможность нужно рассмотреть. Приведём три способа активации пользователя Супер Администратор.

Активация Администратора через утилиту Локальные пользователи и группы

Чтобы вызвать окно настроек пользователей, запускаем программу Выполнить из Пуск — Все программы — Стандартные — Выполнить (в Windows 10 утилита Выполнить находится в каталоге Служебные) либо одновременным нажатием кнопок Win и R и выполняем команду lusrmgr.msc (сокращённо от local user manager, что с английского и означает «управление локальными пользователями»)

В левой части открывшегося окна переходим в папку Пользователи, после чего в основной области окна находим пользователя Администратор, который будет помечен кружочком со стрелочкой, указывающей вниз. Эта иконка означает, что данная учётная запись отключена и находится в неактивном состоянии.

Щёлкаем по строчке Администратор правой кнопкой мышки и открываем Свойства записи. В окне Свойства: Администратор на вкладке Общие находим пункт Отключить учетную запись и снимаем у этого пункта флаг-галку. Нажимаем кнопку OK.

В дальнейшем для отключения встроенного администратора нужно будет просто снять галку в этом же месте.

Активация Администратора через утилиту Локальная политика безопасности

Для перехода к настройкам локальной политики безопасности компьютера также запускаем программу Выполнить из Пуск — Все программы — Стандартные — Выполнить (в Windows 10 утилита Выполнить находится в каталоге Служебные) либо одновременным нажатием кнопок Win и R и выполняем команду secpol.msc (от английского security policy — «политика безопасности»)

В открывшемся окне в левом древовидном списке параметров разворачиваем ветку Локальные политики и выделяем курсором пункт Параметры безопасности. Теперь в правой части окна находим пункт Учетные записи: Состояние учетной записи ‘Администратор’, щёлкаем по нему правой кнопкой мыши и переходим к Свойствам

В открывшемся окне на вкладке Параметры локальной безопасности активируем вариант Включен и нажимаем кнопку OK.

Для деактивации учётной записи администратора нужно, соответственно, переключить флаг-галку в положение Отключен.

Активация Администратора из командной строки

Последний способ активации встроенной в Windows учётной записи администратора, который мы рассмотрим, будет выполняться в командной строке. Ввиду необходимости работы с консолью Windows этот вариант не самый популярный, но, на самом деле, он даже быстрее двух предыдущих.

Для начала запускаем командную строку от имени администратора. Сделать это можно как привычным вызовом меню по правой кнопке мыши на ярлыке, так и следующим образом на примере Windows 10: правой кнопкой мышки нажимаем на кнопку Пуск в левом нижнем углу монитора и в открывшемся списке выбираем пункт Командная строка (администратор)

Далее в открывшемся окне консоли выполняем следующую команду:

net user Администратор /active:yes

В ответ мы должны получить уведомление от консоли о том, что Команда выполнена успешно. Если вместо этого командная строка отвечает, что «Не найдено имя пользователя. Для вызова дополнительной справки наберите NET HELPMSG 2221.», это означает, что мы используем версию операционной системы, предназначенную для другого языка.

В таком случае активируем администратора другой командой:

net user Administrator /active:yes
net user Администратор /active:no
net user Administrator /active:no

Далее, независимо от выбора способа активации пользователя Администратор, нам нужно перезагрузить компьютер. При запуске системы после перезагрузки нам будет предложено на выбор несколько пользователей для входа в ОС, среди которых выбираем активированную нами ранее запись Администратор.

Мы настоятельно рекомендуем вам входить в систему под администратором только в случаях возникновения необходимости, а в повседневной работе с ПК использовать свою учётную запись, пусть и наделённую правами администратора.

Практика: создание архива с полными правами из контекстного меню

Наверняка, у вас в контекстное меню интегрирован архиватор 7-Zip или WinRar. Недавно в форуме TechNet один участник сетовал на невозможность создания архива в корне диска или системной папке. Например, у него есть папка Logs, которую очень удобно архивировать из контекстного меню с помощью каскадного меню архиватора.

Из контекстного меню архиватор запускается с обычными правами, и на создание архива в системном расположении у него не хватает полномочий. В Windows 7 и Vista предусмотрена такая ситуация, и архив создается, хотя в корне диска файл не отображается. Впрочем, достаточно нажать в проводнике кнопку Файлы совместимости, .

При острой необходимости вы можете добавить в меню свой пункт полноправного архиватора, что будет работать с некоторыми ограничениями.

Windows Registry Editor Version 5.00




"MUIVerb"="Архивировать с правами администратора"
"HasLUAShield"=""
"Icon"="\"C:\\Program Files\\7-Zip\\7zFM.exe\""
"Extended"=""


@="nircmd elevate \"C:\\Program Files\\7-Zip\\7z.exe\" a \"%1\".7z \"%1\""

При вызове контекстного меню папки с нажатой клавишей SHIFT это выглядит так:

Обратите внимание на два момента:

  1. Параметры добавляются в подраздел AllFilesystemObjects. Раньше мы имели дело с файлами, но нередко нужно добавить в архив папку. Этот подраздел отвечает за все объекты файловой системы, т.е. файлы и папки.
  2. Команда выглядит запутанной из-за двойных и экранирующих кавычки слэшей в REG-файле, но в реестре она смотрится понятнее:
    nircmd elevate "C:\Program Files\7-Zip\7z.exe" a "%1".7z "%1"

    Первый параметр %1 задает полный путь к расположению 7z архива, при этом его имя будет таким же, как у архивируемого объекта. Другими словами, архив создается на одном уровне с архивируемой папкой или файлом с таким же именем. Второй параметр %1 указывает на папку или файл, добавляемые в архив.

Ограничения этого способа

К сожалению, такой пункт меню работает неидеально. Если выделить несколько папок или файлов, каждый объект помещается в отдельный архив. Оболочка (проводник) последовательно передает архиватору в качестве имени архива первый параметр %1, т.е. полный путь к каждому файлу или папке.

Это можно обойти, указав вместо первого экземпляра %1 фиксированное имя архива (например, archive.7z).

nircmd elevate "C:\Program Files\7-Zip\7z.exe" a archive.7z "%1"

В этом случае архив будет последовательно обновлен при добавлении каждого файла.

Постоянное имя архива, конечно, не очень удобно, но с этим можно было бы мириться, если бы не второе ограничение. Оно связано с одновременным обращением к нескольким объектам, т.е. для каждого выводится запрос UAC. Эту проблему . В контексте архиватора она выражается в том, что некоторые выделенные объекты не попадают в архив.

Как видите, самодельный пункт контекстного меню, добавленный в реестр, не столь удобен, как полноценные расширения оболочки, с помощью которых архиваторы интегрируются в проводник. Однако в них вообще не предусматривается запуск архиватора с полными правами.

Вы заметили, в чем основная проблема с запуском файлов из контекстного меню с полными правами? Все дело в том, что проводник запущен с обычными правами, и команды контекстного меню их наследуют.  Казалось бы, решение лежит на поверхности – нужно запустить проводник с правами администратора, дело в шляпе!

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

А как часто вы сохраняете файлы в корне системного диска или правите файлы в системных папках? Отвечая на вопрос, не забудьте указать, включен ли у вас UAC :)

Описание расширения MSI

Популярность:

Разработчик: Microsoft

Расширение MSI – это файл, который обычно связан с сервисом установщика Microsoft Windows Installer, который является компонентом Windows, начиная с Windows 2000. *.MSI файл содержит установочный пакет для быстрой и безупречной установки на платформе Windows. MSI файл может быть использован как сторонними разработчиками для установки программного обеспечения, так и для обновления Windows. Эти файлы содержат всю информацию, которая необходима установщику Windows для установки или удаления приложения или продукта, и для конфигурации пользовательского интерфейса.

Каждый такой пакет установки включает в себя файл *.MSI, представляющий собой составной документ OLE, содержащий установочную базу данных – набор из взаимосвязанных таблиц, содержащих различную информацию о продукте и процессе установки. Кроме базы, в .MSI файле можно помещать пользовательские сценарии (написанные на JScript, VBScript или Eclipse) и вспомогательные DLL, если таковые требуются для установки, а также сами устанавливаемые файлы, запакованные в формате .CAB.

Файл с расширением MSI так же можно распаковать с помощью архиваторов, например, 7-Zip или с помощью утилиты коммандной строки (cmd.exe), в ней необходимо выполнить команду: msiexec /a c:filename.msi /qb TARGETDIR=c: mp

ПРИМЕЧАНИЕ: В Windows Vista файлы .MSU используются для установки обновлений и исправлений системы.

Довольно распространённая проблема среди пользователей операционной системы Windows любых версий – ошибка msi при установке программ из файла с расширением .msi. В этой статье я опишу часто встречаемые проблемы с установщиком Windows 7/10/XP и варианты их решения, а также сделаю видео по текущему вопросу.

Файлы с расширением .msi это обычные пакеты установки (дистрибутивы) из которых ставится программа. В отличии от обычных «setup.exe», для запуска файла msi система использует службу Windows Installer (процесс msiexec.exe). Говоря простыми словами, установщик Windows разархивирует и запускает файлы из дистрибутива. Когда Windows Installer не работает, то появляются различные ошибки.

Вообще, меня это жутко бесит, т.к. после глупого сообщения об ошибке совсем непонятно что делать дальше. Microsoft специально разработали установщик Windows Installer для расширения возможностей установки программ (в основном это касается системных администраторов), но не позаботились должным образом о безглючной работе этой службы или хотя бы об адекватных сообщениях о проблемах. А нам теперь это разгребать 🙂

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

Ошибка установщика Windows

В случае общих проблем не будут устанавливаться никакие msi файлы, процесс установки, скорее всего, даже не начнётся. При этом могут появляться ошибки вида:

  • Нет доступа к службе установщика Windows
  • Не удалось получить доступ к службе установщика Windows
  • Ошибка пакета установщика Windows (1719)

или ещё нечто подобное со словами «ошибка msi», «Windows Installer Error». Всё это означает, что система дала сбой и теперь её надо лечить. Может вы ставили какой-то софт, который испортил системные файлы и реестр, или подхватили вирус. Конечно, никогда не будет лишним удалить вирусы, или убедиться что их нет. Но оставьте этот вариант на потом, т.к. обычно проблема кроется в другом.

Сначала давайте проверим работает ли служба Windows Installer:

  1. Нажмите «Win + R» и введите services.msc
  2. Найдите в конце списка службу «Установщик Windows» или «Windows Installer»
  3. Тип запуска должен быть «Вручную». Если она «Отключена», то зайдите в «Свойства» и выберите «Вручную»
  4. Затем кликните по ней правой кнопкой и выберите «Запустить» или «Перезапустить». Если ошибок нет и состояние переходит в режим «Работает», то здесь всё нормально.
  5. Нажмите «Win + R» и введите msiexec. Если модуль MSI работает нормально, то должно появиться окно с версией установщика и параметрами запуска, а не ошибка.

Следующее что я посоветую сделать – это выполнить команду сканирования системы на повреждённые и изменённые системные файлы. Нажмите «Win + R» и введите

Sfc /scannow

Произойдёт поиск и замена испорченных файлов на оригинальные, при этом может потребоваться вставить установочный диск с Windows XP-7-10. После окончания процесса перегрузитесь и посмотрите, решена ли проблема.

Microsoft сам предлагает утилиту, призванную решить нашу проблему. Запустите программу Easy Fix и следуйте мастеру.

Скачать Easy Fix

Параметры реестра и службы

Следующий способ устранения ошибки – восстановление рабочих параметров в реестре установщика Windows Installer.

Скачать msiserver.reg

Для этого скачайте архив и запустите оттуда два reg-файла, соответственно своей версии Windows. Согласитесь с импортом настроек.

Важно! Перед последним действием желательно создать точку восстановления системы! Если способ не поможет или станет хуже, вы сможете восстановиться до прежнего состояния. В Windows XP или Windows Server 2000 установите последнюю версию установщика 4.5

В Windows XP или Windows Server 2000 установите последнюю версию установщика 4.5.

Скачать Windows Installer 4.5

Если не помогло, то проделайте ещё перерегистрацию компонентов:

  1. Нажмите «Win + R» и введите «cmd». Затем в чёрном окне введите последовательно команды: MSIExec /unregister MSIExec /regserver
  2. В ответ должна быть пустота, никаких ошибок. Если проблема не решена, введите ещё команду regsvr32 msi.dll
  3. Закройте чёрное окно

Если пишет, что не хватает прав, то нужно запускать командную строку от имени Администратора.

Если команды выполнились, но не помогло, то скачайте файл и запустите msi_error.bat из архива, проверьте результат.

Последний вариант — скачайте программу Kerish Doctor, почитайте мою статью, там есть функция исправления работы службы установщика и многих других частых проблем Windows.

Также, многие программы используют .NET Framework, поэтому не будет лишним установить последнюю версию этого пакета. И, напоследок,  ещё один совет: если в пути к файлу-дистрибутиву есть хоть одна папка с пробелом в начале названия, то удалите пробел. Такой простой приём решит вашу проблему  

Установка уровня ведения журнала

Параметры

  • /L — Путь к файлу журнала.
  • i — Занесение в журнал сообщений о состоянии.
  • w — Занесение в журнал некритических предупреждений.
  • e — Занесение в журнал сообщений об ошибках.
  • a — Занесение в журнал выполнения действий.
  • r — Занесение в журнал записей со сведениями о действиях.
  • u — Занесение в журнал запросов пользователей.
  • c — Занесение в журнал исходных параметров пользовательского интерфейса.
  • m — Занесение в журнал нехватки памяти.
  • p — Занесение в журнал свойств терминала.
  • v — Занесение в журнал подробных сведений. Для использования параметра v следует задавать /L*v.
  • + — Добавление в существующий файл.
  • ! — Сброс в журнал каждой строки.
  • * — Занесение в журнал всех сведений, кроме параметра v. Это подстановочный знак.
  • файл_журнала.txt — Имя и путь к текстовому файлу журнала.

Примечания

  • Регистр букв при вводе параметров командной строки установщика Windows не учитывается.
  • Чтобы включить в файл журнала параметр v при использовании подстановочного знака, введите в командной строке /L*v.
  • Параметры файла журнала установщика Windows могут также использоваться для процессов удаления и восстановления.

Примеры

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

Как в Windows 10 запустить и установить программу без прав администратора

Работая в Windows 10 с правами администратора, вы автоматически получаете ряд привилегий, дающих вам возможность открывать системные каталоги, устанавливать и запускать программное обеспечение, требующее у системы повышенных прав для своей работы. Если вы работаете в Windows с правами обычного пользователя, установка некоторых программ может оказаться затруднительной.

Самым лучшим решением в таком случае является, конечно же, получение этих самых прав администратора, но можно попробовать обойтись и без них.

Существует старый, но всё еще частично рабочий трюк, позволяющий обходить подобные ограничения. Не факт, что конкретно у вас это сработает, но попытаться всё же стоит.

Создайте в Блокноте или другом текстовом редакторе обычный текстовый файл и вставьте в него следующий код:

cmd /min /C «set __COMPAT_LAYER=RunAsInvoker && start «» «%1″»

Сохраните его как install.bat или с другим названием, главное, чтобы расширение было BAT или CMD .

А теперь перетащите на созданный скрипт EXE -файл приложения, которое хотите установить без прав администратора. Если всё сработает как надо, должна будет запуститься процедура установки программы.

Но остается также значительная доля вероятности, что программа всё равно запросит права администратора.

Приведенный здесь трюк вовсе не является следствием бага, это даже не лазейка, ведь оставлять подобные дыры в системе безопасности для Microsoft было непростительно. RunAsInvoker не повышает права и не позволяет обходить получение повышенных прав для запуска программного обеспечения. Параметр AsInvoker подавляет UAC и сообщает программе, что она должна запуститься с теми правами, которые имеются у пользователя на данный момент. А вот «послушается» ли программа или нет, будет зависеть от того, действительно ли ей нужны эти самые повышенные права.

Данная установка запрещена политикой заданной системным администратором

Сообщения: 137 Благодарности: 12

Добрый день. Операционная система xpsp2, компьютер не входит в домен, администраторские права. При установке приложений выдается сообщение «Данная установка запрещена политикой, выбранной системным администратором» В политиках, среди параметров для Установщика Windows все установки в состоянии Не задана. Внимательно, много раз просмотрел политики и для компьютера и пользователя и не могу найти, где стоит этот запрет.

Буду рад, если кто поможет.

Сообщения: 51915 Благодарности: 14933

Материнская плата: ASUS P8Z77-V LE PLUS
HDD: Samsung SSD 850 PRO 256 Гб, WD Green WD20EZRX 2 Тб
Звук: Realtek ALC889 HD Audio
CD/DVD: ASUS DRW-24B5ST
ОС: Windows 8.1 Pro x64
Прочее: корпус: Fractal Design Define R4

——- «Компьютеру стало совсем худо, и он решил прекратить свои страдания».

Для отключения данного рекламного блока вам необходимо зарегистрироваться или войти с учетной записью социальной сети.

Сообщения: 35947 Благодарности: 6477

ОС: Windows 10 Pro x64 Release Preview
Конфигурация компьютера
Материнская плата: GIGABYTE Z370M DS3H
HDD: Intel Optane+, INTEL SSDSC2CW120A3, OCZ-AGILITY3, 2хST3000NM0033 RAID1
Блок питания: Chieftec APS-650C
Монитор: VK278Q, S24E390, 943N

Удаление устаревшей версии

В некоторых случаях, запустить службу Установщика Windows нельзя из-за присутствия устаревшей версии. Ее нужно удалить. Это делается посредством перехода по дорожке «Пуск» — «Панель управления» — «Программы». В последнем пункте требуется найти «Удалить / Изменить программу» и воспользоваться ею для необходимого ярлыка. В результате, как обычно, нужно сделать перезагрузку и повторную установку системы.

Если в конечном итоге служба Windows Installer все-таки не запускается, то необходимо сделать чистую установку ОС Windows. Следует учесть, что перед переустановкой системы нужно сохранить всю полезную информацию на любое внешнее устройство хранения данных, во избежание потери данных.

Как исправить — установка запрещена системной политикой администратора

Изменение групповых политик

Откройте редактор групповых политик, выполнив команду gpedit.msc в окне Win+R. Перейдите в расположение Конфигурация компьютера > Административные шаблоны > Компоненты Windows > Установщик Windows. Найдите политику Отключение установщика Windows.

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

Дополнительно найдите политику Запретить пользователям установки и измените его значение на Отключено или Не задано. Если этот параметр политики включён и указанно значение Скрыть установки для пользователей, установщик игнорирует все приложения.

Чтобы не перезагружать компьютер, можно выполнить принудительное обновление политики. В командной строке, запущенной с правами администратора, выполните команду: gpupdate /force. Хотя некоторые настройки могут применяться, только после выхода из системы.

Редактор реестра

Ещё можно в разделе реестра изменить параметры, разрешающие установку программ. Дополнительно рекомендуем создать резервную копию реестра Windows 10. Это даёт возможность восстановления реестра после неудачного внесения изменений.

Откройте редактор реестра выполнив команду regedit в окне Win+R. Перейдите в расположение: HKEY_LOCAL_MACHINE SOFTWARE Policies Microsoft Windows Installer. Измените значение параметров DisableMSI, DisableLUAPatching и DisablePatch на .

Некоторые источники рекомендуют полностью удалить расположение Installer. И проверить можно ли установить нужную программу. По сути разницы нет, можно и просто изменить его значение на ноль. Это также отключает действие выделенных выше параметров.

Контроль учётных записей

Как Вы знаете контроль записей пользователя помогает предотвратить изменения, вносимые в компьютер опасным ПО. Возможно, программа является вредоносной. Если же Вы уверенные, что она безопасна, тогда можно попробовать отключить UAC.

Откройте параметры выполнив команду UserAccountControlSettings в окне Win+R. Перетяните ползунок в нижнее положение (значение Не уведомлять меня). Когда приложения пытаются внести изменения в систему, тогда Вы не будете предупреждены.

Часто встречается предупреждение: эта установка запрещена политикой, которая была задана системным администратором. Это всё происходит при попытке установить программу или обновить драйвера. Для исправления проблемы пользователю понадобится обладать правами администратора, редактор групповой политики или реестра.

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

Запустить программу или скрипт от имени другого пользователя можно и из командной строки или ярлыка приложения. Кроме того, этот способ предполагает возможность сохранения пароля пользователя, чтобы его не пришлось набирать каждый раз. Для этого можно воспользоваться консольной утилитой runas.exe .

Откройте командную строку (или окно Выполнить, нажав сочетание клавиш Win+R ). Для запуска Блокнота под учетной записью admin выполните команду:

runas /user:admin “C:Windowsnotepad.exe”

В отрывшемся окне появится приглашение «Введите пароль для admin», где нужно набрать пароль пользователя и нажать Enter.

Совет . В том случае если имя пользователя содержит пробел, его нужно взять в кавычки.

При необходимости запуска программы под доменным пользователем нужно использовать формат имени UserName@DomainName или DomainNameUserName. Например, чтобы с помощью блокнота открыть текстовый файл от имени доменного пользователя, воспользуемся командой:

runas /user:corpdomain_admin “C:Windowsnotepad.exe C:tmp2871997x64.txt”

Введите пароль для corpdomain_admin:Попытка запуска C:Windowsnotepad.exe C:tmp2871997x64.txt от имени пользователя «corpdomain_admin» .

Чтобы создать на рабочем столе ярлык для запуска программы под другим пользователем, просто создайте новый ярлык, в окне с адресом объекта которого укажите нужную команду с runas.

При запуске такого ярлыка будет запрашиваться пароль пользователя.

Чтобы сохранить вводимый пароль другого пользователя нужно воспользоваться ключом /savecred .

runas /user:admin /savecred “C:Windowsnotepad.exe”

После указания пароля он сохранится в диспетчере паролей Windows и при следующем запуске команды runas под этим же пользователем с ключом /savecred система автоматически воспользуешься сохраненным паролем, а не будет запрашивать его повторно.

Однако использование параметра /savecred не безопасно, т.к. пользователь, в чьем профиле сохранен чужой пароль может использовать его для запуска любой команды под данными привилегиями, или даже сменить чужой пароль. Кроме того, сохраненные пароли из Credential Manager можно легко украсть, поэтом лучше запретить использование сохраненных паролей (а тем более нельзя сохранять пароль привилегированной административной учетной записи ).

Примечание . Кроме того, ключ /savecred не работает в Home редакциях Windows.

Повышение прав сторонними средствами

Для решения этой задачи есть несколько вариантов, но все они похожи.

NirCmd

В утилите NirCmd предусмотрен ключ elevate, который организует запрос на повышение прав.

В общем случае команда такая:

nircmd.exe elevate program.exe

Правка реестра выполняется аналогично, но теперь вы можете указать любое имя для раздела программы, например, EditorElevated. В подразделе command указывается полный путь к утилите NirCmd, если только она не лежит в системной папке, например, System32.

nircmd.exe elevate notepad "%1"

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

Если вы используете сторонний редактор, укажите полный  путь к нему в кавычках вместо notepad.

nircmd.exe elevate "C:\Program Files\Notepad++\notepad++.exe" "%1"

Обратите внимание, что передаваемый программе параметр %1 (путь к файлу) также заключается в кавычки, поскольку он выступает уже в роли параметра утилиты NirCmd (кавычки решают проблему пробелов в путях)

ELE

ELE похожа на утилиту elevate, о которой я рассказывал в статье про . Разница в том, что ELE открывает новую командую строку в той же папке, где была открыта старая.

Утилиту можно положить в системную папку, и команда будет похожа на nircmd, даже короче:

ele.exe notepad "%1"

В отличие от NirCmd, при запуске ELE появляется на миг окно командной строки, но это не имеет особого значения, т.к. за ним все равно следует запрос контроля учетных записей.

Elevation PowerToys

До NirCmd я использовал Elevation PowerToys, которые легли в основу рассказа о том, как открыть командную строку от имени администратора в нужной папке. Любопытно, что для решения этой задачи в INF-файле применяется все-таки способ runas, который я описал выше. Но в архиве также лежат файлы для организации повышения.

Достаточно распаковать архив в любую папку и скопировать файлы elevate.cmd и elevate.vbs в папку %WinDir%\System32. В общем случае повышение выполняется командой:

elevate program.exe

Консольное окно тоже появляется на миг. Этот способ интересен тем, что повышение прав осуществляется с помощью VBS. Здесь рассматривается этот вариант в подробностях. Как вы думаете, что там в коде главное? Конечно, глагол runas :)

Рейтинг
( Пока оценок нет )
Editor
Editor/ автор статьи

Давно интересуюсь темой. Мне нравится писать о том, в чём разбираюсь.

Понравилась статья? Поделиться с друзьями:
Zoom-Obi
Добавить комментарий

;-) :| :x :twisted: :smile: :shock: :sad: :roll: :razz: :oops: :o :mrgreen: :lol: :idea: :grin: :evil: :cry: :cool: :arrow: :???: :?: :!: