La mémoire ne peut pas être "Read"

jrivet Messages postés 7392 Date d'inscription mercredi 23 avril 2003 Statut Membre Dernière intervention 6 avril 2012 - 29 mars 2006 à 10:46
jrivet Messages postés 7392 Date d'inscription mercredi 23 avril 2003 Statut Membre Dernière intervention 6 avril 2012 - 29 mars 2006 à 11:50
'Lut all.

J'ai repris le développement d'un programme d'un autre (pour ne pas dire de plusieurs autres) dans une boîte.

En ce moment, j'ai un "petit" sur l'erreur suivante:

Voila je suppose que je ne suis pas le pemier à avoir ce problème.

J'aimerais donc que quelqu'un m'explique :
- Quelle est l'origine de ce souci.
- Comment régler ce problème, ou bien me rediriger vers un lien utile.
Est ce que à votre avis le Fameux DoEvents pourrait être à l'origine de ce problème.
En attendant vos propositions, Mister Google m'aide
@+, Julien
Pensez: Moteur de Recherche, Réponse Acceptée

6 réponses

NHenry Messages postés 15114 Date d'inscription vendredi 14 mars 2003 Statut Modérateur Dernière intervention 4 mai 2024 159
29 mars 2006 à 10:50
Bonjour

Pour pouvoir t'aider, en quoi tu code (VB6, .NET, autre )?
Si tu soupsonne une partie de ton code d'être à l'origine de ton pb, met le.

Il est plus facile de batiser kk1 que de la convertir. (surtout en programmation)
Une question se pose sur le forum, pas en privé
NHenry (VB6, VBA excel, VB.NET, C++, C#.Net)
0
jrivet Messages postés 7392 Date d'inscription mercredi 23 avril 2003 Statut Membre Dernière intervention 6 avril 2012 60
29 mars 2006 à 10:59
Salut NHenry.

Je Suis Impardonnable, j'oublie le Ba BA D une question bien posée:

- Je suis sous Windows2000 et je code en VB6.

Autres petites précisions:
- Ce problème n'apparait qu une fois le programme compilé et non lors de l'exécution en interprété.
- C est un programme en plus qui discute avec un second (dont j'ai aussi hérité)
- Qui utilise aussi des communications MODBUS sur TCP pour discuter avec un système embarqué,
- Utilise une bonne dixaine D'OCX (dont certains que je ne peut debugger)

En Fait je ne soupçonne aucune partie du code, car j ai encore, même après 4 Mois de Reprise, à savoir exactement où je suis à un instant T dans le programme.

Merci pour ton aide
@+, Julien
Pensez: Moteur de Recherche, Réponse Acceptée
0
NHenry Messages postés 15114 Date d'inscription vendredi 14 mars 2003 Statut Modérateur Dernière intervention 4 mai 2024 159
29 mars 2006 à 11:04
Bonjour

Cette erreur signifie que tu veux accéder à une zone mémoire qui n'existe pas.
Donc, regarde du coté des APIs.
Sinon, c'est peut-être l'un de tes OXC qui pose pb.
Pour voir quelle partie de ton prog pose le PB, met des msgbox par ex.

Il est plus facile de batiser kk1 que de la convertir. (surtout en programmation)
Une question se pose sur le forum, pas en privé
NHenry (VB6, VBA excel, VB.NET, C++, C#.Net)
0
jrivet Messages postés 7392 Date d'inscription mercredi 23 avril 2003 Statut Membre Dernière intervention 6 avril 2012 60
29 mars 2006 à 11:14
Re,

Je préfèrerais tout de même éviter les Msgbox (vu la longueur du programme).
J'espère que je vais trouver quelque chose.

En tout cas merci quand meme.

@+, Julien
Pensez: Moteur de Recherche, Réponse Acceptée
0

Vous n’avez pas trouvé la réponse que vous recherchez ?

Posez votre question
cs_casy Messages postés 7741 Date d'inscription mercredi 1 septembre 2004 Statut Membre Dernière intervention 24 septembre 2014 40
29 mars 2006 à 11:31
Essaye de voir sur quelle action précise ton programme plante, est-ce toujours au même endroit, sur la même action ? ça réduira le champs de tes investigations, et la longueur du code à msgboxé

Tu dis que ton programme communique avec un autre, comment? vérifie aussi de ce coté là, notament le type de paramètres passés entre les 2 et la longueur des données passées.
Un exemple : si communique par mémoire partagée, et que tu passe un tableau de taille 10, si ton second programme vient lire ou écrire 12 éléments dans le tableau, il va tapper dans une zone mémoire qui n'appartient pas au tableau. Tu peux ne pas avoir d'erreur sur le moment, mais si cette memoire contenait par exemple une adresse de retour d'une fonction, au moment de retourné ton programme ne sais plus ou aller, plus exactement il part à un endroit interdit pour lui, d'ou l'erreur. Ce n'est qu'une possibilité armis d'autres.


<hr size="2" width="100%">
0
jrivet Messages postés 7392 Date d'inscription mercredi 23 avril 2003 Statut Membre Dernière intervention 6 avril 2012 60
29 mars 2006 à 11:50
Lut Casy,

Le dialogue entre les deux Exe se fait à l'ide d'un troisième Exe

Mais ce dialogue est "fiable" et contrôlé.

De plus, le problème que j'indique avec la capture d'écran n'apparait que sur mon poste. Tout les autres postes possédant les applis, il n'apparaît pas (ou alors il est caché????) La seule différence ente mon poste et les autes est la rapidité de mon PC.

le mien est beaucoup plus rapide que les autres.

AHHHH j'adore l'informatique et ses soucis.

@+, Julien
Pensez: Moteur de Recherche, Réponse Acceptée
0
Rejoignez-nous