Tester l'existance du framework .net 2.0

[Résolu]
Signaler
Messages postés
79
Date d'inscription
lundi 1 mars 2004
Statut
Membre
Dernière intervention
19 janvier 2012
-
Messages postés
51
Date d'inscription
vendredi 23 juillet 2004
Statut
Membre
Dernière intervention
23 février 2012
-
Bonjour,

je voudrais savoir comment faire en vb6 pour savoir si le framework .net 2.0 est installé sur le poste ou tourne l'application

Merci

Billy21121

17 réponses

Messages postés
17286
Date d'inscription
mercredi 2 janvier 2002
Statut
Modérateur
Dernière intervention
23 décembre 2019
69
une des possibilités, c'est :

HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\.NETFramework\policy\v2.0

Renfield
Admin CodeS-SourceS- MVP Visual Basic

Salut, connais tu le nom du processus sur le gestionnaire des taches? si oui j'ai un bout de programme pour lister tous les processus actifs et arreter celui que tu veux, si tu veux je te l'envoi..
A+

A.C.I.V.E SARL
Automatismes Conception Informatique Vidéo Electronique
Messages postés
17286
Date d'inscription
mercredi 2 janvier 2002
Statut
Modérateur
Dernière intervention
23 décembre 2019
69
quel rapport, acive ?

Renfield
Admin CodeS-SourceS- MVP Visual Basic
Messages postés
79
Date d'inscription
lundi 1 mars 2004
Statut
Membre
Dernière intervention
19 janvier 2012

Salut acive,
Je ne comprend pas la réponse. En fait je n'ai pas besoin de l'arreter. Je veux simplement savoir si il est installé sur la machine.

en tout cas je te remercie d'avoir pris le temps de répondre

Merci

Billy21121

Par exemple si tu ouvres un fichier excel puis tu fais Ctrl+Alt+Supp, gestionnaire des taches, puis l'onglet processus tu vas avoir la liste de tous les programmes (processus) qui tournent sur ton ordi dont 'Excel.exe' puisque t'as ouvert un fichier excel.
Avec le framework c'est la meme chose, tu peux savoir s'il tourne sur la machine

A.C.I.V.E SARL
Automatismes Conception Informatique Vidéo Electronique

Mon code permet de les arreter mais on est pas obligé, on peux juste voir la liste des processus..

A.C.I.V.E SARL
Automatismes Conception Informatique Vidéo Electronique
Messages postés
81
Date d'inscription
lundi 10 avril 2006
Statut
Membre
Dernière intervention
1 janvier 2010

Salut, je crois pas qu'il y est un processus attaché à l'éxecution du FrameWork, en tout cas je n'en n'est jamais vu. C'est comme pour VB6, est ce qu'il y à un processus pour les dll du runtime ?

A plus.
Messages postés
7668
Date d'inscription
samedi 5 novembre 2005
Statut
Membre
Dernière intervention
22 août 2014
26
Si c'est en vue de l'installation de ton application sur une autre machine et que tu essayes d'éviter une installation du FrameWork en cas d'existence antérieure de ce dernier, il me semble que c'est assez maladroit...
Imagine par exemple que, distribuant ton appli à une machine sur laquelle le dit FrameWork serait déjà présent (pour une raison ou pour une autre, notamment en raison d'une installation antérieure d'une autre appli ayant installé ce FrameWork)...tu décidais de ne pas faire à ton tour une telle installation...
Imagine maintenant que le client, pour des raisons qui sont les siennes, désinstalle l'application qui avait antérieurement installé le FrameWork déjà présent... Ton appli ne pourra plus tourner sur sa machine...
Si tu fais par contre une installation complète (ton appli + le FrameWork), Windows gèrera par un "compteur" et ne fera disparaître le framework que lorsqu'auront été supprimées (dans leut totalité) toutes les applications ayant soit installé le FrameWork, soit provoqué l'incrémentation du "compteur"...
C'est tout au moins ce que j'ai compris du fonctionnement de windows en ce qui concerne les runtimes, FrameWorks, etc...

Je ne vois donc, en ce qui me concerne, aucune raison de ne pas faire un "paquet" complet.
Messages postés
79
Date d'inscription
lundi 1 mars 2004
Statut
Membre
Dernière intervention
19 janvier 2012

salut jmfmarques,
concernant ta réponse je v t'expliquer mon cas.

J'ai une appli vb6 que  je commence a migrer tout doucement en vb.net 2005. Au lancement de l'appli, je voudrais pouvoir tester l'existence du framework dot net pour savoir quelle DLL utiliser. (vb6 ou vb.net?) selon si l'installation du dot net est faite.

Pour le moment, les deux types de dll peuvent être utiliser, arrivera un jour ou la seules les dll vb.net seront utilisée

Billy21121
Messages postés
7668
Date d'inscription
samedi 5 novembre 2005
Statut
Membre
Dernière intervention
22 août 2014
26
Sur ta propre machine ?
Je te comprends encore moins ....
Tu le sais, ma foi, que le FrameWork est présent.
Que veux-tu dire exactement ?
Messages postés
7741
Date d'inscription
mercredi 1 septembre 2004
Statut
Membre
Dernière intervention
24 septembre 2014
40
Salut Jacques, concernant le Framework, il est installé une fois et une seule sur la machine. Si tu tente de l'installer alors qu'il est déjà présent, le processus s'arrete imédiatement et il ne s'installera pas de nouveau.

De plus le Framework, une fois installé, est considéré comme faisant partie integrante du système. De désinstaller l'application à l'origine de l'installation du Framework, ne doit normalement pas désinstaller le Framework. Pour le désinstallé, il faut le faire explicitement en passant par le panneau de configuration.

Sinon, je vais dans ton sens. Integrer systématiquement le Framework dans le pack d'installation, surtout si on ne s'adresse pas à des plateformes XPSP2 ou Vista. Seulement 50Mo pour le pack de redistribution du Framework .NET2.0. Qu'est-ce de nos jours face aux 700Mo d'un cd.
Comme ça si c'est necessaire, il s'installera automatiquement.

---- Sevyc64  (alias Casy) ----<hr size="2" width="100%" /># LE PARTAGE EST NOTRE FORCE #
Messages postés
79
Date d'inscription
lundi 1 mars 2004
Statut
Membre
Dernière intervention
19 janvier 2012

Effectivement sur ma machine je sais que le framework dot net est installé. Par contre sur une machine cliente je ne le sais pas. De plus, je ne peux pas modifier mon msi, donc pas incorporer dedans l'install du framework.

Donc pour savoir quelle dll utiliser j'ai besoin de savoir si le framework 2.0 est installé. De plus, au lancement de mon appli, j'utilise l'outil regasm.exe qui va m'enregistrer mes dll .net. Donc pour l'utiliser il faut que mon framework soit installé.

Merci
Billy21121
Messages postés
883
Date d'inscription
vendredi 3 novembre 2000
Statut
Membre
Dernière intervention
3 mars 2009
7
Moi ce qui me chiffone, c'est quelle différence y-a-t'il entre une "Dll VB 6" et une "Dll VB2005", VB2005 est capable d'utiliser toutes les dll utilisables avec VB6 non ?

__________________________
Julien.
Messages postés
7741
Date d'inscription
mercredi 1 septembre 2004
Statut
Membre
Dernière intervention
24 septembre 2014
40
Non Julien, on parle ici des moteurs d'executions des applications.

RunTime VB6 vs Framework .NET

En gros si le Framework est installé sur la machine, Billy installe la version .Net de son appli. Sinon il installe la version VB6

---- Sevyc64  (alias Casy) ----<hr size="2" width="100%" /># LE PARTAGE EST NOTRE FORCE #
Messages postés
79
Date d'inscription
lundi 1 mars 2004
Statut
Membre
Dernière intervention
19 janvier 2012

Merci casy,
tu as bien résumé le problème.

Par contre, comment faire pour tester l'existence d'un sous répertoire (et non d'une clé) dans la base de registre?

Merci

Billy
Messages postés
7668
Date d'inscription
samedi 5 novembre 2005
Statut
Membre
Dernière intervention
22 août 2014
26
Billy a écrit :

"De plus, au lancement de mon appli, j'utilise l'outil regasm.exe qui va m'enregistrer mes dll .net. Donc pour l'utiliser il faut que mon framework soit installé."

Je ne possède pas VB.Net et réponds donc sans pouvoir vérifier :

Si (et je pense que tel est le cas, comme pour VB5 et VB6...) les dll nécessaires sont dans le répertoire racine du support d'installation, c'est là qu'elles seront cherchées en 1er... et exécutées...

Il n'est par exemple pas nécessaire (avec VB5 ou VB6) d'avoir installé les runtimes pour faire tourner une appli VB5 (ou VB6) depuis un CD. Il suffit que les runtimes nécessaires se trouvent sur le répertoire racine du CD (je l'ai expérimenté mille et une fois.... et tu pourrais essayer....pour voir..)

Il est clair que celà exclut le fonctionnement de fonctions externes ou ocx figurant dans l'application et n'appartenant pas à la versioçn VB.

Si, comme je le pense, ton regasm.exe et les dll qu'il utilise sont sur le répertoire racine de ton CD, pas de problème, normalement....
Messages postés
51
Date d'inscription
vendredi 23 juillet 2004
Statut
Membre
Dernière intervention
23 février 2012

Salut à tous,
Je suis confronté à peut prêt au même
problème que toi

[auteur/BILLY21121/238871.aspx billy21121]
,
comment à tu résolut ton problème?

merci

Nico