pseudoOM
Messages postés173Date d'inscriptionjeudi 3 février 2005StatutMembreDernière intervention30 janvier 2009
-
16 déc. 2008 à 09:54
cs_bidouille007
Messages postés257Date d'inscriptionjeudi 11 septembre 2008StatutMembreDernière intervention22 décembre 2012
-
5 févr. 2010 à 02:18
Bonjour à tous,
voici ma question : connaissant déjà "Environment.Version" qui me retourne la version du framework installé sur la machine, existe-t-il une fonction qui permet de savoir sous quel framework .NET une application a été développée
Merci pour votre aide et vos réponse.
pseudoOM
Le partage est une force alors n'hésitez pas à cliquer sur réponse acceptée pour partager les solutions trouvées !
pseudoOM
Messages postés173Date d'inscriptionjeudi 3 février 2005StatutMembreDernière intervention30 janvier 20091 16 déc. 2008 à 14:03
Oui je me doutais bien de la réponse.
Je vais donc essayer de trouver comment connaitre la version de VB du projet et faire un test. Si c'est du 2003 alors c'est un FW 1.1, si c'est c'est 2005 alors c'est un FW 2.0, et si c'est du 2008 alors c'est un FW 3.5.
Comment faire je ne sais pas mais je suppose que je vais trouver.
Merci
pseudoOM
Le partage est une force alors n'hésitez pas à cliquer sur réponse acceptée pour partager les solutions trouvées !
cs_fauve
Messages postés661Date d'inscriptionvendredi 2 décembre 2005StatutMembreDernière intervention23 mars 20118 16 déc. 2008 à 18:51
Salut,
Voici une fonction pour récupérer toutes les versions de Framework installées sur un ordinateur :
<hr size="2" width="100%" />
Note 1 : Il faut passer en paramètre une collection de type String déclaré par exemple comme ceci :
Dim VersionFramework As New System.Collections.Generic.List(Of String)
Note 2 : En utilisant ByRef dans la fonction, celle-ci peut accéder et modifier le contenu de la collection
VersionFramework passé en paramètre.
Ainsi, après l'appel de la fonction, la collection VersionFramework contiendra toutes les versions
installées sur l'ordinateur.
<hr size="2" width="100%" />
Sub Framework_installe(ByRef Tab_Framework As System.Collections.Generic.List(Of String))
Dim Di1 As New IO.DirectoryInfo(Environment.SystemDirectory)
For Each Folder As String In My.Computer.FileSystem.GetDirectories(Di1.Parent.FullName + "/Microsoft.NET/Framework/")
Dim Di2 As New IO.DirectoryInfo(Folder)
If Di2.Name.Contains("v") And Di2.Name.Contains(".") Then
If IsNumeric(Di2.Name.Replace(".", String.Empty).Replace("v", String.Empty)) = True Then
Tab_Framework.Add(Di2.Name)
End If
End If
Next
End Sub
<hr size="2" width="100%" />
Note : Si tu as d'autres questions en rapport avec ce sujet, n'hésites pas
pseudoOM
Messages postés173Date d'inscriptionjeudi 3 février 2005StatutMembreDernière intervention30 janvier 20091 17 déc. 2008 à 09:25
Merci Fauve c'est bien gentil et je prends note.
Mais cela ne résous pas mon problème. En fait je vais expliquer ma démarche.
Je dois faire une classe qui va retourner des infos sur la machine et le programme qui tourne. Ce que je voudrais faire c'est une fonction qui va me retourner la version du framework avec lequel l'application a été développée.
Tu me dira si je fais un setup clickonce je peux dire d'ajouter le framework dans le setup.
Bon ok mais on sait aussi que l'on peut "installer" un programme en copier-coller avec dot net. Cependant il faut que le bon framework soit déjà installé pour que cela fonctionne.
Imaginons que c'est fait sur une machine et pas sur l'autre. Et bien en lancant mon application et en allant demander à la classe : "quel est ma version de framework ?" elle va me retourner FW2.0 par exemple et je saurai que sur l'autre machine je dois installer un 2.0 pour que mon exe tourne correctement.
Parce qu'en fait, moi comme développeur je sais que je l'ai fait en VB2005 et qu'il faut un 2.0 mais mon client ne le sait peut être pas et pourra donc le savoir. De plus ce serait une classe réutilisable pour mes autres projets.
J'espère que tu comprends mieux ce que je dois faire et merci pour ton aide ainsi que celle de NHenry.
pseudoOM
Le partage est une force alors n'hésitez pas à cliquer sur réponse acceptée pour partager les solutions trouvées !
Vous n’avez pas trouvé la réponse que vous recherchez ?
pseudoOM
Messages postés173Date d'inscriptionjeudi 3 février 2005StatutMembreDernière intervention30 janvier 20091 17 déc. 2008 à 15:50
Oui je connais mais ça ne me retourne pas la version du framework du projet. Je développe sous VB2008 et quand je mets ce bout de code et je lance mon application j'obtiens '2.0.50727.3053' au lieu du 3.0 ou du 3.5 !
Je me dis donc que ce n'est pas encore la solution.
Caramba encore raté !
pseudoOM
Le partage est une force alors n'hésitez pas à cliquer sur réponse acceptée pour partager les solutions trouvées !