Précédent   Forum des professionnels en informatique > Systèmes > Windows > Windows Vista
Windows Vista Forum d'entraide Windows Vista. Lire -> Découvrez Windows Vista, La F.A.Q Windows Vista
Partagez cette discussion sur d'autres réseaux sociaux : Viadeo Twitter Google Facebook Digg Delicious MySpace Yahoo
Réponse Proposer ce sujet en actualité
 
Outils de la discussion
Publicité
Vieux 30/11/2009, 16h56   #1
Membre régulier
 
Inscription : juillet 2005
Messages : 170
Détails du profil
Informations forums :
Inscription : juillet 2005
Messages : 170
Points : 91
Points : 91
Par défaut Installation de logiciel et données

Bon, finalement je me suis mis à examiner les modifications nécessaires à mon logiciel pour qu'il soit 100% compatible avec Vista.

Il fonctionne déjà mais étant donné qu'il modifie certains fichiers dans son propre dossier d'installation, Windows Vista a donc recours à la virtualisation.

Il faut donc que je déplace les fichiers qui devront être réécrits dans un dossier qui l'autorise. Tel que bien indiqué ici http://www.icetips.com/blog/index.php/2008/10/31/title

Suis-je le seul à trouver cette décentralisation des données relatives à un logiciel carrément chiante tant pour le développeur que pour l'utilisateur ?

Imaginez un logiciel comprenant un exécutable et 5 fichiers de données, tous nécessitant une accès en écriture. L'utilisateur installera son logiciel dans Program Files et il ne contiendra là qu'un seul fichier (le .exe) . Tous les autres fichiers du logiciel se retrouveront alors ailleurs...à une place que l'utilisateur n'a pas spécifiée. Une place qu'il ne peut deviner sans chercher un peu.

Des fois je me dis que le logiciel devrait alors tout sauvegarder dans un répertoire autorisé et carrément oublier Program Files.

Peut-être que je ne comprend pas tout.
Est-il encore possible dans Vista d'installer un logiciel qui va tout mettre ses fichiers dans Program Files et pouvoir y avoir accès en écriture sans devoir demander l'autorisation à chaque fois ou sans avoir recours à la virtualisation ?

Peut-être une directive spéciale lors de l'installation ?
sfpx est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 30/11/2009, 20h53   #2
Membre régulier
 
Inscription : juillet 2005
Messages : 170
Détails du profil
Informations forums :
Inscription : juillet 2005
Messages : 170
Points : 91
Points : 91
Bon j'ai trouvé une réponse.
On peut changer l'autorisation d'accès du répertoire d'installation lors de l'installation du logiciel.
Tel que dit ici http://www.jcmiras.net/jcm/item/27/

Maintenant je me demande quelles sont les implications d'une telle pratique.
sfpx est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 01/12/2009, 09h59   #3
Responsable Windows
 
Avatar de shawn12
 
Homme Thomas Garcia
Inscription : avril 2006
Messages : 3 338
Détails du profil
Informations personnelles :
Nom : Homme Thomas Garcia
Âge : 25

Informations forums :
Inscription : avril 2006
Messages : 3 338
Points : 4 311
Points : 4 311
J'avais écrit ceci il y a un moment :
Citation:
Envoyé par shawn12 Voir le message
Windows Vista intègre une nouvelle protection des dossiers et fichiers systèmes (nottament le dossier "Program files" ou "Programmes").

Pour cela Vista utilise une sorte de principe de "virtualisation".

Aucun utilisateur (compte limité ou admin) ne peut écrire dans les dossiers protégés de windows sans élévation de privilège.

Afin d'éviter les problèmes de compatibilité que cela aurait pu générer, lorsqu'un programme (comme le tien) essaie d'écrire dans un répertoire protégé, Windows Vista ne provoque pas d'erreur et "simule" l'écriture du fichier dans program files/Ton Groupe/Ton programme/. En réalité, comme il est interdit d'y écrire réellement, il les stocke dans un "virtual store" situé dans "C:\Users\nom_utilisateur\AppData\Local\VirtualStore\Program Files\Ton groupe\Ton programme.".
C'est pour cela que chaque utilisateur a un fichier différent.

Tu peux d'ailleur le voir dans l'explorateur windows. Si tu va dans le dossier protégé dans lequel se situe ton fichier cfg, tu verra apparaitre un bouton "fichiers de compatibilité" qui te renverra vers le virtual store.

Essaie d'écrire ton fichier config dans un répertoire partagé accessible à tous les utilisateurs (tu leur donne les droits) et qui ne soit pas protégé par windows
Ce type de protection est important dans un système d'exploitation, le dossier Program Files n'est pas fait pour stocker des paramètres. Il vaut mieux ne pas avoir trop de droits d'écriture sur ce type de dossier (si un virus commence à manipuler des trucs là dedans, ça peut faire de gros dégats.)
__________________
Découvrez toutes les facettes de Windows 7 et maitrisez toutes ses fonctionnalités grâce au livre Windows 7 Avancé.
shawn12 est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 02/12/2009, 11h41   #4
Membre régulier
 
Inscription : juillet 2005
Messages : 170
Détails du profil
Informations forums :
Inscription : juillet 2005
Messages : 170
Points : 91
Points : 91
Donc en gros, après plusieurs lectures toutes aussi confondantes les unes que les autres j'en suis venu à cette solution (pas encore réalisée).

1. Élever l'installateur (obligatoire pour l'installation dans program files).

2. Installer seulement l'executable, un fichier readme.txt et le uninstall dans ce program files. Dossier est en lecture seule pour l'usager 'normal'

3. Copier les fichiers de données dans commonappdata (c:programdata sur vista). Ce dossier demeure en lecture seule pour l'usager normal.

4. Lors de la première exécution du logiciel. Il vérifie s'il existe les fichiers du logiciel dans local app data. S'il n'y sont pas on copie le contenu de commonappdata dans le local app data. Ce dossier est en lecture /ecriture.

Cela permet alors

1.Une utilisation par tous les utilisateurs (admin ou non)
2.Des données perso pour chaque utilisateur

Le côté négatif est qu'il y a plusieurs copies de mêmes fichiers. Surtout embêtant si en fait il n'y a qu'un seul utilisateur qui va se retrouver avec des fichiers dans commonappdata et localappdata. Par contre cela au aussi un avantage, la possibilité de récupérer les fichiers de données originaux (commonappadata) en cas de gaffes lors d'une modification des données dans localappdata.

Est-ce que cette méthode a du sens ?

J'ai aussi pensé à beaucoup plus simple.
J'installe toutes les données dans commonappdata et je donne la permission d'écriture pour tous les usagers. Pas de duplication des données mais plus de données persos pour chaque usager (ce qui ne serait pas un gros drame non plus). C'est définitivement la méthode qui me demanderait le moins de travail.

Opinion ?
sfpx est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 02/12/2009, 19h20   #5
Responsable Windows
 
Avatar de shawn12
 
Homme Thomas Garcia
Inscription : avril 2006
Messages : 3 338
Détails du profil
Informations personnelles :
Nom : Homme Thomas Garcia
Âge : 25

Informations forums :
Inscription : avril 2006
Messages : 3 338
Points : 4 311
Points : 4 311
Pourquoi ne pas mettre les données d'origine dans "Program Files" puisque elles seront accessibles en lecture seule ?

Tu peux utiliser le dossier Public pour stocker les fichiers de données si tu veux que tous les utilisateurs accèdent en écriture aux mêmes données.

Sinon, l'installateur ne peut il pas directement copier les données dans le répertoire Public à l'installation comme ça les données sont accessibles par tous et ne sont pas dupliquées
__________________
Découvrez toutes les facettes de Windows 7 et maitrisez toutes ses fonctionnalités grâce au livre Windows 7 Avancé.
shawn12 est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 03/12/2009, 13h55   #6
Membre régulier
 
Inscription : juillet 2005
Messages : 170
Détails du profil
Informations forums :
Inscription : juillet 2005
Messages : 170
Points : 91
Points : 91
Citation:
Envoyé par shawn12 Voir le message
Pourquoi ne pas mettre les données d'origine dans "Program Files" puisque elles seront accessibles en lecture seule ?

Tu peux utiliser le dossier Public pour stocker les fichiers de données si tu veux que tous les utilisateurs accèdent en écriture aux mêmes données.

Sinon, l'installateur ne peut il pas directement copier les données dans le répertoire Public à l'installation comme ça les données sont accessibles par tous et ne sont pas dupliquées
J'ai pas installé bcp de logiciels depuis que j'ai windows 7 mais je ne vois aucun dossier d'application dans c:\users\public

Est-ce commun d'y voir des dossiers d'application ? Genre c:\users\public\monlogiciel ?
sfpx est déconnecté   Envoyer un message privé Réponse avec citation 00
Réponse Proposer ce sujet en actualité
Outils de la discussion



Fuseau horaire GMT +1. Il est actuellement 16h33.


 
 
 
 
Partenaires

Hébergement Web