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

VB.NET Discussion :

Installer une application [Débutant]


Sujet :

VB.NET

  1. #1
    Membre régulier
    Homme Profil pro
    Ingénieur
    Inscrit en
    Octobre 2013
    Messages
    101
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 35
    Localisation : France, Meurthe et Moselle (Lorraine)

    Informations professionnelles :
    Activité : Ingénieur

    Informations forums :
    Inscription : Octobre 2013
    Messages : 101
    Points : 80
    Points
    80
    Par défaut Installer une application
    Bonjour à tous,

    Ayant terminer ma première application, je dois maintenant l'installer sur d'autres postes que le mien.

    L'application à besoin pour fonctionner d'écrire et lire dans des fichiers présents dans un répertoire que j'ai sur mon poste uniquement.

    Quelle est selon vous la méthode la plus simple pour que mon application fonctionne chez les autres?

    J'imagine que lorsque je vais copier mon .exe chez les autres, elle devra être capable de trouver le chemin "mes documents" par exemple de l'utilisateurs en question. Mais comment?

    Je ne demande pas une réponse toute faite, mais je compte sur votre expérience pour trouver une bonne solution parmi celles existantes!

    Merci d'avance

  2. #2
    Expert éminent sénior Avatar de Pol63
    Homme Profil pro
    .NET / SQL SERVER
    Inscrit en
    Avril 2007
    Messages
    14 154
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 42
    Localisation : France, Puy de Dôme (Auvergne)

    Informations professionnelles :
    Activité : .NET / SQL SERVER

    Informations forums :
    Inscription : Avril 2007
    Messages : 14 154
    Points : 25 072
    Points
    25 072
    Par défaut
    il y a une propriété genre startuppath permettant de connaitre à l'exécution le dossier où se trouve l'application, et donc de trouver des fichiers qui sont à côtés
    sinon il y a une fonction pour connaitre les répertoires spéciaux (mes documents, windows, dossier réservé à ton application pour l'utilisateur en cours etc...)

    pour que ton appli fonctionne il faut que le framework ciblé soit installé sur la machine
    si tu as utilisé des dll tierces il faut les diffuser aussi (les dll COM doivent être registrées)

    donc soit fournir l'exe et les fichiers qui vont à côté
    soit mettre tes fichiers en ressources incluses dans l'exe (tu peux alors les recopier sur le disque à la 1ère exécution)
    soit faire un setup qui copiera les fichiers avec l'exe, et qui pourrait éventuellement s'occuper d'installer le framework s'il n'est pas présent
    Cours complets, tutos et autres FAQ ici : C# - VB.NET

  3. #3
    Membre régulier
    Homme Profil pro
    Ingénieur
    Inscrit en
    Octobre 2013
    Messages
    101
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 35
    Localisation : France, Meurthe et Moselle (Lorraine)

    Informations professionnelles :
    Activité : Ingénieur

    Informations forums :
    Inscription : Octobre 2013
    Messages : 101
    Points : 80
    Points
    80
    Par défaut
    sinon il y a une fonction pour connaitre les répertoires spéciaux (mes documents, windows, dossier réservé à ton application pour l'utilisateur en cours etc...)
    Ca a l'air très bien ça, on m'en a parlé par exemple pour mes documents le code correspond à ça ?
    Environment.GetFolderPath(Environment.SpecialFolder.myDocuments)

    pour que ton appli fonctionne il faut que le framework ciblé soit installé sur la machine
    Comment savoir si il est installé

    soit faire un setup qui copiera les fichiers avec l'exe, et qui pourrait éventuellement s'occuper d'installer le framework s'il n'est pas présent
    Je choisirai plutôt cette option, on m'a parler de inno setup, ça a pas l'air trop trop compliqué à utiliser et je pense que ça pourrait répondre au besoin

  4. #4
    Expert éminent sénior Avatar de Pol63
    Homme Profil pro
    .NET / SQL SERVER
    Inscrit en
    Avril 2007
    Messages
    14 154
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 42
    Localisation : France, Puy de Dôme (Auvergne)

    Informations professionnelles :
    Activité : .NET / SQL SERVER

    Informations forums :
    Inscription : Avril 2007
    Messages : 14 154
    Points : 25 072
    Points
    25 072
    Par défaut
    Citation Envoyé par GuillaumeNcy Voir le message
    Ca a l'air très bien ça, on m'en a parlé par exemple pour mes documents le code correspond à ça ?
    Environment.GetFolderPath(Environment.SpecialFolder.myDocuments)
    c'est ca
    mais si c'est des fichiers qu'il faut masquer à l'utilisateur il y a appdata ou un truc dans le genre

    Citation Envoyé par GuillaumeNcy Voir le message
    Comment savoir si il est installé
    s'il n'est pas installé l'appli ne démarrera pas, donc ca ne sert à rien de le tester par code ^^
    Cours complets, tutos et autres FAQ ici : C# - VB.NET

  5. #5
    Expert confirmé
    Avatar de wallace1
    Homme Profil pro
    Administrateur systèmes
    Inscrit en
    Octobre 2008
    Messages
    1 966
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Puy de Dôme (Auvergne)

    Informations professionnelles :
    Activité : Administrateur systèmes
    Secteur : Aéronautique - Marine - Espace - Armement

    Informations forums :
    Inscription : Octobre 2008
    Messages : 1 966
    Points : 4 005
    Points
    4 005
    Billets dans le blog
    7
    Par défaut
    Bonsoir GuillaumeNcy,

    Comme l'a mentionné Pol63, pour connaitre le chemin d'ou s'exécute ton application :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    Private _appDir as string = application.startupPath



    Citation Envoyé par Pol63 Voir le message
    s'il n'est pas installé l'appli ne démarrera pas, donc ca ne sert à rien de le tester par code ^^
    En fait si le framework n'est pas installé ca affiche une belle fenêtre du genre : l'application n'a pas pu démarrer ou alors à cesser de fonctionner..... c'est pour cela qu'il vaut mieux tester s'il est installé ca fait plus propre tout de même.

    Pour détecter si une version du framework est installé :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
     
    Public Function Framework45isInstalled()
        If Runtime.InteropServices.RuntimeEnvironment.GetSystemVersion.StartsWith("v4.5") Then
            Return True
         End If
         Return False
    End Function
    A toi de l'agrémenter pour ton besoin.

    A+

  6. #6
    Membre régulier
    Homme Profil pro
    Ingénieur
    Inscrit en
    Octobre 2013
    Messages
    101
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 35
    Localisation : France, Meurthe et Moselle (Lorraine)

    Informations professionnelles :
    Activité : Ingénieur

    Informations forums :
    Inscription : Octobre 2013
    Messages : 101
    Points : 80
    Points
    80
    Par défaut
    N'ayant pas accès aux autres postes ce soir, je peux pas essayer d'installation pour voir si le Framework est ok, par contre je vais utiliser le appdata car en effet c'est toujours confortable de savoir que l'utilisateur n'a pas plus d'accès qu'il ne lui en faut^^

    Je te tiens au courant,
    Merci !

  7. #7
    Membre expérimenté
    Homme Profil pro
    Développeur .Net / Delphi
    Inscrit en
    Juillet 2002
    Messages
    738
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Eure (Haute Normandie)

    Informations professionnelles :
    Activité : Développeur .Net / Delphi
    Secteur : Finance

    Informations forums :
    Inscription : Juillet 2002
    Messages : 738
    Points : 1 745
    Points
    1 745
    Par défaut
    Bonjour,
    Citation Envoyé par wallace1 Voir le message
    Pour détecter si une version du framework est installé :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
     
    Public Function Framework45isInstalled()
        If Runtime.InteropServices.RuntimeEnvironment.GetSystemVersion.StartsWith("v4.5") Then
            Return True
         End If
         Return False
    End Function
    Comme l'a mentionné Pol63, tester la présence du Framework par code, s'il n'est pas installé, le code ne peut pas fonctionner...
    Maintenant, on peut trouver facilement sur le net des scripts pour InnoSetup permettant de tester la présence du framework à l'installation.

  8. #8
    Expert confirmé
    Avatar de wallace1
    Homme Profil pro
    Administrateur systèmes
    Inscrit en
    Octobre 2008
    Messages
    1 966
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Puy de Dôme (Auvergne)

    Informations professionnelles :
    Activité : Administrateur systèmes
    Secteur : Aéronautique - Marine - Espace - Armement

    Informations forums :
    Inscription : Octobre 2008
    Messages : 1 966
    Points : 4 005
    Points
    4 005
    Billets dans le blog
    7
    Par défaut
    Citation Envoyé par ebastien Voir le message
    Bonjour,

    Comme l'a mentionné Pol63, tester la présence du Framework par code, s'il n'est pas installé, le code ne peut pas fonctionner...
    Maintenant, on peut trouver facilement sur le net des scripts pour InnoSetup permettant de tester la présence du framework à l'installation.
    Oui effectivement, je me suis mal exprimé...Je voulais dire pour savoir si la version appropriée du framework est installée pour faire tourner l'application ....autant pour moi.....

  9. #9
    Membre habitué Avatar de CLeBeR
    Homme Profil pro
    Étudiant
    Inscrit en
    Septembre 2011
    Messages
    412
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Septembre 2011
    Messages : 412
    Points : 188
    Points
    188
    Par défaut
    Salut à tous,
    Pour éviter les problèmes de Framework pourquoi ne pas compiler le programme avec un Framework dont est sur qu'il soit installé sur les PC ? Après je ne sais pas si c'est très professionnel de travailler avec un Framework plus ancien, les experts te le diront mieux que moi
    Pensez à voter pour une réponse qui vous aide ou pour une personne insolente !
    Si votre sujet est résolu, cliquez sur le bouton !

  10. #10
    Expert éminent sénior Avatar de Pol63
    Homme Profil pro
    .NET / SQL SERVER
    Inscrit en
    Avril 2007
    Messages
    14 154
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 42
    Localisation : France, Puy de Dôme (Auvergne)

    Informations professionnelles :
    Activité : .NET / SQL SERVER

    Informations forums :
    Inscription : Avril 2007
    Messages : 14 154
    Points : 25 072
    Points
    25 072
    Par défaut
    Citation Envoyé par CLeBeR Voir le message
    Salut à tous,
    Pour éviter les problèmes de Framework pourquoi ne pas compiler le programme avec un Framework dont est sur qu'il soit installé sur les PC ? Après je ne sais pas si c'est très professionnel de travailler avec un Framework plus ancien, les experts te le diront mieux que moi
    idée un peu bête oui
    le but d'utiliser un langage récent (et donc un framework récent) c'est de pouvoir faire plus de chose, ou plus vite, ou plus maintenable
    si tout le monde part de ton raisonnement, il ne serait plus utile de développer de nouveaux langages, ni de nouveaux OS, ni de nouveaux usages etc...
    et après autant programmer tous en assembleur, ca marchera sur plus d'OS ...

    et au final un setup c'est simple à utiliser et ca répond au problème
    Cours complets, tutos et autres FAQ ici : C# - VB.NET

  11. #11
    Membre régulier
    Homme Profil pro
    Ingénieur
    Inscrit en
    Octobre 2013
    Messages
    101
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 35
    Localisation : France, Meurthe et Moselle (Lorraine)

    Informations professionnelles :
    Activité : Ingénieur

    Informations forums :
    Inscription : Octobre 2013
    Messages : 101
    Points : 80
    Points
    80
    Par défaut
    Bonjour à tous,

    Tout d'abord merci pour votre participation!

    Victoire ça fonctionne

    Donc pour le Framework pas de soucis car tout le monde est bien équipé ici. Une machine à refusé l'application en m'informant que son Framework n'était pas compatible (car plus ancien), mais au moins elle me l'a dit! (juste après avoir installer l'appli).

    Malgré tout je vais quand même essayer de faire vérifier le Framework systématiquement, par innosetup en effet c'est possible.

    Sinon aucun soucis particuliers pour la création du setup, c'est bien guidé et le code est généré instantanément...

    Petit tutoriel en français pour ceux qui sont intéressé par inno setup : http://youtu.be/t2b3MV2EC_E?t=2m58s

    Merci à tous!

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. installer une application struts sur le reseau
    Par zurich dans le forum Struts 1
    Réponses: 2
    Dernier message: 17/10/2006, 17h22
  2. comment installer une application acces?
    Par issam16 dans le forum Access
    Réponses: 4
    Dernier message: 13/07/2006, 16h42
  3. Installer une application sous Ubuntu
    Par arnolem dans le forum Applications et environnements graphiques
    Réponses: 8
    Dernier message: 06/04/2006, 09h37
  4. impossible d'installer une application
    Par kitiss dans le forum Windows XP
    Réponses: 4
    Dernier message: 23/09/2005, 20h14
  5. Installer une application utilisant qt
    Par X Trips dans le forum Applications et environnements graphiques
    Réponses: 7
    Dernier message: 13/09/2005, 20h49

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