Problemi con il msi codice di uscita 1625 durante l'esecuzione di codice MSI
-
08-10-2019 - |
Domanda
Codice di uscita 1625 è "Installazione vietata dai criteri di sistema. Contattare l'amministratore di sistema."
Quello che sto facendo sta chiamando in questo modo:
Process installProcess = Process.Start(msiPath, "/quiet");
posso correre la multa msi se apro manualmente. Questo è il Windows Server 2008 ...
L'intento di questo è quello di aggiornare automaticamente il mio programma di forme .net con l'ultima versione. Qualcuno ha un indizio che tipo di impostazione sta causando questo? Voglio dire, i clienti stanno per essere utilizzando Vista / 7 / XP, ma ho ancora bisogno di sapere che tipo di impostazioni di sicurezza rovinerà il mio piano.
Soluzione
ProcessStartInfo startInfo = new ProcessStartInfo();
startInfo.Arguments = "/i " + "\""+Directory.GetCurrentDirectory()+"\\"+msiPath +"\"" +" /q";
startInfo.FileName = "msiexec.exe";
startInfo.Verb = "runas";
Process installProcess = Process.Start(startInfo);
La chiamata del MSI in questo modo ha fatto il trucco.
Si è rivelato essere un qualche tipo di problema di UAC credo. I runas eleva verbo in qualche modo i permessi del programma ha. Anche se le mie richieste di UAC sono stati disabilitati sul 2008 server dovevo ancora fare questo per aggirare l'ostacolo .. strano eh?