<< Discussione precedente | Discussione successiva >> |
LYX, WinTeXmacs, Texmaker Vai a pagina << >> |
Autore | Messaggio |
ZioZione |
| ||
Utente registrato #74 Registrato il: dom 21 gen 2007 - 11:31Provenienza: Tradate (VA) Messaggi: 3821 | Ciao Danix, non so se possa risolvere con le [RunBefore] (registra la .dll) e [RunAfter] (de-registra la .dll), tramite il comando "RunFile", ma in alternativa si potrebbe seguire questa strada: invece di chiamare con X-Launcher direttamente il programma, si chiama (con i parametri adeguati, ma mi servirebbe dare un'occhiata all'.ini dell'X-Launcher) uno script VBScript di questo tipo: 1) registra la .dll 2) manda in esecuzione il programma e ne aspetta la conclusione 3) de-registra la .dll Purtroppo dipende moltissimo da come è fatto l'.ini, quindi potrebbe rivelarsi un buco nell'acqua... Cordialmente ZioZione [ Modificato mer 06 giu 2007 - 09:00 ] | ||
Torna ad inizio pagina |
Danix |
| ||
Utente registrato #1 Registrato il: ven 29 dic 2006 - 05:38Provenienza: Sassari Messaggi: 12956 | Si, è una buona idea. Basterebbe uno script da avviare con RunFile in [RunBefore] per registrare la .dll e un'altro script per de-registrare la .dll sempre con RunFile ma in [RunAfter] Il resto lo fa il launcher. Tieni conto che le 3 .dll (che ho inserito nella directory principale nella cartella "Dll") sono pronte per esser copiate in system32 e che tutto avviene correttamente. Occorre solo registrare la dll in modo automatico. Se riesci a preparare uno script per registrare e deregistrare la dll, il gioco è fatto Ini:
[Setup]
[ Modificato mer 06 giu 2007 - 10:35 ] | ||
Torna ad inizio pagina |
ZioZione |
| ||
Utente registrato #74 Registrato il: dom 21 gen 2007 - 11:31Provenienza: Tradate (VA) Messaggi: 3821 | Ciao Danix, non credo che serva lo script, potremmo far fare tutto alla "RunFile"... Per registrare (nella sezione [RunBefore]):
RunFile=regsvr32 nomeDLL
Per de-registrare (nella sezione [RunAfter]):
RunFile=regsvr32 /u nomeDLL
Una domanda: è proprio necessario copiare le dll in @SYSTEMDIR@? Non si possono registrare direttamente dal folder del programma? Purtroppo non posso, al momento, provarlo io stesso, ma non mi stupirei se andasse ugualmente. Ovviamente, per registrare e de-registrare si deve usare lo stesso path... Cordialmente ZioZione [ Modificato mer 06 giu 2007 - 11:13 ] | ||
Torna ad inizio pagina |
Danix |
| ||
Utente registrato #1 Registrato il: ven 29 dic 2006 - 05:38Provenienza: Sassari Messaggi: 12956 | Perfetto!! Non ci avevo pensato!! Le dll devo stare per forza in system32, in altri percorsi (benchè corretti) non vengono registrate....o meglio non viene trovato il path C:\Documents .....ma non è un grosso problema.... [ Modificato mer 06 giu 2007 - 14:40 ] | ||
Torna ad inizio pagina |
Danix |
| ||
Utente registrato #1 Registrato il: ven 29 dic 2006 - 05:38Provenienza: Sassari Messaggi: 12956 | L'unico problema è che la dll viene registrata ogni volta che si apre il programma..... ci vorrebbe un comando tipo runonce...... | ||
Torna ad inizio pagina |
ZioZione |
| ||
Utente registrato #74 Registrato il: dom 21 gen 2007 - 11:31Provenienza: Tradate (VA) Messaggi: 3821 | Ciao Danix, si, grazie, me ne sono accorto da solo. Per completezza, sarebbe meglio usare, per regsvr32, l'opzione "/s" per non visualizzare degli antiestetici (e noiosi) alert. Eccoti la mia versione (scusa per la non ottimizzazione...). Come noterai, ho usato la nostra directory \Lib (mi sembrava appropriata...)
Ma, a proposito, a cosa servono esattamente quelle dll? Ho notato che TeXnicCenter ne fa tranquillamente a meno per per partire (non le cerca da nessuna parte) e non ho capito come mandare in errore l'eseguibile quando non le trova, per testare la corretta registrazione... Cordialmente ZioZione | ||
Torna ad inizio pagina |
Danix |
| ||
Utente registrato #1 Registrato il: ven 29 dic 2006 - 05:38Provenienza: Sassari Messaggi: 12956 | Aspetta ZioZione, così non funziona perchè le dll vengono cancellate e quindi non possono essere de-registrate...quindi o si impedisce che vengano cancellate o si impedisce che vengano de-registrate. A me senza le dll non parte il programma...hai provato a vedere in system32 se le hai già? Solo msxml4.dll ha bisogno di esser registrata. [ Modificato mer 06 giu 2007 - 14:52 ] | ||
Torna ad inizio pagina |
Danix |
| ||
Utente registrato #1 Registrato il: ven 29 dic 2006 - 05:38Provenienza: Sassari Messaggi: 12956 | Così è perfetto (urrà!!)
[Setup]
----- EDIT ------ E' vero le dll in $Lib$\$AppName$_dll è meglio [ Modificato mer 06 giu 2007 - 15:02 ] | ||
Torna ad inizio pagina |
ZioZione |
| ||
Utente registrato #74 Registrato il: dom 21 gen 2007 - 11:31Provenienza: Tradate (VA) Messaggi: 3821 | Ciao Danix, perché non funziona? La cancellazione la faccio dopo aver de-registrato le dll (che non avevo nella @system@, ho verificato). Se serve registrare la sola msxml4.dll (EDIT - ho verificato nell'"install_script.iss" ed è effettivamente così... ), meglio, ma la sezione [RunAfter], secondo me, dovrebbe essere:
Ho verificato togliendo il flag /s e l'alert di de-registrazione mi avverte che avviene tutto correttamente. Prova e fammi sapere. Cordialmente ZioZione [ Modificato mer 06 giu 2007 - 15:07 ] | ||
Torna ad inizio pagina |
Danix |
| ||
Utente registrato #1 Registrato il: ven 29 dic 2006 - 05:38Provenienza: Sassari Messaggi: 12956 | E' vero, li avevo messi nell'ordine inverso! Ancora meglio allora! Dovrebbe essere il definitivo:
[Setup]
| ||
Torna ad inizio pagina |
Moderatori: Danix, Taf, Rcs, Energy, zandet2, ZioZione, Admin, LordJim60 |