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 :

[VB.NET]Tester si .NET Framework est installé ou non


Sujet :

VB.NET

  1. #1
    Membre à l'essai
    Inscrit en
    Novembre 2004
    Messages
    24
    Détails du profil
    Informations personnelles :
    Âge : 44

    Informations forums :
    Inscription : Novembre 2004
    Messages : 24
    Points : 10
    Points
    10
    Par défaut [VB.NET]Tester si .NET Framework est installé ou non
    Salut à vous !

    J'aimerais que mon programme vérifie si .NET Framework est installé ou non en local.

    Je sais que je peux parcourir la base de registre pour voir les applications installées...

    Mais je me dis aussi que vu que .NET framework est obligatoire pour faire tourner un progamme .NET, y'a bien un petit truc tout fait qui permet de tester ca?

    Une idée?

    Merci à vous

    VTwin

  2. #2
    Membre confirmé

    Profil pro
    Inscrit en
    Janvier 2006
    Messages
    481
    Détails du profil
    Informations personnelles :
    Âge : 42
    Localisation : France, Paris (Île de France)

    Informations forums :
    Inscription : Janvier 2006
    Messages : 481
    Points : 616
    Points
    616
    Par défaut
    Bonsoir,
    Je ne comprend pas bien ta question car,comment veux tu tester la présence du framework .net en VB.net s'il n'est pas la ...
    Je m'esplique :
    Tu ne pourras pas lancer ton appli si tu n'as pas le framework ... (enfin je pense)

    Mais sinon tu peux au moins tester la classe : System.Environment.

    Bonne soirée
    Notalp
    Je pense volontiers à penser aux choses auxquelles je pense que les autres ne penseront pas

  3. #3
    Membre expérimenté
    Avatar de Mehdi Feki
    Profil pro
    Inscrit en
    Décembre 2004
    Messages
    1 113
    Détails du profil
    Informations personnelles :
    Âge : 41
    Localisation : France

    Informations forums :
    Inscription : Décembre 2004
    Messages : 1 113
    Points : 1 566
    Points
    1 566
    Par défaut
    Salut,

    Quand tu genere ton projet d'installation, il exitse une option qui permet de verifier l'existence du framework avant l'installation. Je crois que tu peux même inclure le framework dans le package d'installation.

    Voici un lien pour plus d'informations :HOW TO: Distribute the .NET Framework with a Visual Studio .NET Deployment Project
    Mehdi Feki : Modérateur .Net

  4. #4
    Membre à l'essai
    Inscrit en
    Novembre 2004
    Messages
    24
    Détails du profil
    Informations personnelles :
    Âge : 44

    Informations forums :
    Inscription : Novembre 2004
    Messages : 24
    Points : 10
    Points
    10
    Par défaut
    notalp : t'as raison, faut que j'aille me coucher ca ira mieux demain

    mehdi_tn : le probleme c'est que je veux lancer mon exe sans faire de package d'installation...

    Mon soucis est que l'utilisateur va lancer l'appli juste apres avoir installé windows, sans driver ni rien, ni donc .NET framework installé dans la plupart des cas...

    argh faut que je trouve autre chose


    Merci a vous pour les reponse !

  5. #5
    Membre expérimenté
    Avatar de Mehdi Feki
    Profil pro
    Inscrit en
    Décembre 2004
    Messages
    1 113
    Détails du profil
    Informations personnelles :
    Âge : 41
    Localisation : France

    Informations forums :
    Inscription : Décembre 2004
    Messages : 1 113
    Points : 1 566
    Points
    1 566
    Par défaut
    tu as mal posé la question, tu nous demande comment testé si le framework est installé ! alors que t'es sûr qu'il n'est pas installé

    [VB.NET]Tester si .NET Framework est installé ou non
    Mehdi Feki : Modérateur .Net

  6. #6
    Membre à l'essai
    Inscrit en
    Novembre 2004
    Messages
    24
    Détails du profil
    Informations personnelles :
    Âge : 44

    Informations forums :
    Inscription : Novembre 2004
    Messages : 24
    Points : 10
    Points
    10
    Par défaut
    Non je ne suis pas sur qu'il ne sera pas installé.

    Imaginons que l'utilisateur installe windows, puis fasse une mise a jour complete depuis windows update --> .NET Framework sera installé

    Si l'utilisateur lance l'exe sans avoir fait les mises à jour windows --> .NET framework ne sera pas installé et l'application plantera

    Concretement je vous explique le but de l'appli : faire un CD de drivers qui installe automatiquement les bons drivers liés au matériel de la machine. Un peu comme les CD de drivers livrés avec une carte mere

    En y reflechissant je pourrait faire plus simple en lancant l'installation de .NET framework dans tous les cas via l'autorun du CD, en mode silent.
    Ensuite apres tout ca mon appli demarrerait, toujours grace à l'autorun.
    Je sais pas trop si c'est faisable via un simple autorun.

    VTwin

  7. #7
    Membre expérimenté
    Avatar de Mehdi Feki
    Profil pro
    Inscrit en
    Décembre 2004
    Messages
    1 113
    Détails du profil
    Informations personnelles :
    Âge : 41
    Localisation : France

    Informations forums :
    Inscription : Décembre 2004
    Messages : 1 113
    Points : 1 566
    Points
    1 566
    Par défaut
    Le mieux, c'est de faire du C++ natif.
    Mehdi Feki : Modérateur .Net

  8. #8
    Membre à l'essai
    Inscrit en
    Novembre 2004
    Messages
    24
    Détails du profil
    Informations personnelles :
    Âge : 44

    Informations forums :
    Inscription : Novembre 2004
    Messages : 24
    Points : 10
    Points
    10
    Par défaut
    oui je crois que t'as raison... mmm bon je vais me debrouiller sans en attendant d'apprendre le C++

    ... j'ai une autre idée pour résoudre le probleme qui n'a rien a voir avec la programmation

    Merci pour ton aide

  9. #9
    Membre expérimenté Avatar de Mose
    Profil pro
    Inscrit en
    Janvier 2006
    Messages
    1 143
    Détails du profil
    Informations personnelles :
    Âge : 46
    Localisation : France

    Informations forums :
    Inscription : Janvier 2006
    Messages : 1 143
    Points : 1 379
    Points
    1 379
    Par défaut
    Citation Envoyé par VTwin
    oui je crois que t'as raison... mmm bon je vais me debrouiller sans en attendant d'apprendre le C++
    La méthode de l'installation silencieuse était pas mal je trouve.
    On peux faire ça avec le 1.1 ?
    Citation Envoyé par VTwin
    ... j'ai une autre idée pour résoudre le probleme qui n'a rien a voir avec la programmation
    Un simple ghost peut être ?

  10. #10
    Membre à l'essai
    Inscrit en
    Novembre 2004
    Messages
    24
    Détails du profil
    Informations personnelles :
    Âge : 44

    Informations forums :
    Inscription : Novembre 2004
    Messages : 24
    Points : 10
    Points
    10
    Par défaut
    Mose :

    La methode d'installation silencieuse fonctionne en .bat par exemple.
    Mais l'install de .NET framework dure plusieurs minutes... trop long ! l'utilisateur a 12 fois le temps de se dire que le truc ne marche pas, car en mode silencieux, on a vraiment l'impression qu'il ne sepasse rien.
    Pour l'installer en silent (la 2.0) : executer install.exe /q en ligne de commande.
    Executer install.exe /? pour connaitre tout les parametres dispos!

    Pour ma solution de secours, je bosse pour un constructeur informatique et je fabrique les CD de restauration Windows. Il me suffit donc d'integrer le .Net framework à mes CD de restauration, comme ca le client l'aura d'office avec son install de Windows. Par contre c'est toujours un gros travail de refaire un CD de restauration et la je suis dependant de mon employeur

    Cependant l'histoire du C++ natif de mehdi_tn m'a donné l'idée de faire un exe en C++ qui teste la presence de .Net framework, propose de l'installer s'il n'y est pas, et ensuite lance mon appli VB. Bref un petit truc sympa pour me lancer dans le C++

    VTwin

  11. #11
    Expert éminent
    Avatar de Ditch
    Inscrit en
    Mars 2003
    Messages
    4 160
    Détails du profil
    Informations personnelles :
    Âge : 42

    Informations forums :
    Inscription : Mars 2003
    Messages : 4 160
    Points : 9 634
    Points
    9 634
    Par défaut
    le framework 1.1 est dans le SP2 de XP donc si c'est dans cette config, tu peux faire ton applic en 1.1...

    Didier Danse

    Most Valuable Profesionnal SharePoint
    Microsoft Certified Application Developer
    Mes articles sur developpez.com
    Mon site perso


  12. #12
    Membre à l'essai
    Inscrit en
    Novembre 2004
    Messages
    24
    Détails du profil
    Informations personnelles :
    Âge : 44

    Informations forums :
    Inscription : Novembre 2004
    Messages : 24
    Points : 10
    Points
    10
    Par défaut
    Ca y'est j'ai reussi à faire un prog en C++ natif qui permet de tester et d'installer .NET Framework si necessaire, puis de lancer une application .NET, le tout avec un fichier ini pour une utilisation "passe partout" !

    Le programme n'est pas encore tres propre vu que je ne connaissais pas le C++, y'a quelques ameliorations à apporter pour eviter tout plantage possible, mais au moins ca fonctionne!

    VTwin

  13. #13
    Membre à l'essai
    Profil pro
    Inscrit en
    Février 2007
    Messages
    28
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Février 2007
    Messages : 28
    Points : 18
    Points
    18
    Par défaut
    bonjour bonjour

    je suis tombé sur cette ancien message, et en fait j'aurai besoin de faire exactement la même chose que lui.
    Il avait l'air d'avoir trouvé une solution en C++, ce qui me plairait bien, car si je trouve je lance l'exécutable de mon appli, si je ne trouve pas je lance l'installation de .NET puis celle de mon appli.

    Mais voila, je ne vois pas du tout comment il s'y est pris .. nif nif

    quelqu'un pourrait-il m'aider ?

    Cordialement
    Yoann

  14. #14
    Membre à l'essai
    Inscrit en
    Novembre 2004
    Messages
    24
    Détails du profil
    Informations personnelles :
    Âge : 44

    Informations forums :
    Inscription : Novembre 2004
    Messages : 24
    Points : 10
    Points
    10
    Par défaut
    Bonjour,

    En gros pour savoir si framework est installé, il suffit de parcourir la base de registre à l'endroit suivant :
    HKEY_LOCAL_MACHINE\\SOFTWARE\\Microsoft\\Windows\\CurrentVersion\\uninstall"

    Dans le cas de Framework 2.0, on recherche si une clé nommée "Microsoft .NET Framework 2.0" existe. Si elle existe : c'est installé, sinon ce n'est pas intallé

    Voila pour le focntionnement global, j'ai amélioré le truc en ajoutant un .ini avec
    - le nom de l'application à verifier, si par exemple on souhaite verifier l'installation de .NET 3.0 plus tard
    - le chemin du fichier setup à lancer pour l'installation de .net
    - l'application developpée en .net qui se lance à la fin du programme

    Je peux vous transmettre le code si avez avez besoin de concret, cependant je ne suis pas developpeur C++ et j'ai fais beaucoup de copier-coller de divers codes, ainsi que du bidouillage que j'ai moi meme du mal a comprendre !
    Heureusement ca fonctionne sans probleme, et il y a peu de lignes

    N'hesitez pas pour plus d'infos

  15. #15
    Membre à l'essai
    Profil pro
    Inscrit en
    Février 2007
    Messages
    28
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Février 2007
    Messages : 28
    Points : 18
    Points
    18
    Par défaut
    je ne dirai pas non pour le code.

    Je comprend bien le principe de la chose, mais je ne sais pas trop trop comment faire pour aller faire mumuse dans la base de registre. Enfin je pense que je peux aller glaner cela sur le net, mais j'aimerai pouvoir profiter du savoir des bouts de code que vous avez acquis =)

    de plus je pourrai voir concrétement à quoi sert un .ini. Car avec la description que vous m'avez donné j'aurai été tenté par moi même de faire un bète .txt

    Merci d'avance en tt cas si je peux voir votre code C++, même pas beau lol Et à l'occasion si j'arrive à le refaire un peu plus beau je vous renverrai cela si ça vous tente ^^

  16. #16
    Membre à l'essai
    Inscrit en
    Novembre 2004
    Messages
    24
    Détails du profil
    Informations personnelles :
    Âge : 44

    Informations forums :
    Inscription : Novembre 2004
    Messages : 24
    Points : 10
    Points
    10
    Par défaut
    Je pense qu'on peut se tutoyer ;op

    Envoie moi ton adresse mail en MP et je te zipperai le projet par mail.

    Vtwin

  17. #17
    Membre à l'essai
    Inscrit en
    Novembre 2004
    Messages
    24
    Détails du profil
    Informations personnelles :
    Âge : 44

    Informations forums :
    Inscription : Novembre 2004
    Messages : 24
    Points : 10
    Points
    10
    Par défaut
    Salut,

    Vu que j'ai plusieurs demandes pour le code, je le transmets en fichier joint dans ce post.

    Attention, renommer le fichier .txt en .ini pour le bon fonctionnement.

    Si vous gardez le fichier .ini tel quel, le fichier d'install de .net doit s'appeller dotnetfx.exe et dois se trouver à la racine du projet. Ceci est modifiable grace au parametre XG_fileName du fichier ini

    Le parametre XG_AppName est le nom de l'appli .net telle qu'elle se trouve dans la base de registre. Ne pas modifier, sauf si vous testez autres chose que .net 2.0

    Le programme à lancer à la fin se trouve aussi dans le fichier ini. indiquez le chemin de ce que vous souhaitez lancer dans le parametre XG_AppLaunchPath du fichier ini

    Concernant le code en lui meme, je suis ouvert à tout commentaire vu que je ne suis vraiment pas dev c++, et que queleques trucs sont enncore à faire.

    VTwin
    Fichiers attachés Fichiers attachés

  18. #18
    En attente de confirmation mail
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Juillet 2009
    Messages
    338
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 50
    Localisation : France, Pas de Calais (Nord Pas de Calais)

    Informations professionnelles :
    Activité : Développeur informatique

    Informations forums :
    Inscription : Juillet 2009
    Messages : 338
    Points : 366
    Points
    366
    Par défaut
    Citation Envoyé par VTwin Voir le message
    Bonjour,

    En gros pour savoir si framework est installé, il suffit de parcourir la base de registre à l'endroit suivant :
    HKEY_LOCAL_MACHINE\\SOFTWARE\\Microsoft\\Windows\\CurrentVersion\\uninstall"

    Dans le cas de Framework 2.0, on recherche si une clé nommée "Microsoft .NET Framework 2.0" existe. Si elle existe : c'est installé, sinon ce n'est pas intallé
    Oui c'est un idée. Dans mon cas, j'ai plusieurs sources, un soft important toujours en VB6 et petit à petit des modules fait en C#. Donc j'ai du trouver comment vérifier rapidement la présence du FrameWork.Net : En cherchant la présence du dossier {Windows}\Microsoft.NET\Framework\v3.0 ou {Windows}\Microsoft.NET\Framework\v3.5 ...

  19. #19
    Modérateur
    Avatar de Sankasssss
    Homme Profil pro
    Développeur .NET
    Inscrit en
    Novembre 2006
    Messages
    1 842
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 41
    Localisation : Belgique

    Informations professionnelles :
    Activité : Développeur .NET
    Secteur : Administration - Collectivité locale

    Informations forums :
    Inscription : Novembre 2006
    Messages : 1 842
    Points : 4 232
    Points
    4 232
    Par défaut
    hé toss.net t'as répondu à un message de février 2007, il faut dormir à 4h58

  20. #20
    En attente de confirmation mail
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Juillet 2009
    Messages
    338
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 50
    Localisation : France, Pas de Calais (Nord Pas de Calais)

    Informations professionnelles :
    Activité : Développeur informatique

    Informations forums :
    Inscription : Juillet 2009
    Messages : 338
    Points : 366
    Points
    366
    Par défaut
    oui 2007 ca peut dater mais y'a tj des personnes comme moi où ce vieux post est utile et j'ajoute mon complément
    PS : 4h58, ben disons que si je suis réveillé je cherche plus à m'endormir.. je suis du matin quoi !

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

Discussions similaires

  1. Réponses: 4
    Dernier message: 24/10/2011, 18h18
  2. tester si une JFrame est ouverte ou non?
    Par nadia22 dans le forum Agents de placement/Fenêtres
    Réponses: 2
    Dernier message: 12/06/2009, 18h35
  3. Réponses: 6
    Dernier message: 04/11/2008, 09h51
  4. Tester si Outlook 2003 est ouvert ou non
    Par Fredo67 dans le forum VBA Access
    Réponses: 1
    Dernier message: 05/12/2007, 21h17
  5. Tester si Outlook Express est installé
    Par Sytchev3 dans le forum VB 6 et antérieur
    Réponses: 4
    Dernier message: 08/03/2007, 12h13

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