|
Publicité ' | |||||||||||||||||||||||
|
|
#1 | |
|
Membre habitué
![]() Inscription : juin 2002 Messages : 256 ![]() |
Bonjour,
J'ai qques soucis liés aux répertoires de stockages de données utilisateur que je n'arrive pas à résoudre. Je développe sous XP ou Seven connecté en admin et sans UAC, ensuite je teste mes softs sur des comptes user (limités au max, avec UAC). Et là je n'arrive pas à identifier un dossier "universel" pour stocker des fichiers tels que les paramètres, une base de données, etc. Prenons l'exemple d'un fichier paramètres (xml) : je ne veux pas un fichier/utilisateur mais un fichier commun à tous. Donc de même pour le dossier, il doit être accessible à tous. Si j'en crois le MSDN il me faut ainsi utiliser CSIDL_COMMON_APPDATA, or connecté en simple user je ne peux accéder au dossier concerné (dans ce cas sous XP : C:\Documents and Settings\All Users\Application Data\{mon appli}) ni à partir de mon logiciel (tentative d'écriture d'un simple fichier texte), ni même à partir de l'explorateur Windows (accès refusé). ![]() J'envisage cette solution (Delphi) (cf tout en bas) mais si je pouvais éviter le bidouillage je préfèrerais. Alors je viens vers vous pour savoir : > quel(s) dossier(s) utilisez-vous pour stocker des paramètres ? > et une base de données ? (le tout en local) Par ailleurs j'ai découvert qu'il existe soit disant une virtualisation : Citation:
Merci pour votre aide |
|
|
|
00
|
|
|
#2 | |
|
Membre habitué
![]() Inscription : juin 2002 Messages : 256 ![]() |
Bon entre temps j'ai trouvé ceci (bien caché !!) :
Citation:
Un peu usine à gaz... et je ne demande même pas ce qu'est ce "Vendor Questionnaire" Enfin si qqun sait déjà faire ça avec InnoSetup je suis preneur. |
|
|
|
00
|
|
|
#3 |
|
Membre émérite
![]() Administrateur systèmes et réseaux Inscription : avril 2006 Messages : 970 ![]() |
Question bête : Si il n'y a pas de modif propre au user, pourquoi ne pas profite de ton dossier d'installe genre :
> quel(s) dossier(s) utilisez-vous pour stocker des paramètres ? > et une base de données ? (le tout en local) propre à l'utilisateur : C:\Documents and Settings\User1\Application Data\mon appli commun à tous les utilisateurs : perso j'opterais simplement pour : c:\program files\mon appli\config\ c:\program files\mon appli\bdd\ pour info le All Users n'est accecible en ecriture que pour les admins c'est trop impactant pour confier cela aux users. |
|
|
00
|
|
|
#4 | ||
|
Membre habitué
![]() Inscription : juin 2002 Messages : 256 ![]() |
Merci de ta réponse.
Si justement il y a des modifs user : le fichier de paramètres en particulier (lu mais surtout écrit). De même la connexion à la BD (Firebird) en lecture seule est impossible (I/O errors). De plus Program Files est absolument à éviter, c'est écrit aux 4 coins du MSDN Bon je procède comme décrit précedemment, avec Inno Setup je rajoute pour chaque ligne (= fichier) concernée de la section [Files] : J'utilise le dossier CSIDL_COMMON_APPDATA qui correspond à : Code :
|
||
|
|
00
|
|
|
#5 |
|
Expert Confirmé Sénior
![]() |
Attention, il faut bien mettre ça dans un sous-dossier de CSIDL_COMMON_APPDATA, sinon tu donnes les droits sur tout le dossier à tous, et ce n'est pas le but de la manœuvre.
__________________
SVP, pas de questions techniques par MP. Surtout si je ne vous ai jamais parlé avant. "Aw, come on, who would be so stupid as to insert a cast to make an error go away without actually fixing the error?" Apparently everyone. -- Raymond Chen. Traduction obligatoire: "Oh, voyons, qui serait assez stupide pour mettre un cast pour faire disparaitre un message d'erreur sans vraiment corriger l'erreur?" - Apparemment, tout le monde. -- Raymond Chen. |
|
|
00
|
Copyright © 2000-2012 - www.developpez.com