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 :

Compatibilité de version des runtime


Sujet :

C#

  1. #1
    Membre à l'essai
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Février 2015
    Messages
    22
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 28
    Localisation : France, Gironde (Aquitaine)

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

    Informations forums :
    Inscription : Février 2015
    Messages : 22
    Points : 20
    Points
    20
    Par défaut Compatibilité de version des runtime
    Bonjour à tous,

    J'ai un souci :
    Je développe une application asp.Net (je sais qu'il y a un forum dédié mais la question concerne uniquement la partie c# et .net).
    Cette application doit pouvoir se connecter à une imprimante à distance, pour cela, j'ai choisi d'utiliser Google Cloud Print, j'utilise donc une bibliothèque de classes pour me simplifier la vie.
    Bibliothèque de classes

    Le souci est que mon application tourne sous le framework 4.0 alors que l'assembly tourne elle sous la version 4.5.2.
    Si je référence la bibliothèque dans un projet dans la même version que l'assembly, ça marche, normal.

    J'ai cru comprendre dans une vidéo que l'application peut supporter des versions inférieures mais pas des versions supérieures, n'y a-t-il pas de moyen de contourner cette limite? j'ai entendu parler de :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    <supportedRuntime version="v4.0.50727"/>
    Est-ce une bonne piste? est-ce déprécié?

    Sinon je vois deux solutions mais qui ne me plaisent pas :
    Traduire tout le code de l'assembly pour le faire tourner sous la version 4.0
    Passez mon application sous la version 4.5.2 de .net mais là je pense que c'est pas une mince affaire, à moins que je ne me trompe?

    Merci de votre aide!
    Nico.

  2. #2
    Expert éminent sénior

    Avatar de François DORIN
    Homme Profil pro
    Consultant informatique
    Inscrit en
    Juillet 2016
    Messages
    2 761
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 40
    Localisation : France, Charente Maritime (Poitou Charente)

    Informations professionnelles :
    Activité : Consultant informatique
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Juillet 2016
    Messages : 2 761
    Points : 10 543
    Points
    10 543
    Billets dans le blog
    21
    Par défaut
    Citation Envoyé par torb500 Voir le message
    Passez mon application sous la version 4.5.2 de .net mais là je pense que c'est pas une mince affaire, à moins que je ne me trompe?
    Généralement, c'est justement une mince affaire. Les frameworks .Net assurent une compatibilité descendante. Si ton code marche en 4.0, il marchera quasi à coup sur en version 4.5.2. La seule source d'incompatibilité que je vois est l'utilisation de nom qui sont devenus des mots-clés avec le Framework 4.5 (au hasard, async, await). Mais hormis cela, et à moins d'avoir des choses très exotiques, le changement de version sera indolore.

    A noter par contre que dans l'autre sens (descendre de version) ce n'est bien évidemment pas vrai !

  3. #3
    Membre à l'essai
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Février 2015
    Messages
    22
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 28
    Localisation : France, Gironde (Aquitaine)

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

    Informations forums :
    Inscription : Février 2015
    Messages : 22
    Points : 20
    Points
    20
    Par défaut
    Citation Envoyé par François DORIN Voir le message
    Généralement, c'est justement une mince affaire. Les frameworks .Net assurent une compatibilité descendante. Si ton code marche en 4.0, il marchera quasi à coup sur en version 4.5.2. La seule source d'incompatibilité que je vois est l'utilisation de nom qui sont devenus des mots-clés avec le Framework 4.5 (au hasard, async, await). Mais hormis cela, et à moins d'avoir des choses très exotiques, le changement de version sera indolore.

    A noter par contre que dans l'autre sens (descendre de version) ce n'est bien évidemment pas vrai !
    Tout a l'air de fonctionner en 4.5.2 effectivement, je n'ai rien non plus à modifier sous IIS? il n'y a pas d'erreur apparemment mais ça me parait louche, comment un pool .net 4.0 peut-il faire tourner une application en 4.5.2?

    En tout cas merci beaucoup, je marque la question comme résolue

    Bonne soirée, Nico.

  4. #4
    Expert éminent sénior

    Avatar de François DORIN
    Homme Profil pro
    Consultant informatique
    Inscrit en
    Juillet 2016
    Messages
    2 761
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 40
    Localisation : France, Charente Maritime (Poitou Charente)

    Informations professionnelles :
    Activité : Consultant informatique
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Juillet 2016
    Messages : 2 761
    Points : 10 543
    Points
    10 543
    Billets dans le blog
    21
    Par défaut
    Citation Envoyé par torb500 Voir le message
    Tout a l'air de fonctionner en 4.5.2 effectivement, je n'ai rien non plus à modifier sous IIS? il n'y a pas d'erreur apparemment mais ça me parait louche, comment un pool .net 4.0 peut-il faire tourner une application en 4.5.2?
    Ca marche, car il y a une différence subtile. Un pool d'application ne fait pas référence à une version de Framework .Net, mais à la version du CLR (Common Language Runtime). En gros, la VM qui fait tourner les programmes .Net. Le Framework 4.5 est simplement une évolution de la bibliothèque standard. Le CLR n'a pas été modifié et est donc le même que l'on utilise le Framework .Net 4.0 ou .Net 4.5

  5. #5
    Membre à l'essai
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Février 2015
    Messages
    22
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 28
    Localisation : France, Gironde (Aquitaine)

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

    Informations forums :
    Inscription : Février 2015
    Messages : 22
    Points : 20
    Points
    20
    Par défaut
    Citation Envoyé par François DORIN Voir le message
    Ca marche, car il y a une différence subtile. Un pool d'application ne fait pas référence à une version de Framework .Net, mais à la version du CLR (Common Language Runtime). En gros, la VM qui fait tourner les programmes .Net. Le Framework 4.5 est simplement une évolution de la bibliothèque standard. Le CLR n'a pas été modifié et est donc le même que l'on utilise le Framework .Net 4.0 ou .Net 4.5
    Ok merci beaucoup!

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

Discussions similaires

  1. compatibilité entre versions
    Par Loctar dans le forum Requêtes
    Réponses: 3
    Dernier message: 22/07/2005, 16h45
  2. [PowerBuilder] [Oracle] Compatibilité de versions
    Par loicmillion dans le forum Powerbuilder
    Réponses: 1
    Dernier message: 24/01/2005, 18h03
  3. Versions des RPMs
    Par MrEddy dans le forum Mandriva / Mageia
    Réponses: 2
    Dernier message: 24/04/2004, 14h54

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