Настроить индикатор прогресса msiexec? - PullRequest
0 голосов
/ 19 сентября 2018

Мое приложение вызывает 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 должен перейти в последний (правый конец)».Как это отредактировать?У вас есть идеи для меня?

enter image description here

Ответы [ 2 ]

0 голосов
/ 30 сентября 2018

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

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 Automation, DTF или через hidden Windows cache folders и некоторые другие параметры.


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


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

0 голосов
/ 19 сентября 2018
msiexec /passive /x ProductCode

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

...