[Wapt] copie de fichier dans un profil utilisateur.
Léo-Paul dewitte
leopaul.dewitte at gmail.com
Wed Jun 26 17:20:03 CEST 2019
Bonjour
Encore désolé de revenir, mais la copie dans le profil utilisateur ne
fonctionne toujours pas.... N'y a t-il pas une histoire de droit de copie
que wapt ne gère pas ?
paquet:
def install():
copytree2('QGIS 3.4',r"C:\Program Files\QGIS 3.4")
copytree2('QGIS',r"C:\QGIS")
def session_setup():
chemin=(r"c:\Users\%\AppData\Roaming\QGIS" % get_current_user())
print(chemin)
copytree2(r"C:\QGIS",chemin)
Cordialement,
Léo-Paul DEWITTE
Le lun. 24 juin 2019 à 14:55, Denis Cardon <dcardon at tranquil.it> a écrit :
> Bonjour Léo-Paul,
>
> > Merci pour votre réponse,
> > J'ai bien respecté vos recommandations. J'ai bien effectué une copie de
> > mon dossier dans un dossier utilisateur local dans la partie def
> > install(). Cependant la partie copie dans le profil utilisateur via
> > session_setup ne fonctionne pas. Aurais-je mal codé mon paquet ?
> >
> > def install():
> > copytree2('QGIS',r'C:\Users\default\AppData\Roaming\QGIS')
> >
> > def session_setup():
> > util=get_current_user()
> > chemin=(r'c:\Users\''+util+'\AppData\Roaming\'')
> > print(chemin)
> > copytree2(r'C:\Users\Default\Appdata\Roaming\QGIS',chemin)
>
> C'est mieux. Après, il y a encore des soucis :
> * il faut mettre des r'' (raw string) à chaque string avec des caractère
> antislash (my fault, j'avais mal corrigé sur le forum)
> * il ne faut pas terminer ton path avec un \'' sinon il fait parti de la
> string (ie ça donne --c:\users\dcardon\appdata\roaming'--, cf le dernier
> quote)
> * le répertoire c:\users\default n'est pas forcément le bon répertoire
> où mettre le appdata en fonction de ce que l'on veut accomplir. Il peut
> être plus judicieux de le mettre directement dans le program files de
> QGIS. Ou encore mieux, dans le dossier 'persistent' de WAPT (nouvelle
> feature 1.7.4, il faut qu'on la documente :-)
>
> Recommandations:
> * je trouve qu'il est mieux de faire des substitutions de string plutôt
> que des concaténations :
> chemin=(r'c:\Users\%\AppData\Roaming' % get_current_user())
> * il est possible de tester ton install --ainsi-- que ton session_setup
> directement dans l'environnement pyscripter. Tu peux lancer le install()
> dans le menu sur la gauche, vérifier que le répertoire arrive bien dans
> default\appdata, puis lancer le session_setup et vérifier que ça arrive
> bien au bon endroit dans ta session.
> * si possible pour avoir du feedback sur un setup.py, il faut plutôt le
> mettre dans complètement en pièce jointe à ton mail (en faisant resortir
> dans le corps de ton mail la partie problématique).
> * le chemin appdata/roaming peut être obtenu automatiquement avec la
> fonction user_appdata()
>
> Cordialement,
>
> Denis
>
>
> > Cordialement,
> >
> > Léo-Paul DEWITTE
> >
> >
> > Le ven. 21 juin 2019 à 12:25, Denis Cardon <dcardon at tranquil.it
> > <mailto:dcardon at tranquil.it>> a écrit :
> >
> > Bonjour Léo-Paul,
> >
> > > Je souhaiterais lors d'un déploiement logiciel sur l'ensemble d'un
> > parc
> > > informatique, copier un dossier dans le profil utilisateur de la
> > > personne (c:\users\XX\AppData\Roaming).
> > >
> > > J'ai essayé d'utiliser la méthode get_current_user() à la fois
> dans la
> > > partie install et dans la partie session_setup:
> > >
> >
> copytree2('\\\\[ip_serveur_stockage]\\[dossier]\\[dossier]\\QGIS','C:\\Users\\',get_current_user(),'\\Appdata\\Roaming\\QGIS'
> > > )
> > >
> > > La copie ne s'effectue pas mais le paquet ne retourne aucune
> erreur.
> > > Quelqu'un à déjà eu à faire un tel paquet ?
> >
> > ip_serveur_stockage -> pour garantir le meilleur fonctionnement d'un
> > paquet WAPT, celui ci doit être auto-contenu. En fonction du contexte
> > utilisateur et de la connectivité au moment du lancement du script,
> ce
> > genre d'appel a une bonne chance de ne pas fonctionner. Il faut donc
> > mettre les fichiers de conf utilisateur qgis directement dans le
> paquet
> > WAPT.
> >
> > Pour modifier une session utilisateur, il faut que les fichiers
> soient
> > disponible au moment de l'ouverture de la session de l'utilisateur.
> > Vous
> > pouvez les copier dans un sous répertoire de l'installation qgis (par
> > ex. c:\program files\qgis\appdata_user\). Vous pouvez les copier là
> > dans
> > la fonction def install() et les récupérer lors du lancement du
> fichier
> > def session_setup(). Cf
> https://forum.tranquil.it/viewtopic.php?t=716
> >
> > La fonction get_current_user() n'a de sens uniquement dans la
> fonction
> > session_setup(). Dans la fonction def install(), ça va toujours
> > renvoyer
> > LocalSystem (le compte utilisé pour l'install).
> >
> > Cordialement,
> >
> > Denis
> >
> > Note : votre syntaxe pour la concaténation de path n'est pas bonne.
> Il
> > faut soit utiliser un make_path, soit faire une substitution de
> string.
> >
> >
> >
> > >
> > > Cordialement,
> > >
> > > Léo-Paul DEWITTE
> > >
> > >
> > > _______________________________________________
> > > WAPT mailing list
> > > WAPT at lists.tranquil.it <mailto:WAPT at lists.tranquil.it>
> > > http://lists.tranquil.it/listinfo/wapt
> > >
> >
> > --
> > Denis Cardon
> > Tranquil IT
> > 12 avenue Jules Verne (Bat. A)
> > 44230 Saint Sébastien sur Loire (FRANCE)
> > tel : +33 (0) 240 975 755
> > http://www.tranquil.it
> >
> > Tranquil IT recrute! https://www.tranquil.it/nous-rejoindre/
> > Samba install wiki for Frenchies : https://dev.tranquil.it
> > WAPT, software deployment made easy : https://wapt.fr
> >
>
> --
> Denis Cardon
> Tranquil IT
> 12 avenue Jules Verne (Bat. A)
> 44230 Saint Sébastien sur Loire (FRANCE)
> tel : +33 (0) 240 975 755
> http://www.tranquil.it
>
> Tranquil IT recrute! https://www.tranquil.it/nous-rejoindre/
> Samba install wiki for Frenchies : https://dev.tranquil.it
> WAPT, software deployment made easy : https://wapt.fr
>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.tranquil.it/pipermail/wapt/attachments/20190626/e4abed39/attachment.html>
More information about the WAPT
mailing list