simile a questa domanda:
How to set the progress bar value in the [Run] section of the Inno Setup install script?Inno Setup: Come manipolare la barra di avanzamento nella sezione Esegui?
Quando l'Inno Setup arriva alla sezione [Run]
, la barra di avanzamento mostra al 100% e si ferma in questa posizione.
Ho molti file che installo in questa sezione Run
, che desidero riavviare la barra di avanzamento e controllarla, come va installando ogni programma.
Il messaggio di stato è facile da modificare (StatusMsg
), ma il progresso mi manca qualcosa. Potresti aiutarmi, per favore?
Esempio:
[Run]
Filename: "msiexec.exe"; Parameters: "/i ""msxml.msi"" /quiet"; \
StatusMsg: "MSXML..."; Flags: runascurrentuser
Filename: "msiexec.exe"; Parameters: "/i ""capicom_dc_sdk.msi"" /quiet"; \
StatusMsg: "CAPICOM..."; Flags: runascurrentuser
Dato Voglio controllare la barra di avanzamento durante la sua installazione, non so cosa fare. Ho pensato magari usando il parametro BeforeInstall
, creando un codice per impostare la barra di avanzamento su 0 facendo qualcosa come WizardForm.ProgressGauge.Position = 0;
e nel parametro AfterInstall
, al contrario, WizardForm.ProgressGauge.Position = 100;
, ma come cambiare durante l'installazione?
Grazie.
Come vuoi anche sapere come il sub-installazione è in corso, per presentare che nella vostra installazione principale? –
Non so molto di delphi, ma ci sono alcune API in Windows che restituiscono se il processo è in esecuzione. L'idea era di verificare se il processo è attivo e fare progressi fino alla fine del processo. Quindi torna di nuovo a zero e ricomincia da quello successivo. Ma se questo non è possibile, proverò qualcosa di semplice come all'inizio, andare a zero, e dopo ogni processo, salire un po ', come il 10% in ciascuno. – KurayamiArai
* "progredire fino alla fine del processo" * Ma non sai quando finirà il processo, quindi come calcoli quale percentuale mostrare? –