+ Rispondi al Thread
Visualizzazione dei risultati da 1 a 9 su 9

Discussione: Per registrare correttamente un ocx in InnoSetup

  1. #1
    tizike non è in linea Scolaretto
    Post
    405

    Per registrare correttamente un ocx in InnoSetup

    Gia tempo fa avevo fatto piu o meno la stessa domanda.

    Ultimamente (parlo come da titolo di un setup di InnoSetup) ho avuto nuovamente qualche caso (e quindi non sempre)
    di mancata registrazione di un componente , specialmente Richts32.ocx o omdlg32
    (sempre sotto win7 /win8.
    Ho sempre dovuto quindi suggerire all'utente una registrazione manuale.

    Io fino adesso ho sempre usato ed uso nel setup
    codice:
    Source: "C:\test\Richts32.ocx"; DestDir: "{sys}"; Flags: restartreplace sharedfile
    Sarebbe , secondo voi, preferibile invece questa riga?
    codice:
    Source: "c:\test\Richts32.ocx"; DestDir: ""{sys}"; "; Flags: regserver ignoreversion
    e quindi usare questa formula per tutti i componenti, anche dll ?
    grazie
    tizike

  2. #2
    L'avatar di AntonioG
    AntonioG non è in linea Moderatore Globale Ultimo blog: Commodore 64 e Codemotion
    Luogo
    Roma
    Post
    16,310
    Blogs
    5
    Se ignori la versione potresti sostituire componenti più recenti con versioni vecchie. Ovviamente è un errore grave.
    Avvisi generali e importanti, a pena CHIUSURA thread e/o BAN
    Il crossposting è vietato.
    Le richieste di "pappa pronta" sono vietate.
    Utilizzate i tag CODE per il codice.
    Leggere il Regolamento per chiarimenti PRIMA di creare nuovi thread.
    Utilizzare sempre i PM per comunicare con i moderatori.
    Non mi contattate in PM per problemi di software, usate il forum

  3. #3
    tizike non è in linea Scolaretto
    Post
    405
    Salve Antonio
    E' vero.

    Allora dovrebbe essere
    codice:
    Source: "c:\test\Richts32.ocx"; DestDir: ""{sys}"; "; Flags: regserver
    ma non so se la sintassi é giusta o consentita cosi.
    Quale formula consigli, in pratica?

  4. #4
    L'avatar di Brontolo
    Brontolo non è in linea Very Important Person
    Post
    2,851
    Ma sei sicuro che i nomi corretti siano Richts32.ocx e omdlg32 ?
    Comunque la forma generalmente usata per gli OCX è
    codice:
    Source: "path\xxxxx.ocx";  DestDir: "{sys}"; Flags: restartreplace regserver sharedfile
    Le DLL non è detto che siano shared, quindi il flag sharedfile può non essere appropriato[/QUOTE]
    Il regolamento del forum: la prima cosa da leggere.

  5. #5
    tizike non è in linea Scolaretto
    Post
    405
    Ciao Brontolo.

    Il rigo l'ho scritto manualmente e posso aver fatto un errore di trascrizione dei componenti.

    Le DLL non è detto che siano shared, quindi il flag sharedfile può non essere appropriato
    quindi per i DLL é meglio omettere,per sicurezza, sharedfile

    grazie Brontolo

    tizike

  6. #6
    tizike non è in linea Scolaretto
    Post
    405
    Solo per esserne sicuro, ormai che siamo in argomento:
    tu hai proposto :

    ....Flags: restartreplace regserver sharedfile
    ma non é meglio eliminare il 'restartreplace' cosi che la registrazione avviene subito all'installazione
    senza aspettare il restart?
    insomma cosi

    codice:
    ...Flags: regserver sharedfile
    grazie

  7. #7
    L'avatar di gibra
    gibra non è in linea Amanuense
    Luogo
    Breganze (VI)
    Post
    6,087
    Quote Originariamente inviato da tizike Visualizza il messaggio
    Il rigo l'ho scritto manualmente e posso aver fatto un errore di trascrizione dei componenti.
    Infatti entrambi i nomi sono sbagliati.


    Quote Originariamente inviato da tizike Visualizza il messaggio
    quindi per i DLL é meglio omettere,per sicurezza, sharedfile
    Veramente è il contrario:
    tu stai parlando di OCX ed in questo caso bisogna sempre usare sharedfile.
    Brontolo si riferiva alle DLL, ed in questo caso bisogna leggersi la documentazione della libreria perché se sono DLL di tipo ActiveX vanno registrate, se non lo sono è sufficiente che siano 'copiate'.

    Se non vuoi avere problemi di sintassi ti consiglio di utilizzare uno degli appositi TOOLS di interfaccia realizzati appositamente. Li trovi sul sito di InnoSetup.

    Inno Script Studio è quello consigliato, vedrai che è quello incluso nel Inno Setup QuickStart Pack .

  8. #8
    tizike non è in linea Scolaretto
    Post
    405
    Grazie Gibra per le precisazioni.

    Ho trovato, scaricato ed installato quanto da te detto.
    (Lo sto guardando con calma)
    ps. la mia versione che avevo ed usavo di InnoSetup era ancora la la 5.2 !

    grazie a tutti
    tizike

  9. #9
    L'avatar di Brontolo
    Brontolo non è in linea Very Important Person
    Post
    2,851
    Quote Originariamente inviato da tizike Visualizza il messaggio
    ma non é meglio eliminare il 'restartreplace' cosi che la registrazione avviene subito all'installazione
    senza aspettare il restart?
    Guarda che il flag "restartreplace" ha un altro significato.

    Quote Originariamente inviato da Help di InnoSetup
    restartreplace
    When an existing file needs to be replaced, and it is in use (locked) by another running process, Setup will by default display an error message. This flag tells Setup to instead register the file to be replaced the next time the system is restarted. ... When this happens, the user will be prompted to restart their computer at the end of the installation process.
    Fra i tanti pregi di InnoSetup c'è anche quello di essere corredato da un help completo e chiaro che è sempre bene consultare.
    Il regolamento del forum: la prima cosa da leggere.

+ Rispondi al Thread

Permessi di invio

  • Non puoi inserire discussioni
  • Non puoi inserire repliche
  • Non puoi inserire allegati
  • Non puoi modificare i tuoi messaggi