У меня возникли проблемы с получением MSI для установки «тихо». Я могу получить MSI работать в нормальном режиме, так как:Quiet MSI Exec from Shell Execute
TCHAR argmnt[] = TEXT("open");
TCHAR username[UNLEN + 1];
DWORD size = UNLEN + 1;
GetUserName((TCHAR*)username, &size);
wchar_t run[256];
wcscpy_s(run, L"C:\\Users\\");
wcscat_s(run, username);
wcscat_s(run, L"\\AppData\\Local\\Temp\\index.msi");
ShellExecute(NULL, argmnt, run, NULL, NULL, SW_SHOW);
Но если добавить «/ тихий» до последней строки следующим образом:
wcscat_s(run, L"\\AppData\\Local\\Temp\\index.msi /quiet");
Он не будет устанавливать MSI на всех. Я пытался добавить переменную TCHAR с аргументами, как это:
TCHAR params[] = TEXT("/quiet");
С обновленной ShellExecute, как это:
ShellExecute(NULL, argmnt, run, params, NULL, SW_SHOW);
Кто-нибудь есть какие-нибудь идеи?
сделал вам попробовать довольно переключатель в «argmnt» –
@LuckyChingi Да, это не работает. – JLegendre
извините! 4-й вариант является параметром - HINSTANCE ShellExecute ( _In_opt_ HWND HWND, _In_opt_ LPCTSTR lpOperation, _In_ LPCTSTR lpFile, _In_opt_ LPCTSTR lpParameters, _In_opt_ LPCTSTR lpDirectory, _In_ INT nShowCmd ); –