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.

È stato utile?

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?

Autorizzato sotto: CC-BY-SA insieme a attribuzione
Non affiliato a StackOverflow
scroll top