Bonjour,
je dispose d'un vieux programme développé en vb4 qui accède à un fichier mdb. Lors de cet accès, si le poste possède plus de 512 Mo de Ram, le programme plante...![]()
Quel peut être la solution à ce problème ?
Merci d'avance!








Bonjour,
je dispose d'un vieux programme développé en vb4 qui accède à un fichier mdb. Lors de cet accès, si le poste possède plus de 512 Mo de Ram, le programme plante...![]()
Quel peut être la solution à ce problème ?
Merci d'avance!








je ne crois pas que cela est du à trop de RAM. ya t'il un message qui vous dit que l'erreur vient de l'excès de RAM? Je pense plutot que cela provient de la configuration logicielle.
Salut
Tout a fait d'accord.
Manque de RAM = Plantage OK
Trops de RAM => jamais rencontré
Le problème est certainement du a la config.
Quel est le message d'erreur ?
A+








BOnjour,
Désolé pour ne pas avoir répondu à ce post que j'avais lancé, ce n'est pas mon genre... Celui ci m'a échappé
J'ai essayé le programme avec un PC qui possédait 512 de ram, et un autre qui à la même configuration mais avec 1024, le résultat est qu'avec celui qui possède 512, cela fonctionne alors que celui avec 1024 cela ne marche pas.
J'ai donc essayé de baissé la ram du poste qui contient les 1024 en 512, et là cela fonctionne.... ?!! Donc je maintiens bien que c'est la taille de la Ram qui pose problème
Je ne sais plus exactement, mais tout sauf quelque chose qui pourrait permettre de déterminer que le problème vient de là ...Quel est le message d'erreur ?
Désolé encore pour mon manque de vigilance sur ce post,
Opsi
Je ne crois pas non plus que ce soit du à la RAM.
- Tes programmes sont-ils correctement installés sur les deux machines ou tu les exécute dans l'environnement de développement ?
- Si tu exécute directement dans VB, les deux machines ont bien la même version de VB, avec les mêmes Services Pack (mises à jour) ?
- Est-ce que tu n'a compilé que l'exécutable (.exe) sans créer de paquet d'installation (setup)?
- Est-ce que les deux machines sont du même type, avec le même système d'exploitation et les mêmes Services Packs (mises à jour) ?








Oui* Tes programmes sont-ils correctement installés sur les deux machines ou tu les exécute dans l'environnement de développement ?
Je n'utilise pas VB pour lancer les programmes (je ne possède plus VB4), mais directement un le programme sous forme d'executable qui a fait ses preuves....Si tu exécute directement dans VB, les deux machines ont bien la même version de VB, avec les mêmes Services Pack (mises à jour) ?
Oui, avec un serveur WSUS.Est-ce que les deux machines sont du même type, avec le même système d'exploitation et les mêmes Services Packs (mises à jour) ?
L'interrogation de la Ram vient que lorsque je diminue la RAM à 512, le programme fonctionne correctement. La librairie qui semble poser problème est celle qui permet l'accès au fichier de la base de données Access ...
Pardon, mais si tu juges que le message d'erreur est inutile à quoi servons nous ?
Bonjour,
Tout cela me parait une histoire brinquebalante ....
Sauf si ...
1) l'appli lance une opération démesurée pour une RAM de 512 mais non démesurée pour une RAM plus importante
2) l'appli est mal gérée et les "choses" se font des croche-pieds si elles sont exécutées trop rapidement l'une derrière l'autre...
Il n'est pas idiot de penser qu'avec une RAM de 512, on arrive rapidement à un trop plein de la RAm et qu'alors :
a) on passe en zone de swap
b) les accès disque successifs ralentissent alors suffisamment l'appli pour que les croche-pieds ne se fassent plis.
Je ne vois rien d'autre que cette explication (même si elle me parait quand même assez farfelue...)
Une question en passant :
- comment diminues-tu la RAM ? Tu as 2 barrêtes de 512 et tu en enlèves une ? Sont-elles identiques ? Enlèves-tu toujours la même ou as-tu testé le programme une fois avec l'une, une fois avec l'autre ? Sur les 2 emplacements de la carte mère ?
Quid du FSB de la carte mère et de la vitesse de la RAM ? Tu ne dépasses pas les spécifications ?
Je m'oriente plus vers un problème hardware avec ce genre de questions comme tu le vois.








Je ne peux pas récupérer le message d'erreur maintenant, mais j'essairais de le poster lundi....Pardon, mais si tu juges que le message d'erreur est inutile à quoi servons nous ?
Effectivement, c'est une histoire "abracadabrantesque" !








Je remplace une barrete de 1024 et je la remplace par une de 512.... je n'ai pas essayé sur d'autre emplacement, mais j'ai essayé sur plusieurs machines (Dell GX520, lenovo ....)- comment diminues-tu la RAM ? Tu as 2 barrêtes de 512 et tu en enlèves une ? Sont-elles identiques ? Enlèves-tu toujours la même ou as-tu testé le programme une fois avec l'une, une fois avec l'autre ? Sur les 2 emplacements de la carte mère ?
Par contre je n'ai pas vérifier et je ne peux pas vérifier pour le moment (je ne suis pas devant les machines) le FSB....
Merci pour vos efforts !









Gio,
Quoi qu'il en soit, ce problème n'est pas dû à "trop de RAM", même pas besoin de se poser la question.








Oui j'ai tester avec plusieurs postes et la barrette fonctionne très bien puisque je l'utilise tous les jours sur mon poste![]()
Euh, elle fonctionne très bien mais ton appli plante sur ton poste aussi non ? Je tenterai une autre malgré tout, les voies de la RAM sont impénétrables...








ok, je testerais et je vous tiens au courant !
N'oublions pas qu'il s'agit d'un programme en VB4 et que la DLL d'accès à la base Access doit datée de la même époque.
Il est envisageable que cela soit dû à une limitation de la DLL d'Access. A l'époque de VB4, 512mo de mémoire ram, c'était inenvisageable.
C'est juste une idée.
Bonour Najdar,
Quel rapport ? (je ne le vois pas ....)
J'ai des applis de même nature écrites en VB4 et elles "tournent" encore sur certaines machines modernes et dotées de RAM importante ...
J'ai plusieurs vieilles appli VB3 avec moteur DAO antédiluvien installées sur un 2003 serveur et 2 Ghz de RAM, sans problème particulier. Cela dit, je trouve la remarque intéressante.
Dans le cas présent, je ne mets pas en cause VB4, mais le moteur Jet (Access).
De plus, ce n'est pas parce qu'une application VB4 (+ Access) fonctionne avec plus 512 mo de ram que toutes les applications de ce type fonctionnent aussi. Travailler avec une base de données est un domaine assez vaste.
Deux applications peuvent ne pas utiliser pas la base de données de la même façon.
opsi, que fait exactement (si tu peux le savoir) ton application au moment du plantage ?
Partager