Se connecter / S'enregistrer
Votre question
Résolu

[C#] AccesViolationException sur base de donné

Tags :
  • accessviolationexception
  • Programmation
Dernière réponse : dans Programmation
a b L Programmation
7 Juin 2012 11:45:03

Bonjour,

Je suis bloquer dans le développement de mon programme
Voila le problème : http://ploof.eu/pnlv
L’exception est lever aléatoirement sur les lignes : 236, 242, 243 ...
Je communique avec la base de donné exclusivement a l'aide de code-manager ...

Comment résoudre ce problème ?

Autres pages sur : accesviolationexception base donne

a c 232 L Programmation
7 Juin 2012 12:38:21

Salut,

Quelques trucs à vérifier :

  • Quel est le Framework de ton projet ? Si c'est du .Net Framework 4 Client Profile, essaie de le passer en .Net Framework 4
  • Est-ce que tu pourrais donner plus d'infos sur l'erreur (stack trace...) ?
  • Vérifie les types de données et les tailles que tu essaies d'insérer. Exemple, que tu insères pas 4 éléments dans un tableau de 3, ou autres... Normalement en .Net c'est pas possible ce genre d'erreurs, ça serait plutôt avec une DLL C++
  • Quelle base de données utilises-tu ? Quelle version ?

    m
    0
    l
    a b L Programmation
    7 Juin 2012 12:47:01

    J'utilise déjà le .NetFrameWork4
    Je travaille juste sur une string ( avec un id de type int ) , les deux valeur sont bonne ...

    Voila le stack trace :
    > P2_Serveur_Login.exe!P2_Serveur_Login.Form1.MouvePerso(System.Net.Sockets.TcpClient tcpClient = {System.Net.Sockets.TcpClient}, string in = "SM_Position:3:25;14") Ligne 242 C#

    Quel info de plus veux tu ?
    m
    0
    l
    Contenus similaires
    a c 232 L Programmation
    7 Juin 2012 13:15:06

    J'avais édité. Quelle base de données et version ?
    m
    0
    l
    a b L Programmation
    7 Juin 2012 14:02:26

    M$ SQL 2008 avec le provider Microsoft.SqlServerCe.Client.3.5
    m
    0
    l
    a c 232 L Programmation
    8 Juin 2012 00:46:39

    Je sais pas trop quoi d'autre te proposer...
    Pourquoi utiliser le provider Ce ?

    Essaie plutôt le provider "classique" System.Data.SqlClient ?
    m
    0
    l
    a b L Programmation
    8 Juin 2012 16:44:19

    Je ne sais pas c'est Vs qui a choisie tous seul !

    J'ai tester avec le "Classique" et j'ai toujours le même problème ....

    Cela ne viendrais pas du fais que je chaine plusieurs accès lecture/écriture sur la même info dans ma bdd, et du coup il y aurais un espèce de token qui me bloquerais ?
    m
    0
    l

    Meilleure solution

    a c 232 L Programmation
    8 Juin 2012 17:04:07

    Sans avoir du code pour voir comment sont faits les appels à la base de données, c'est difficile.
    Mais si c'est tout généré automatiquement...
    partage
    a b L Programmation
    8 Juin 2012 17:22:29

    Bas c'est le code manager de Visual ... donc je peut pas t'en dire plus !!

    http://ploof.eu/23ci
    m
    0
    l
    a b L Programmation
    9 Juin 2012 23:16:54

    Humm, au moins Visual ne dit plus rien !
    m
    0
    l
    a c 232 L Programmation
    10 Juin 2012 11:52:56

    Ouah ! Jamais eu un truc comme ça :o 
    m
    0
    l
    a b L Programmation
    10 Juin 2012 22:29:56

    C'est peut-être un problème de désallocation mal gérée (un bug dans la bibliothèque). Est-ce que tu as essayé en forçant des copies mémoires des chaines et autres ? (String.Copy)

    Ensuite, plutôt que de tout faire sur une ligne, découpe chaque élément sur plusieurs ligne, et regarde en debug si l'exception est lévée sur le même type de code, ou si c'est vraiment aléatoire.

    Enfin, lorsque c'est aléatoire sur la ligne de code, il se peut que ce soit dû à un appel de méthode liée à un objet en cours de désallocation (surtout s'il y a du multi-threading). Regarde bien ce que tu fais avant l'appel de cette méthode.
    m
    0
    l
    a b L Programmation
    13 Juin 2012 11:07:16

    Pour le moment je n'est plus l'erreur, alors que je n'est rien changer ... je me pencherais sur le problème si cela reviens mais étant un projet de fin d’année je n'est plus beaucoup de temps pour le finalisé ...
    m
    0
    l
    Tom's guide dans le monde
    • Allemagne
    • Italie
    • Irlande
    • Royaume Uni
    • Etats Unis
    Suivre Tom's Guide
    Inscrivez-vous à la Newsletter
    • ajouter à twitter
    • ajouter à facebook
    • ajouter un flux RSS