Menù Principale

Cerca
Login
Registrati
Link
<< Discussione precedente | Discussione successiva >>   
Undelete Plus (era: [RunBefore])

Vai a pagina   <<        >>  
Autore Messaggio
tittoproject
mar 24 apr 2007 - 14:27

online
Utente registrato #821
Registrato il: mer 24 gen 2007 - 17:22
Messaggi: 592
"Costa28" ha scritto ...
Sopra ti ho spiegato la "necessità" di cambiare la chiave path con il desktop del Current user.

Appunto, nel mio .ini la chiave "path" punta ad OGNI avvio al desktop dell'utente corrente, chiunque esso sia.
Tutte le altre impostazioni vengono salvate, questa è gestita dal launcher.

Oppure c'è qualcosa che ancora non capisco?
Torna ad inizio pagina
Costa28
mar 24 apr 2007 - 19:57
online
Utente registrato #56
Registrato il: dom 21 gen 2007 - 10:18
Messaggi: 64
Ciao !

tittoproject ha scritto ...

Oppure c'è qualcosa che ancora non capisco?


No, guarda ... sono io che sono di coccio!!

tittoproject ha scritto ...

Appunto, nel mio .ini la chiave "path" punta ad OGNI avvio al desktop dell'utente corrente, chiunque esso sia.
Tutte le altre impostazioni vengono salvate, questa è gestita dal launcher.


Si, ma le altre due chiavi
"language"
"fkb" (non ricordo, vedi pagina precedente)
contenute in user.reg quando le "passi " al registro?

ed inoltre al 2° uso del programma troveresti in user.reg il desktop dell'user precedente.

E siamo punto e daccapo ....
Torna ad inizio pagina
tittoproject
ven 27 apr 2007 - 12:10

online
Utente registrato #821
Registrato il: mer 24 gen 2007 - 17:22
Messaggi: 592
"Costa28" ha scritto ...
ed inoltre al 2° uso del programma troveresti in user.reg il desktop dell'user precedente.

??? Io, col mio .ini, non ho visto nessun file "User.reg" nel desktop!

Comunque sia, ricordati che con X-Launcher NON è possibile gestire la stessa chiave di registro con due file (e quindi due chiamate "RunBefore") diversi!
Torna ad inizio pagina
Costa28
sab 28 apr 2007 - 12:28
online
Utente registrato #56
Registrato il: dom 21 gen 2007 - 10:18
Messaggi: 64
Allora ... ricominciamo.

Undelete Plus è un programma STAND ALONE con opzioni.
Come tale, durante l'uso, appena si utilizza un'opzione, "sporca" il registro con la chiave che sopra ti ho riportato.

Fai la prova.
Lancia il prg e scegli la lingua italiana.
Vedrai che ha inserito nel registro la chiave

[HKEY_CURRENT_USER\Software\FDRLab\Undelete Plus]
"language"="60000"

Bene.

Ora io voglio che al lancio del programma, lo stesso parta in italiano.

Facile facile gli passo la chiave con il RunBefore avendo preventivamente creato un file user.reg che lo contiene.
Ed inoltre preservo la pulizia del registro del PC ospite.

Ora se vedi sotto il percorso c'è un check box che ora non mi ricordo come si chiama.
Qualora tu lo lasci spuntato, il prog scrive sul registro questa chiave:

[HKEY_CURRENT_USER\Software\FDRLab\Undelete Plus]
"kfs"="1"

Ora io voglio che al lancio, oltre a partire in italiano, il check box sia spuntato.
Come prima, aggiungo la chiave ad user reg e tutto va alla grande.

Ora se vedi è necessario selezionare il percorso di salvataggio dei files recuperati.
Io scelgo la cartella: C.\files recuperati e all'uscita il programma scrive questa chiave:

[HKEY_CURRENT_USER\Software\FDRLab\Undelete Plus]
"path"="C:\\files recuperati"

e, in definitiva, il mio files user.reg adesso contiene queste chiavi ed ho il registro del PC ospite pulito:
[HKEY_CURRENT_USER\Software\FDRLab\Undelete Plus]
"language"="60000"
"path"="C:\\files recuperati"
"kfs"="1"

QUindi al prossimo avvio il programma partira:
- in italiano;
- con il check box spuntato;
- proporrà all'utente il salvataggio dei files recuperati in c:\files recuperati

Ora per i motivi che ti ho rappresentato in maniera goliardica prima il quesito che ti pongo è questo:

Io voglio che il programma mi parta in:
- in italiano;
- con il check box spuntato;
- proporrà all'utente il salvataggio dei files recuperati in @DesktopDir@


Il problema è facilmente risolvibile, passando la chiave
"path"=@DesktopDir@|\\"
prima del lancio del programma.

Non è possibile farlo con il:
WriteToReg perchè andrebbe a cancellare le chiavi passate dall'USER.reg (e quindi partirebbe in inglese e con il check box non spuntato)
StringReplace su USER.reg(forse la soluzione + elegante) perchè il file contiene apici e la funzione s'impalla.

Sperando di averti chiarito passo passo la genesi del problema, ti prego di fornirmi una soluzione ad esso, tu che 6 il massimo esperto (e realizzatore) del luncher.

Buona domenica
Torna ad inizio pagina
Danix
sab 28 apr 2007 - 13:18

online

Utente registrato #1
Registrato il: ven 29 dic 2006 - 05:38
Provenienza: Sassari
Messaggi: 12956
Secondo me dovresti provare a NON mettere:

MainKey=HKEY_CURRENT_USER\Software\FDRLab


ma:

MainKey=HKEY_CURRENT_USER\Software\FDRLab\Undelete Plus

e quindi nell'INI:

[Setup]
AppName=undelete_plus

[FileToRun]
PathToExe=$Bin$\$AppName$\$AppName$.exe
Parameters=

[WriteToReg=$Home$\$AppName$\$AppName$.reg]
MainKey=HKEY_CURRENT_USER\Software\FDRLab\Undelete Plus
"language"=60000|\\"
"kfs"=1|\\"
"path"=@DesktopDir@|\\"

[RunBefore]
RegEdit=$Home$\$AppName$\$AppName$.reg


Funziona perfettamente al primo avvio.


[ Modificato sab 28 apr 2007 - 13:21 ]
Torna ad inizio pagina
Sito Web
Costa28
sab 28 apr 2007 - 15:31
online
Utente registrato #56
Registrato il: dom 21 gen 2007 - 10:18
Messaggi: 64
Grazie del tuo interessamento ma ....

Furbetto !!!!!

Così hai semplicemente aggirato il problema ....

Infatti non ho più un software portatile ma ho la versione italian only della stessa dato che partirà sempre e comunque in italiano e avrà sempre il check spuntato (cosa che un altro utente potrebbe non volere)

Cioè ... l'utente brasiliano vuole potersi scegliere la lingua del programma... e con questo codice non ci riesce.

Il quesito da risolvere è:
come si può aggiungere/sostituire una sottochiave da una chiave senza perdere le altre sottochiavi già inserite.

P.S. Ma visto che avete X-portabilizzato programmi quali Audacity, Firefox, Scribus, ecc è possibile che non necessitino di "gestire" le chiavi come serve a me?

Azzzzzarola sono solo 3 chiavi di registro !!!

Ciao e grazie
Torna ad inizio pagina
Danix
sab 28 apr 2007 - 16:15

online

Utente registrato #1
Registrato il: ven 29 dic 2006 - 05:38
Provenienza: Sassari
Messaggi: 12956
Costa28 ha scritto ...

Cioè ... l'utente brasiliano vuole potersi scegliere la lingua del programma... e con questo codice non ci riesce.

E chi l'ha detto che non ci riesce?
Una volta aperto il programma viene visualizzata la versione italiana, sceglierà il brasiliano e in \User\$AppName$\$AppName$.reg verrà automaticamente cambiata la stringa in:

"language"="25000"


Del resto la cartella User rimane nel programma, non si ricrea il codice in $AppName$.reg ogni volta che avvii l'X-Launcher!
Viene letto quello che è già presente.

Inoltre, effettuare una scelta dall'italiano al brasiliano (come in questo caso) è equivalente ad effettuarla dall'inglese al brasiliano (normale situazione di un programma scaricato e lanciato senza X-Launcher).

[ Modificato sab 28 apr 2007 - 16:55 ]
Torna ad inizio pagina
Sito Web
Costa28
sab 28 apr 2007 - 19:49
online
Utente registrato #56
Registrato il: dom 21 gen 2007 - 10:18
Messaggi: 64
Non vorrei sembrerti pedante ma ho copiaincollato il tuo .ini con questo risultato

Danix ha scritto ...

Una volta aperto il programma viene visualizzata la versione italiana, sceglierà il brasiliano e in \User\$AppName$\$AppName$.reg verrà automaticamente cambiata la stringa in:

"language"="25000"


Verissimo (e prevedibile), anche cambiando i valori delle altre chiavi.

Danix ha scritto ...

Del resto la cartella User rimane nel programma, non si ricrea il codice in $AppName$.reg ogni volta che avvii l'X-Launcher!

Falso, in quanto al riavvio successivo il file $AppName$.reg torna per come scritto in WritetoReg
ed infatti mi riparte in italiano.

Poi, scusa, abbiamo perso di vista il fine del quesito:
Fermo restando le preferenze dell'utente che devono essere libere, la cartella di salvataggio deve essere sempre @DesktopUser@.

Quindi, ammesso che fosse vera la tua soluzione, non vedo il motivo per il quale il $AppName$.reg si dovrebbe aggiornare con il cambio lingua e NON con la cartella di salvataggio predefinita.
Ossia:
- imposto la lingua brasiliana;
- salvo i files recuperati in c:\
$AppName$.reg si aggiorna con questi nuovi dati.

Al riavvio troverei la lingua brasiliana e la cartella c:\, cosa che non voglio perchè deve essere @DesktopUser@

Grazie sempre dell'attenzione !
Torna ad inizio pagina
Danix
sab 28 apr 2007 - 20:46

online

Utente registrato #1
Registrato il: ven 29 dic 2006 - 05:38
Provenienza: Sassari
Messaggi: 12956
Non vorrei sembrerti pedante

Nooo


Ma allora la soluzione migliore è lasciare all'utente la scelta della lingua, così rimane l'impostazione nel .reg
Trovare soluzioni maniacali non so quanto convenga
Il programma lo devi utilizzare in italiano, giusto?
Ebbene, metti "language"=60000|\\"
Non capisco il problema.

--------------------------------------------------------

Inoltre, perchè vuoi salvare nel desktop?
Per questioni di spazio?
Altrimenti è meglio creare una cartella "Restored Files" (o come ti pare) in \User:

[Setup]
AppName=undelete_plus

[FileToRun]
PathToExe=$Bin$\$AppName$\$AppName$.exe
Parameters=

[Environment]
RESTORED_FILES=$Home$\$AppName$\Restored Files

[Functions]
DirCreate=%RESTORED_FILES%

[WriteToReg=$Home$\$AppName$\$AppName$.reg]
MainKey=HKEY_CURRENT_USER\Software\FDRLab\Undelete Plus
"kfs"=1|\\"
"path"=%RESTORED_FILES%|\\"

[RunBefore]
RegEdit=$Home$\$AppName$\$AppName$.reg

[Options]
DeleteTemp=true
ShowSplash=false
WriteLog=false

[SplashScreen]
Image=
Title=
TimeOut=1000



[ Modificato sab 28 apr 2007 - 21:12 ]
Torna ad inizio pagina
Sito Web
Costa28
lun 30 apr 2007 - 09:02
online
Utente registrato #56
Registrato il: dom 21 gen 2007 - 10:18
Messaggi: 64
Ciao !

Danix ha scritto ...

Ma allora la soluzione migliore è lasciare all'utente la scelta della lingua, così rimane l'impostazione nel .reg


Allora, scusa se consentiamo di sporcare il reg alla macchina ospite, a cosa serve questa procedura?
1 chiave o due o tre o 50, non cambia il "principio".
Che è quello che il software portatile deve essere usato e non lasciare proprie tracce sul reg di sistema della macchina ospite.

Danix ha scritto ...

Trovare soluzioni maniacali non so quanto convenga


La questione non è essere o meno maniaci: io ho "sollevato un problema" o, se preferisci "fatto una domanda"
Consideralo un quesito generale.
Aiutami a trovare la soluzione.

Essa potrebbe anche non esserci, al momento.
Forse tittoproiject potrebbe fare tesoro di questa nostra discussione e implementare qualcosa nel prossimo rilascio dell'X-launcher.

Eppure, non penso che con il numero dei rilasci quotidiani di X-software, nessuno abbia avuto la necessità di gestire un problema simile al mio.

O forse l'ha solamente ignorato per vedere il proprio nick sul rilascio... e per non apparire troppo maniaci

Buon ponte a tutti !!
Torna ad inizio pagina

Vai a pagina   <<        >>  
Moderatori: Danix, Taf, Rcs, Energy, zandet2, ZioZione, Admin, LordJim60

Salta:     Torna ad inizio pagina

RSS discussione: rss 0.92 RSS discussione: rss 2.0 RSS discussione: RDF
Powered by e107 Forum System