Merci fat115, je testait sur un disque dur, l'application n'était donc pas discrète, mais sur une clé usb sa roule.
Par contre, j'ai essayé d'utiliser le code donné par pyg dans
ce sujet (je préfère éviter de copier-coller le dossier de configuration):
- Code: Tout sélectionner
; Fake home directory
ProfileEnvironment:
; Set the %HOMEDRIVE%%HOMEPATH% directory if we have a path
StrCmp $ProfileDir "" ExecApp
IfFileExists "$ProfileDir\*.*" "" ExecApp
Push "$EXEDIR"
Call GetRoot
Pop "$Drive"
StrCpy "$ProfileDir" "$ProfileDir" "" 2
System::Call 'Kernel32::SetEnvironmentVariableA(t, t) i("HOMEDRIVE", "$Drive").r0'
System::Call 'Kernel32::SetEnvironmentVariableA(t, t) i("HOMEPATH", "$ProfileDir").r0'
Et j'ai une erreur à la compilation:
Usage: Pop $(user_var: output)
Error in script "D:\PortableODIN\PortableODINCode\PortableODIN.nsi" on line 183 -- aborting creation process
Avec ce code:
- Code: Tout sélectionner
Push "$EXEDIR"
Call GetRoot
Pop "$Drive" ; ligne 183
System::Call 'Kernel32::SetEnvironmentVariableA(t, t) i("HOMEDRIVE", "$Drive").r0'
System::Call 'Kernel32::SetEnvironmentVariableA(t, t) i("HOMEPATH", "$EXEDIR\config").r0'
J'ai créé le lanceur par défaut, mais autant en faire un qui marche pour un disque dur.