Twitter iPhone pliant OnePlus 11 PS5 Disney+ Orange Livebox Windows 11

Problème avec un Datagrid

6 réponses
Avatar
pierre.rivet
Bonjour à tous,

Dans une application qui tourne depuis plusieurs années, chez une amie, elle
a eu subitement le message suivant, à l'ouverture d'une page comprenant un
contrôle Adodc et un contrôle Datagrid:

Premier message:
Contrôle Microsoft Datagrid
Impossible d'initialiser la liaison de données

Suivi d'un deuxième message:
Impossible de lier au champ ou au DataMamber:'ordreconsultation'

Cela m'a semblé le symptôme de la perte du pilote C:\W\System32\MSDATGRD.OCX

J'ai donc conseillé la réinstallation du logiciel.
Mais le problème persiste .

Qui a une idée ?

Merci,

Pierre

Tout cela se passe sous Windows XP

6 réponses

Avatar
Jean-marc
pierre.rivet wrote:
Bonjour à tous,

Dans une application qui tourne depuis plusieurs années, chez une
amie, elle a eu subitement le message suivant, à l'ouverture d'une
page comprenant un contrôle Adodc et un contrôle Datagrid:

Premier message:
Contrôle Microsoft Datagrid
Impossible d'initialiser la liaison de données

Suivi d'un deuxième message:
Impossible de lier au champ ou au DataMamber:'ordreconsultation'

Cela m'a semblé le symptôme de la perte du pilote
C:WSystem32MSDATGRD.OCX
J'ai donc conseillé la réinstallation du logiciel.
Mais le problème persiste .

Qui a une idée ?

Merci,

Pierre

Tout cela se passe sous Windows XP



Hello,

Ceci ressemble à une corruption de la base, ou à une
valeur erronnée dans un des champs (ici: 'ordreconsultation')

Si la base est une base access non protégée, il faudrait aller voir
les valeurs de ce champ dans cette table. Il est fort possible que
la base contienne un enregistrement corrompu ou incomplet.

Pour valider cette hyppothèse, il faudrait idéalement essayer avec une
version antérieure de la base.

Difficile d'en dire plus sans détails complémentaires.


--
Jean-marc Noury (jean_marc_n2)
Microsoft MVP - Visual Basic
mailto: remove '_no_spam_' ;
FAQ VB: http://faq.vb.free.fr/
Avatar
pierre.rivet
Effectivement, cela pourrait être une corruption de base.

Ci-dessous un message que j'avais eu il y a deux ans, et qui était vraiment
annonciateur d'une corruption de base de données:
============================================== Impossible d'ouvrir ostéo.exe j'ai tout essayé à chaque fois il me dit
"erreur d'execution:2147467259(80004005).Le moteur de base de donnée
Microsoft Jet n'a pas pu trouver l'objet "MSysDb"...
==============================================
Y aurait-il plusieurs messages qui laissent penser qu'une base est corrompue
?

Je vais donc essayer de rapatrier cette base de données.
En revanche, je ne pense pas que le champ OrdreConsultation ait une valeur
erronée, car c'est un champ de type Integer, et à incrémentation
automatique.

Merci
Pierre




"Jean-marc" a écrit dans le message
de news: 468396e6$0$14238$
pierre.rivet wrote:
Bonjour à tous,

Dans une application qui tourne depuis plusieurs années, chez une
amie, elle a eu subitement le message suivant, à l'ouverture d'une
page comprenant un contrôle Adodc et un contrôle Datagrid:

Premier message:
Contrôle Microsoft Datagrid
Impossible d'initialiser la liaison de données

Suivi d'un deuxième message:
Impossible de lier au champ ou au DataMamber:'ordreconsultation'

Cela m'a semblé le symptôme de la perte du pilote
C:WSystem32MSDATGRD.OCX
J'ai donc conseillé la réinstallation du logiciel.
Mais le problème persiste .

Qui a une idée ?

Merci,

Pierre

Tout cela se passe sous Windows XP



Hello,

Ceci ressemble à une corruption de la base, ou à une
valeur erronnée dans un des champs (ici: 'ordreconsultation')

Si la base est une base access non protégée, il faudrait aller voir
les valeurs de ce champ dans cette table. Il est fort possible que
la base contienne un enregistrement corrompu ou incomplet.

Pour valider cette hyppothèse, il faudrait idéalement essayer avec une
version antérieure de la base.

Difficile d'en dire plus sans détails complémentaires.


--
Jean-marc Noury (jean_marc_n2)
Microsoft MVP - Visual Basic
mailto: remove '_no_spam_' ;
FAQ VB: http://faq.vb.free.fr/




Avatar
Jean-marc
pierre.rivet wrote:
Effectivement, cela pourrait être une corruption de base.

Ci-dessous un message que j'avais eu il y a deux ans, et qui était
vraiment annonciateur d'une corruption de base de données:
============================================== > Impossible d'ouvrir ostéo.exe j'ai tout essayé à chaque fois il me dit
"erreur d'execution:2147467259(80004005).Le moteur de base de donnée
Microsoft Jet n'a pas pu trouver l'objet "MSysDb"...
============================================== >
Y aurait-il plusieurs messages qui laissent penser qu'une base est
corrompue ?



Oui, effectivement il y a plusieurs messages.
Celui que tu mentionnes plus haut est typique. Mais les messages
indiquant une erreur de liaison sont aussi souvent annonciateur
de ce genre de choses...


Je vais donc essayer de rapatrier cette base de données.
En revanche, je ne pense pas que le champ OrdreConsultation ait une
valeur erronée, car c'est un champ de type Integer, et à
incrémentation automatique.



Oui dans ce cas peu de chance en effet, sauf à imaginer que la
valeur en base ait atteint une valeur seuil (genre 32768 ou 65535) et
que la variable ou membre coté appli VB ne prenne qu'un Integer auquel
cas on a un typique dépassement de capacité ce qui pour une variable
liée peut provoquer ce genre de message.

--
Jean-marc Noury (jean_marc_n2)
Microsoft MVP - Visual Basic
mailto: remove '_no_spam_' ;
FAQ VB: http://faq.vb.free.fr/
Avatar
pierre.rivet
Merci Jean Marc,

Effectivement, elle a installé un nouveau logiciel....ce qui pourrait être
une cause de perturbation dans le fichier pilote du Datagrid.

Elle doit me "zipper" sa base de données, ce soir, avec son mari qui
manipule mieux l'informatique

"Jean-marc" a écrit dans le message
de news: 4683bdd3$0$14245$
pierre.rivet wrote:
Effectivement, cela pourrait être une corruption de base.

Ci-dessous un message que j'avais eu il y a deux ans, et qui était
vraiment annonciateur d'une corruption de base de données:
============================================== >> Impossible d'ouvrir ostéo.exe j'ai tout essayé à chaque fois il me dit
"erreur d'execution:2147467259(80004005).Le moteur de base de donnée
Microsoft Jet n'a pas pu trouver l'objet "MSysDb"...
============================================== >>
Y aurait-il plusieurs messages qui laissent penser qu'une base est
corrompue ?



Oui, effectivement il y a plusieurs messages.
Celui que tu mentionnes plus haut est typique. Mais les messages
indiquant une erreur de liaison sont aussi souvent annonciateur
de ce genre de choses...


Je vais donc essayer de rapatrier cette base de données.
En revanche, je ne pense pas que le champ OrdreConsultation ait une
valeur erronée, car c'est un champ de type Integer, et à
incrémentation automatique.



Oui dans ce cas peu de chance en effet, sauf à imaginer que la
valeur en base ait atteint une valeur seuil (genre 32768 ou 65535) et
que la variable ou membre coté appli VB ne prenne qu'un Integer auquel
cas on a un typique dépassement de capacité ce qui pour une variable
liée peut provoquer ce genre de message.

--
Jean-marc Noury (jean_marc_n2)
Microsoft MVP - Visual Basic
mailto: remove '_no_spam_' ;
FAQ VB: http://faq.vb.free.fr/





Avatar
pierre.rivet
J'ai reçu la base de données.
Je l'ai passée au scanner de Access fix.
Pas le moindre problème.

Par contre, je me suis rappelé avoir eu ce même problème (même message
d'erreur, mêmes circonstances, à savoir installation d'un autre logiciel)

Je m'en étais sorti en réinstallant le logiciel (du moins une version
ancienne, avec le vieux système de déploiement de VB6, qui ne peut plus
fonctionner à partir d'une certaine taille de fichier exe)
Dans ce vieux dépploiement il y avait une vieille version de MSDATGRD.OCX
datant de 2000 , au lieu de la version de 2004 que je m'obstine à mettre
avec Inno Setup.

Quelqu'un a un commentaire ?

Merci,

"pierre.rivet" a écrit dans le message de news:
4683cfb2$0$25951$
Merci Jean Marc,

Effectivement, elle a installé un nouveau logiciel....ce qui pourrait être
une cause de perturbation dans le fichier pilote du Datagrid.

Elle doit me "zipper" sa base de données, ce soir, avec son mari qui
manipule mieux l'informatique

"Jean-marc" a écrit dans le
message de news: 4683bdd3$0$14245$
pierre.rivet wrote:
Effectivement, cela pourrait être une corruption de base.

Ci-dessous un message que j'avais eu il y a deux ans, et qui était
vraiment annonciateur d'une corruption de base de données:
============================================== >>> Impossible d'ouvrir ostéo.exe j'ai tout essayé à chaque fois il me dit
"erreur d'execution:2147467259(80004005).Le moteur de base de donnée
Microsoft Jet n'a pas pu trouver l'objet "MSysDb"...
============================================== >>>
Y aurait-il plusieurs messages qui laissent penser qu'une base est
corrompue ?



Oui, effectivement il y a plusieurs messages.
Celui que tu mentionnes plus haut est typique. Mais les messages
indiquant une erreur de liaison sont aussi souvent annonciateur
de ce genre de choses...


Je vais donc essayer de rapatrier cette base de données.
En revanche, je ne pense pas que le champ OrdreConsultation ait une
valeur erronée, car c'est un champ de type Integer, et à
incrémentation automatique.



Oui dans ce cas peu de chance en effet, sauf à imaginer que la
valeur en base ait atteint une valeur seuil (genre 32768 ou 65535) et
que la variable ou membre coté appli VB ne prenne qu'un Integer auquel
cas on a un typique dépassement de capacité ce qui pour une variable
liée peut provoquer ce genre de message.

--
Jean-marc Noury (jean_marc_n2)
Microsoft MVP - Visual Basic
mailto: remove '_no_spam_' ;
FAQ VB: http://faq.vb.free.fr/









Avatar
Jean-marc
pierre.rivet wrote:
J'ai reçu la base de données.
Je l'ai passée au scanner de Access fix.
Pas le moindre problème.

Par contre, je me suis rappelé avoir eu ce même problème (même message
d'erreur, mêmes circonstances, à savoir installation d'un autre
logiciel)
Je m'en étais sorti en réinstallant le logiciel (du moins une version
ancienne, avec le vieux système de déploiement de VB6, qui ne peut
plus fonctionner à partir d'une certaine taille de fichier exe)
Dans ce vieux dépploiement il y avait une vieille version de
MSDATGRD.OCX datant de 2000 , au lieu de la version de 2004 que je
m'obstine à mettre avec Inno Setup.

Quelqu'un a un commentaire ?



C'est un problème hélas fréquent : une application tierce installe
sa propre version d'un OCX et/ou d'une dll et bing!, met en l'air
les applications existantes.

Il y a une solution à essayer, qui m'a permis bien souvent de résoudre
ce genre de problèmes: mettre l'ocx à utiliser dans le répertoire de
l'application. Dans ce cas, il y a une chance que ton appli utilise
l'ocx local (donc celui de ton choix) plutot que celui qui se trouve
dans windows/system32.

J'ai pu sauver quelques installs en pratiquant comme cela, mais c'est
bien sur sans graranties aucune.

Bonne chance!

--
Jean-marc Noury (jean_marc_n2)
Microsoft MVP - Visual Basic
mailto: remove '_no_spam_' ;
FAQ VB: http://faq.vb.free.fr/