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 :

Problème opération arithmétique


Sujet :

VB.NET

  1. #1
    Candidat au Club
    Homme Profil pro
    Développeur web
    Inscrit en
    Décembre 2014
    Messages
    3
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Bas Rhin (Alsace)

    Informations professionnelles :
    Activité : Développeur web

    Informations forums :
    Inscription : Décembre 2014
    Messages : 3
    Points : 4
    Points
    4
    Par défaut Problème opération arithmétique
    Bonjour à tous,

    J'ai un problème avec mon logiciel crée en visual basic.
    J'ai crée un petit launcher pour télécharger et installer un fichier dans un dossier, mais lorsque je veux télécharger le fichier j'ai cette erreur:
    Nom : qNgUeGo.png
Affichages : 859
Taille : 31,7 Ko


    Je vous envoie le code sur pastebin:

    http://pastebin.com/2320Wugx

    Je ne vois pas d'ou viens le problème..

    Je vous remercie d'avance.
    Cordialement.

  2. #2
    Membre régulier
    Homme Profil pro
    Architecte technique
    Inscrit en
    Avril 2003
    Messages
    79
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Architecte technique

    Informations forums :
    Inscription : Avril 2003
    Messages : 79
    Points : 107
    Points
    107
    Par défaut
    Bonsoir,

    Le problème vient d'une opération arithmétique dont le résultat dépasse la capacité de la variable dans laquelle tu stocke le résultat.
    J'ai parcouru ton code rapidement et tu fais de nombreuses opérations. Donc difficile de détecter où se produit l'exception.

    Pourrais tu nous fournir la stacktrace de l'exception (donnée par le bouton détail lorsque l'erreur s'affiche) ou encore mieux debuguer en pas à pas et nous indiquer la ligne où se produit l'erreur ?

    Cordialement,

  3. #3
    Candidat au Club
    Homme Profil pro
    Développeur web
    Inscrit en
    Décembre 2014
    Messages
    3
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Bas Rhin (Alsace)

    Informations professionnelles :
    Activité : Développeur web

    Informations forums :
    Inscription : Décembre 2014
    Messages : 3
    Points : 4
    Points
    4
    Par défaut
    Bonsoir,

    Merci pour ta réponse.
    Je vous vous donne les détail de l'erreur:

    Consultez la fin de ce message pour plus de détails sur l'appel du débogage
    juste-à-temps (JIT) à la place de cette boîte de dialogue.

    ************** Texte de l'exception **************
    System.OverflowException: L'opération arithmétique a provoqué un dépassement de capacité.
    à Microsoft.VisualBasic.CompilerServices.Conversions.ToInteger(String Value)
    à LauncherArmA.Form1.Timer1_Tick(Object sender, EventArgs e) dans C:\Users\Knoell\Desktop\LauncherArmA\LauncherArmA\Form1.vb:ligne 92
    à System.Windows.Forms.Timer.TimerNativeWindow.WndProc(Message& m)
    à System.Windows.Forms.NativeWindow.Callback(IntPtr hWnd, Int32 msg, IntPtr wparam, IntPtr lparam)


    ************** Assemblys chargés **************
    mscorlib
    Version de l'assembly*: 4.0.0.0
    Version Win32*: 4.0.30319.34014 built by: FX45W81RTMGDR
    CodeBase*: file:///C:/Windows/Microsoft.NET/Framework64/v4.0.30319/mscorlib.dll
    ----------------------------------------
    LauncherArmA
    Version de l'assembly*: 1.0.0.0
    Version Win32*: 1.0.0.0
    CodeBase*: file:///C:/Users/Knoell/Desktop/LauncherArmA.exe
    ----------------------------------------
    Microsoft.VisualBasic
    Version de l'assembly*: 10.0.0.0
    Version Win32*: 12.0.20806.33440 built by: FX45W81RTMREL
    CodeBase*: file:///C:/Windows/Microsoft.Net/assembly/GAC_MSIL/Microsoft.VisualBasic/v4.0_10.0.0.0__b03f5f7f11d50a3a/Microsoft.VisualBasic.dll
    ----------------------------------------
    System
    Version de l'assembly*: 4.0.0.0
    Version Win32*: 4.0.30319.34239 built by: FX452RTMGDR
    CodeBase*: file:///C:/Windows/Microsoft.Net/assembly/GAC_MSIL/System/v4.0_4.0.0.0__b77a5c561934e089/System.dll
    ----------------------------------------
    System.Core
    Version de l'assembly*: 4.0.0.0
    Version Win32*: 4.0.30319.33440 built by: FX45W81RTMREL
    CodeBase*: file:///C:/Windows/Microsoft.Net/assembly/GAC_MSIL/System.Core/v4.0_4.0.0.0__b77a5c561934e089/System.Core.dll
    ----------------------------------------
    System.Windows.Forms
    Version de l'assembly*: 4.0.0.0
    Version Win32*: 4.0.30319.33440 built by: FX45W81RTMREL
    CodeBase*: file:///C:/Windows/Microsoft.Net/assembly/GAC_MSIL/System.Windows.Forms/v4.0_4.0.0.0__b77a5c561934e089/System.Windows.Forms.dll
    ----------------------------------------
    System.Drawing
    Version de l'assembly*: 4.0.0.0
    Version Win32*: 4.0.30319.33440 built by: FX45W81RTMREL
    CodeBase*: file:///C:/Windows/Microsoft.Net/assembly/GAC_MSIL/System.Drawing/v4.0_4.0.0.0__b03f5f7f11d50a3a/System.Drawing.dll
    ----------------------------------------
    System.Runtime.Remoting
    Version de l'assembly*: 4.0.0.0
    Version Win32*: 4.0.30319.34243 built by: FX452RTMGDR
    CodeBase*: file:///C:/Windows/Microsoft.Net/assembly/GAC_MSIL/System.Runtime.Remoting/v4.0_4.0.0.0__b77a5c561934e089/System.Runtime.Remoting.dll
    ----------------------------------------
    System.Configuration
    Version de l'assembly*: 4.0.0.0
    Version Win32*: 4.0.30319.33440 built by: FX45W81RTMREL
    CodeBase*: file:///C:/Windows/Microsoft.Net/assembly/GAC_MSIL/System.Configuration/v4.0_4.0.0.0__b03f5f7f11d50a3a/System.Configuration.dll
    ----------------------------------------
    System.Xml
    Version de l'assembly*: 4.0.0.0
    Version Win32*: 4.0.30319.34230 built by: FX452RTMGDR
    CodeBase*: file:///C:/Windows/Microsoft.Net/assembly/GAC_MSIL/System.Xml/v4.0_4.0.0.0__b77a5c561934e089/System.Xml.dll
    ----------------------------------------
    mscorlib.resources
    Version de l'assembly*: 4.0.0.0
    Version Win32*: 4.0.30319.33440 built by: FX45W81RTMREL
    CodeBase*: file:///C:/Windows/Microsoft.Net/assembly/GAC_MSIL/mscorlib.resources/v4.0_4.0.0.0_fr_b77a5c561934e089/mscorlib.resources.dll
    ----------------------------------------
    System.Windows.Forms.resources
    Version de l'assembly*: 4.0.0.0
    Version Win32*: 4.0.30319.33440 built by: FX45W81RTMREL
    CodeBase*: file:///C:/Windows/Microsoft.Net/assembly/GAC_MSIL/System.Windows.Forms.resources/v4.0_4.0.0.0_fr_b77a5c561934e089/System.Windows.Forms.resources.dll
    ----------------------------------------

    ************** Débogage JIT **************
    Pour activer le débogage juste-à-temps (JIT), le fichier de configuration pour cette
    application ou cet ordinateur (machine.config) doit avoir la valeur
    jitDebugging définie dans la section system.windows.forms.
    L'application doit également être compilée avec le débogage
    activé.

    Par exemple*:

    <configuration>
    <system.windows.forms jitDebugging="true" />
    </configuration>

    Lorsque le débogage juste-à-temps est activé, les exceptions non gérées
    seront envoyées au débogueur JIT inscrit sur l'ordinateur
    plutôt que d'être gérées par cette boîte de dialogue.
    Et la ligne d'erreur est:

    Dim size As Integer = My.Computer.FileSystem.ReadAllText(Environment.GetFolderPath(Environment.SpecialFolder.ApplicationData) & "\LauncherArma\size.txt")

    Et mon fichier size.txt:


    3678163607
    Le fichier size.txt donne le total d'octets pour le téléchargement.
    Et quand je baisse la valeur dans le fichier size.txt, le fichier se télécharge mais bug..

    Cordialement.

  4. #4
    Modérateur

    Homme Profil pro
    Inscrit en
    Janvier 2007
    Messages
    1 722
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations forums :
    Inscription : Janvier 2007
    Messages : 1 722
    Points : 5 100
    Points
    5 100
    Par défaut
    Bonjour,

    Avec ces éléments,
    Citation Envoyé par xnooztv Voir le message
    ... l'erreur :
    System.OverflowException: L'opération arithmétique a provoqué un dépassement de capacité.
    Et la ligne d'erreur est:
    Dim size As Integer = My.Computer.FileSystem.ReadAllText(Environment.GetFolderPath(Environment.SpecialFolder.ApplicationData) & "\LauncherArma\size.txt")
    Et mon fichier size.txt:
    3678163607
    tu devrais trouver la réponse, il faut apprendre à cibler l'erreur et chercher.

    Une recherche sur google avec integer VB.NET donne en premier lien : Integer, type de données (Visual Basic) ;
    Contient des entiers 32 bits (4 octets) signés dont la valeur est comprise entre -2 147 483 648 et 2 147 483 647.

    Et comme 3 678 163 607 est plus grand que 2 147 483 647 tu as une erreur.

    il faut changer ton type : Long, type de données (Visual Basic) ;
    Contient des entiers 64 bits (8 octets) signés dont la valeur est comprise entre -9 223 372 036 854 775 808 et 9 223 372 036 854 775 807 (9 2...E+18).

    D'ailleurs, tu peux potentiellement avoir d'autres soucis
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    Dim TailleFichier As Integer = FichierInfo.Length
    Ou FichierInfo.Length est un int64
    Traductions d'articles :
    La mémoire en .NET - Qu'est-ce qui va où ?
    Architecture DAL de haute performance et DTO ; Version C# : Partie 1,Partie 2,Partie 3 — Version VB.NET : Partie 1,Partie 2,Partie 3
    N'hésitez pas à consulter la FAQ VB.NET, le cours complet de Philippe Lasserre et tous les cours, articles et tutoriels.

  5. #5
    Candidat au Club
    Homme Profil pro
    Développeur web
    Inscrit en
    Décembre 2014
    Messages
    3
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Bas Rhin (Alsace)

    Informations professionnelles :
    Activité : Développeur web

    Informations forums :
    Inscription : Décembre 2014
    Messages : 3
    Points : 4
    Points
    4
    Par défaut
    Bonsoir,

    Je vous remercie énormément, sa fonctionne à merveille!

  6. #6
    Modérateur

    Homme Profil pro
    Inscrit en
    Janvier 2007
    Messages
    1 722
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations forums :
    Inscription : Janvier 2007
    Messages : 1 722
    Points : 5 100
    Points
    5 100
    Par défaut
    De rien, pensez à marquer la discussion en résolue.
    Traductions d'articles :
    La mémoire en .NET - Qu'est-ce qui va où ?
    Architecture DAL de haute performance et DTO ; Version C# : Partie 1,Partie 2,Partie 3 — Version VB.NET : Partie 1,Partie 2,Partie 3
    N'hésitez pas à consulter la FAQ VB.NET, le cours complet de Philippe Lasserre et tous les cours, articles et tutoriels.

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

Discussions similaires

  1. Réponses: 9
    Dernier message: 28/12/2011, 14h56
  2. Réponses: 5
    Dernier message: 17/06/2006, 12h33
  3. Opération arithmétique de String à Float
    Par Shiryu57 dans le forum Langage
    Réponses: 4
    Dernier message: 13/03/2006, 10h22
  4. problème opérations
    Par marsupilami34 dans le forum Langage
    Réponses: 5
    Dernier message: 02/09/2005, 16h25
  5. [VAL] Opérations arithmétiques
    Par WriteLN dans le forum Langage SQL
    Réponses: 2
    Dernier message: 12/05/2005, 09h59

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