+ Rispondi al messaggio
Visualizzazione dei risultati da 1 a 4 su 4

[InnoSetup+vb6]Possibilità di download

  1. #1
    L'avatar di spikexx84
    spikexx84 non è in linea Scribacchino
    Ciao a tutti, questo post è l'inizio di un progetto, non un progetto finito, in questa fase sto cercando se c'è qualcuno disposto a darmi una mano in fase di analisi/sviluppo/test.

    Descrizione:
    Scaricare dei file durante le installazioni di Inno Setup non è proprio una cosa semplice, anzi Inno Setup di suo non lo concede, a meno di andare a importunare Api e Dll esterne (cosa non semplice, ne comoda, ne soprattutto alla portata di tutti), allora mi è venuta questa idea, creare un programmino in Visual Basic che esegua il download e gestire questo programmino da Inno Setup, risolvendo così il problema.

    Cosa serve per partecipare:
    Conoscenza almeno buono/Alta di Inno Setup o Visual Basic, meglio se di entrambi (ma non indispensabile), voglia di fare.

    Stato progetto
    Sono ancora in fase di analisi, sopratutto sto pensando alle modalità di interazione fra InnoSetup e VB che dia la maggior flessibilità possibile, ma che sia anche il più semplice possibile per l'utente finale, finora mi è venuto in mente:


    Apertura
    1. Da Inno seup viene lanciato il programma di download con un elenco di parametri (scarico da dove, nome utente e password, etc), metodo immediato, ma scomodo per un alto numero di parametri
    2. Da Inno seup viene lanciato il programma di download che leggerà i parametri da un file di testo (Ini probabilmente), che viene installato già pronto con le impostazioni di default, metodo probabilmente meno comodo, ma che permettere di settare un numero di parametri infinito

    Interazione
    1. Mentre il programma di download è in esecuzione scrive un file di log con l'elenco delle operazioni fatte/in esecuzione, questo file viene letto dinamicamente con Inno Setup che fa quel che vuole delle informazioni lette, massima flessibilità, ma non molto UserFrendly
    2. Viene passato al programma di download l'handle della finestra di InnoSetup e lui si occupa di gestirla tramite Api, User Friendly massima, ma si perde un pò in flessibilità
    3. Entrambi i metodi sopra citati, semplicmente con un parametro si decide quale usare in base alle esigenze

    Funzioni aggiuntive
    1. Una che restituisce la dimensione del file da scaricare (utile sopratutto per un download di più file in cui si vuol fare una progressbar unica).
    2. Vedremo cosa può venire in mente.
    Come penso di procedere:
    Scelgo di utilizzare un file Ini per l'apertura, quindi di implementare entrambe le possibilità di iterazione, l'utilizzo da InnoSetup dovrebbe essere circa questo,che richiede un codice di base minimo:

    [Files]
      Source: "Download.exe"; DestDir: "{tmp}"; Flags: dontcopy; deleteafterinstall
      Source: "Config.Ini"; DestDir: "{tmp}"; Flags: dontcopy; deleteafterinstall
     
    [code]
    Function InitializeSetup(): Boolean;
      Begin
        ExtractTemporaryFile('Download.exe');
        ExtractTemporaryFile('Config.Ini');
      End;
    
    Cosa mi serve sopratutto:
    Fra queste la cosa che più mi mette in difficoltà è sicuramente il punto 2 dell'Interazione, ovvero il comandare la finestra di Inno Setup direttamente dal programma in VB, non ho mai fatto una cosa del genere e ho idea che ci siano da scomodare parecchie Api.









    Bene, se qualcuno vuol partecipare e ha idee o consigli io sono qui, intanto faccio un altro paio di ricerche oppure parto direttamente con lo scirvere il programmino in vb per il download (tanto quello va fatto per forza....)
    ℹ️ Leggi di più su spikexx84 ...

  2. #2
    L'avatar di spikexx84
    spikexx84 non è in linea Scribacchino
    Ok è pronta la prima versione ALFA del progetto, sinceramente volevo aspettare ancora un pò prima di postarla, ma una richiesta di aiuto sul forum mi ha fatto un pochino accellerare, quindi eccomi qui , riassunto:

    Fatto:

    • Programma in vb che scarica da internet tramite un server ftp
    • Scrittura log con i risultati del programma e lo stato avanzamento download, più eventuali errori
    • Abbozzo gestione errori in vb
    • Scrittura codice di base di Inno Setup per scaricare tramite ftp, mostrando una barra di avanzamento e una percentuale


    Da fare:

    • Aggiungere nel programmino vb la possibilità di scaricare da internet direttamente, fornendo solo il link del file
    • Integrazione log con TUTTI i tipi di errori che si possono verificare nell'esecuzione, più la velocità di download.
    • Completare la gestione degli errori nel programma in vb e gestirli di conseguenza anche in Inno Setup
    • Inserire queste funzionalità nel programmino vb:
      • Chiedere se c'è la connessione
      • Possibilità di passare le impostazioni come elenco di parametri
      • Chiedere solo ed esclusivamente la dimensione del file


    Sviluppi futuri:

    Gestire su richiesta anche la finestra di InnoSetup dal programmino vb.

    Bene metto in allegato quello che ho già fatto (per chi non conosce/non ha vb6 non preoccupatevi, c'è anche la versione già compilata), ovviamente con i relativi sorgenti
    File allegati File allegati
    ℹ️ Leggi di più su spikexx84 ...

  3. #3
    And
    And non è in linea Novello
    Quote Originariamente inviato da spikexx84 Visualizza il messaggio
    Ok è pronta la prima versione ALFA del progetto, sinceramente volevo aspettare ancora un pò prima di postarla, ma una richiesta di aiuto sul forum mi ha fatto un pochino accellerare, quindi eccomi qui , riassunto:

    Fatto:

    • Programma in vb che scarica da internet tramite un server ftp
    • Scrittura log con i risultati del programma e lo stato avanzamento download, più eventuali errori
    • Abbozzo gestione errori in vb
    • Scrittura codice di base di Inno Setup per scaricare tramite ftp, mostrando una barra di avanzamento e una percentuale


    Da fare:

    • Aggiungere nel programmino vb la possibilità di scaricare da internet direttamente, fornendo solo il link del file
    • Integrazione log con TUTTI i tipi di errori che si possono verificare nell'esecuzione, più la velocità di download.
    • Completare la gestione degli errori nel programma in vb e gestirli di conseguenza anche in Inno Setup
    • Inserire queste funzionalità nel programmino vb:
      • Chiedere se c'è la connessione
      • Possibilità di passare le impostazioni come elenco di parametri
      • Chiedere solo ed esclusivamente la dimensione del file


    Sviluppi futuri:

    Gestire su richiesta anche la finestra di InnoSetup dal programmino vb.

    Bene metto in allegato quello che ho già fatto (per chi non conosce/non ha vb6 non preoccupatevi, c'è anche la versione già compilata), ovviamente con i relativi sorgenti
    Ciao spikexx84 è passato abbastanza tempo e mi stavo chiedendo e fossi riuscito a finire questo Setup. Grazie

  4. #4
    Sono passati 6 anni. Non si risponde a thread così vecchi. Usa un PM. Chiuso.
    ℹ️ Leggi di più su AntonioG ...

+ Rispondi al messaggio

Potrebbero interessarti anche ...

  1. Dir installazione con InnoSetup
    Da tizike nel forum Altri linguaggi e strumenti
    Risposte: 1
    Ultimo Post: 20-02-2017, 12:45
  2. InnoSetup StripReloc
    Da Stoker nel forum Altri linguaggi e strumenti
    Risposte: 0
    Ultimo Post: 27-05-2012, 23:25
  3. Range(x:Y). Possibilità di modifica?
    Da cyber81 nel forum Microsoft Excel
    Risposte: 1
    Ultimo Post: 26-10-2011, 10:47
  4. Possibilità
    Da Dami89 nel forum Visual Basic .Net
    Risposte: 17
    Ultimo Post: 05-02-2009, 18:09
  5. InnoSetup
    Da Mave nel forum Altri linguaggi e strumenti
    Risposte: 6
    Ultimo Post: 09-01-2009, 11:35