IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

C# Discussion :

Deploiement de projet


Sujet :

C#

  1. #1
    Membre régulier
    Inscrit en
    Mai 2010
    Messages
    72
    Détails du profil
    Informations forums :
    Inscription : Mai 2010
    Messages : 72
    Points : 100
    Points
    100
    Par défaut Deploiement de projet
    Bonjour,

    Je ne sais pas si je poste dans la bonne section, si jamais ce n'est pas le cas merci de me le dire :$

    Voilà je vous expose mon problème :

    J'ai fini la partie developpement de mon application (en C# avec VS2010 Express), et en ce moment je travaille sur le déploiement avec InnoSetup.

    Je vous détaille les différents fichiers de mon projet :
    - l'éxecutable
    - des fichiers Settings pour cet executable
    - le fichier manifest de l'executable
    - un certain nombre de DLL Managé que j'ai créé, avec pour certaine un fichier Settings
    - un dossier Resources ou sont stockés mes différentes base de données Access (3 au total) auxquelles j'accède dans mon application.

    Il y a aussi quelques autre fichiers comme le fichier config.

    Mon problème est le suivant :
    dans mon script inno setup, je voulais faire simple donc je copie tout le repertoire Release de Visual studio dans Program FIles de l'ordinateur.
    Tout ce passe bien sur XP, j'arrive à modifier ma base de données avec mon application, mes fichiers Settings également.

    Par contre, sur Seven (et je suppose aussi sur Vista), la plupart du temps (mais pas tout le temps), le dossier Program Files est en Lecture Seule, du coup, lorsque je veux mettre à jour des données dans ma base de données, j'ai le droit à une belle erreur :s

    Cette erreur disparait si je change l'attribut lecture seule de mon dossier, mais c'est l'utilisateur qui sera obligé de le faire, et je n'aime pas trop cela.

    Sur internet, j'ai vu qu'il était conseillé de déposer les fichiers qui sont susceptible d'être modifiés (comme la BDD ou les fichiers Settings) dans les AppData commun.

    D'où ma question, si je les met dans ce dossier, il faut que je change mes chemin d'accès, et surtout mes connectionString qui sont configurées par défaut dans le App.Config par "DataDirectory|\Resources\" (chose faite automatiquement par VisualStudio lorsque l'ont ajoute un élément), idem comment dire a mon éxecutable, ou mes DLL, d'aller chercher leurs fichiers de configuration dans AppData, et non pas dans le repertoire ou ils sont situés actuellement.

    Il existe peut être une autre solution que de passer par ce changement de repertoire :s

    Une dernière précision, l'application sera installé sur des postes clients, et je n'ai aucune idée de comment est configuré leur compte, c'est à dire qu'il peut très bien être en administrateur, comme en compte standard.

    Voilà, si jamais vous n'avez pas compris un passage, n'hésitez pas

    Merci d'avance pour vos réponses

    Bonne journée

  2. #2
    Membre confirmé
    Profil pro
    Inscrit en
    Octobre 2007
    Messages
    1 002
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Octobre 2007
    Messages : 1 002
    Points : 552
    Points
    552
    Par défaut
    Yop,
    Si tu fais clic droit "executer en tant qu'admin" ton installer, tu reproduis pas ton soucis ?

    Il faut lance le programme en admin, je pense que le soucis vient de ca.
    (je crois qu'en nommant Setup.exe win7 demande automatiquement de passer en admin)

  3. #3
    Membre régulier
    Inscrit en
    Mai 2010
    Messages
    72
    Détails du profil
    Informations forums :
    Inscription : Mai 2010
    Messages : 72
    Points : 100
    Points
    100
    Par défaut
    Bonjour alavoler,

    Merci de ta réponse rapide.

    Effectivement si je le renomme Setup.exe, Windows eéxecute l'installer en Administrateur, mais si je ne lance pas le programme de l'application en tant qu'administrateur, j'ai le même problème de mise à jours de mes données

  4. #4
    Membre habitué Avatar de swif79
    Homme Profil pro
    Développeur .NET
    Inscrit en
    Juillet 2009
    Messages
    79
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 45
    Localisation : France, Bas Rhin (Alsace)

    Informations professionnelles :
    Activité : Développeur .NET
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Juillet 2009
    Messages : 79
    Points : 169
    Points
    169
    Par défaut
    Bonjour,

    Si tu ajoute "PrivilegesRequired=poweruser" section [Setup] dans ton script InnoSetup ?

  5. #5
    Membre régulier
    Inscrit en
    Mai 2010
    Messages
    72
    Détails du profil
    Informations forums :
    Inscription : Mai 2010
    Messages : 72
    Points : 100
    Points
    100
    Par défaut
    Bonjour,

    Ta solution a l'air de fonctionner swif79, il me demande le mot de passe admin à l'install et à chaque démarrage, et dans ce cas la je peux bien modifier ma base de données et autre.

    Seulement, cette solution serait temporaire pour moi, j'aimerai vraiment pouvoir décider ou le programme doit aller chercher ses fichiers de configuration.
    Pour la base de données, je n'ai qu'a modifier les chaines de connexion dans les fichiers settings, mais le problèmes et que ce fichier settings est par défaut dans le répertoire de l'éxecutable ou de la librairies. La solution que je recherche serait de dire au programme ou se situe ses fichiers de configuration au démarrage, dans devoir créer mes propres fichiers XML et ainsi continuer d'utiliser les outils fournis par VS.

    Si jamais vous avez des idées, je suis bien prenneur ^^

    D'avance merci

    Bonne journée.

  6. #6
    Membre habitué Avatar de swif79
    Homme Profil pro
    Développeur .NET
    Inscrit en
    Juillet 2009
    Messages
    79
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 45
    Localisation : France, Bas Rhin (Alsace)

    Informations professionnelles :
    Activité : Développeur .NET
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Juillet 2009
    Messages : 79
    Points : 169
    Points
    169
    Par défaut
    Bonjour supermouton,

    Apparemment c'est dépendant du nom et de la localisation de la dll, si ça te conviens stock en base de registre.

  7. #7
    Membre émérite
    Avatar de laedit
    Homme Profil pro
    Consultant études et développement
    Inscrit en
    Décembre 2006
    Messages
    1 344
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 37
    Localisation : France, Bas Rhin (Alsace)

    Informations professionnelles :
    Activité : Consultant études et développement
    Secteur : High Tech - Multimédia et Internet

    Informations forums :
    Inscription : Décembre 2006
    Messages : 1 344
    Points : 2 265
    Points
    2 265
    Par défaut
    Effectivement la solution de swif79 peut convenir, lors de l'install tu récupères le chemin que tu stocke en base de registre.

    Une autre solution serait de changer l'attribut du dossier par programmation, lors de l'installation ou au démarrage de l'application.

  8. #8
    Membre à l'essai
    Profil pro
    Inscrit en
    Décembre 2010
    Messages
    12
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Décembre 2010
    Messages : 12
    Points : 12
    Points
    12
    Par défaut
    Bonjour à tous,

    - J'ai eu le même problème d'une application C# .net4 VS10, dont le déploiement dans program files m'interdisait l'écriture dans ma bdd SQLITe3 avec vista.

    Voici le liens dont l'aide de Ram-0000 a été d'un grand secours.

    http://www.developpez.net/forums/d10...n/#post5925378

    En clair, en fonction de l'OS windows, réaliser le bon déploiement de fichiers.
    Dans mon cas, j'install mon soft en 2 étapes : L'appli s'install ou un choix d'os se fait automatiquement et lance le bon setup.

    Les fichiers en mode écriture dans XP -> program files = c'est bon ,
    Vista et + -> AppData = c'est bon..

    Cela permets de ne modifier aucun des droits d'accès des répertoires.



    Cordialement,

    Jérôme.

Discussions similaires

  1. deploiement de projet J2EE avec netbeans
    Par pigpen dans le forum Autres
    Réponses: 3
    Dernier message: 13/05/2007, 17h30
  2. problème deploiement d'un projet Web .NET
    Par mhanen dans le forum ASP.NET
    Réponses: 2
    Dernier message: 05/12/2006, 13h15
  3. Deploiement de projet voter avis d'expert
    Par mat_lefebvre dans le forum MS SQL Server
    Réponses: 8
    Dernier message: 03/08/2006, 16h17
  4. [VS2005]Projet de deploiement : problème de réinstallation
    Par denilson dans le forum Visual Studio
    Réponses: 2
    Dernier message: 27/07/2006, 09h44
  5. [C#] Erreur génération projet de déploiement web
    Par Giill dans le forum ASP.NET
    Réponses: 3
    Dernier message: 18/02/2005, 10h12

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo