Настроить индикатор выполнения msiexec?

Мое приложение вызывает msiexec для запуска удаления.

   logger->LogDebug("Actions: MsiUninstallExec()!");
System::Diagnostics::Process ^p = gcnew System::Diagnostics::Process();
p->StartInfo->FileName = "msiexec";
p->StartInfo->Arguments = "/x " + AppSetting::ProductCode;
p->Start();
/// -->>> Uninstall
/// -->> Choose restart or not.
/// -->>> Application Exit

После удаления пользователи должны выбрать перезагрузку или нет, чтобы завершить этот процесс.
Но мой запрос клиента: «Индикатор выполнения msiexec должен перейти к последнему (правому концу).» Как его редактировать? У тебя есть идеи для меня?

введите описание изображения здесь

1

Решение

Предложение: Можно попробовать что-то вроде этого (найти продукт GUID):

msiexec.exe /X {PRODUCT-GUID} /QN REBOOT=ReallySuppress /L*V "C:\Temp\msilog.log"

Быстрое объяснение командной строки:

 /X {PRODUCT-GUID}          = run uninstall sequence for specified product
/QN                        = run completely silently
/REBOOT=ReallySuppress     = suppress reboot prompts
/L*V "C:\Temp\msilog.log"  = verbose logging at specified path

альтернативыЕсть много способов вызвать удаление MSI: Удаление MSI-файла из командной строки без использования msiexec. Вы можете удалить через: msiexec, ARP, WMI, PowerShell, Системы развертывания, такие как SCCM, VBScript / COM Автоматизация, DTF, или через hidden Windows cache folders, и несколько других вариантов.


msiexec.exe: Есть два вкуса msiexec.exe командная строка. Оригинальный и более поздний, который добавил переключатели «полное слово», такие как /quiet а также /noreboot и лайки. Оригинальная командная строка /qn как переключатель для бесшумного режима. Вот ссылки на оба варианта: MSIEXEC в чем разница между qn и quiet.


Некоторые ссылки:

1

Другие решения

msiexec /passive /x ProductCode

Это должно дать вам только пользовательский интерфейс ProgressBar. Вы также можете спросить пользователя, хотят ли они пропустить перезапуск или всегда принудительно перезапускать после завершения удаления. Затем можете добавить / Norestart или же / forcerestart вариант соответственно.

0

По вопросам рекламы [email protected]