Pb de compatibilité Access en C++ sous WinXp

skyvenger Messages postés 7 Date d'inscription mardi 1 avril 2003 Statut Membre Dernière intervention 10 juin 2003 - 6 juin 2003 à 09:11
skyvenger Messages postés 7 Date d'inscription mardi 1 avril 2003 Statut Membre Dernière intervention 10 juin 2003 - 10 juin 2003 à 15:18
J'ai à débuger un programme écrie à l'origine sous Win98 en C++, il utilise une base de donnés Access (la base est accédé par l'intermédiaire d'un lecteur réseau) pour afficher une sorte d'agenda. La complation et l'exection sous Win98 se passe sans probléme majeur. Lors de la compiltation sous Win2000 ou Xp aucun probléme non plus mais
Lors de l'exploitation sous Win2000 ou Xp le programme plante (apparament sur les accés à la base de donnée) .
Quelqun aurrai une idée de ce qui plante et comment le corriger ? C'est urgent. Merci

11 réponses

skyvenger Messages postés 7 Date d'inscription mardi 1 avril 2003 Statut Membre Dernière intervention 10 juin 2003
6 juin 2003 à 09:12
-------------------------------
Réponse au message :
-------------------------------

> J'ai à débuger un programme écrie à l'origine sous Win98 en C++, il utilise une base de donnés Access (la base est accédé par l'intermédiaire d'un lecteur réseau) pour afficher une sorte d'agenda. La complation et l'exection sous Win98 se passe sans probléme majeur. Lors de la compiltation sous Win2000 ou Xp aucun probléme non plus mais
> Lors de l'exploitation sous Win2000 ou Xp le programme plante (apparament sur les accés à la base de donnée) .
> Quelqun aurrai une idée de ce qui plante et comment le corriger ? C'est urgent. Merci
0
BruNews Messages postés 21040 Date d'inscription jeudi 23 janvier 2003 Statut Modérateur Dernière intervention 21 août 2019
6 juin 2003 à 09:24
Il faut des precisions pour que chacun sache si est son domaine de competence pour pouvoir repondre.
ADO, MFC, ODBC, etc... ???
Tu as verifie la gestion des exceptions ?
Recompile en posant des points d'affichage pendant la tentative de connexion afin de savoir exactement le moment du plantage.
BruNews, ciao...
0
cs_Kaid Messages postés 949 Date d'inscription mardi 2 octobre 2001 Statut Membre Dernière intervention 8 juillet 2006 1
6 juin 2003 à 10:01
Est-ce que tu peux faire tourner ton programme sous le debbugeur de Visual C++ ?

Kaid - kaid.fr.st
0
skyvenger Messages postés 7 Date d'inscription mardi 1 avril 2003 Statut Membre Dernière intervention 10 juin 2003
6 juin 2003 à 11:17
non je ne peut pas utiliser le dégugger car les instruction concernée se trouve dans l'affichage.
J'accéde à la base de donnée par des méthodes DAO par l'intermiédiare d'objet du type

DAT dbt
CDaoRecordset rst(&dbs);
CDaoQueryDef query(&dbs);
puis des instruction

il n'y a aucune gestion d'exception access mais je ne sais pas comment les gérer ( Si quelqun connait un site sur le sujet je suis preneur ... :) )
Je ne suis pas trés compétent en Base de donnée mais je pense que le logiciel accéde à la base par des requéte SQL. Par des instruction du type :

strcpy(szQuery,"SELECT [Jour Férié] FROM [Jours Fériés]");
rst.Open(dbOpenDynaset, szQuery);

M'enfin voila ... Je ne sais pas trop
0

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

Posez votre question
skyvenger Messages postés 7 Date d'inscription mardi 1 avril 2003 Statut Membre Dernière intervention 10 juin 2003
6 juin 2003 à 11:31
-------------------------------
Réponse au message :
-------------------------------

> non je ne peut pas utiliser le dégugger car les instruction concernée se trouve dans l'affichage.
> J'accéde à la base de donnée par des méthodes DAO par l'intermiédiare d'objet du type
>
> DAT dbt
> CDaoRecordset rst(&dbs);
> CDaoQueryDef query(&dbs);
> puis des instruction
>
> il n'y a aucune gestion d'exception access mais je ne sais pas comment les gérer ( Si quelqun connait un site sur le sujet je suis preneur ... :) )
> Je ne suis pas trés compétent en Base de donnée mais je pense que le logiciel accéde à la base par des requéte SQL. Par des instruction du type :
>
> strcpy(szQuery,"SELECT [Jour Férié] FROM [Jours Fériés]");
> rst.Open(dbOpenDynaset, szQuery);
>
> M'enfin voila ... Je ne sais pas trop
>
>
>
> -------------------------------
> Réponse au message :
> -------------------------------
>
> > Est-ce que tu peux faire tourner ton programme sous le debbugeur de Visual C++ ?
> >
> > Kaid - kaid.fr.st
> >
> > -------------------------------
> > Réponse au message :
> > -------------------------------
> >
> > >
> > >
> > >
> > >
> > > -------------------------------
> > > Réponse au message :
> > > -------------------------------
> > >
> > > > J'ai à débuger un programme écrie à l'origine sous Win98 en C++, il utilise une base de donnés Access (la base est accédé par l'intermédiaire d'un lecteur réseau) pour afficher une sorte d'agenda. La complation et l'exection sous Win98 se passe sans probléme majeur. Lors de la compiltation sous Win2000 ou Xp aucun probléme non plus mais
> > > > Lors de l'exploitation sous Win2000 ou Xp le programme plante (apparament sur les accés à la base de donnée) .
> > > > Quelqun aurrai une idée de ce qui plante et comment le corriger ? C'est urgent. Merci
> > >
> >
>
0
skyvenger Messages postés 7 Date d'inscription mardi 1 avril 2003 Statut Membre Dernière intervention 10 juin 2003
6 juin 2003 à 11:33
Je me suis planté c'est pas DAT dbt mais
CDaoDatabase dbs; ... désoler j'ai un peu de mal aujourd'hui.
0
BruNews Messages postés 21040 Date d'inscription jeudi 23 janvier 2003 Statut Modérateur Dernière intervention 21 août 2019
6 juin 2003 à 11:33
DAO est obsolete depuis un moment deja. Ta dll dao appelee n'est certainement pas presente sur Win2k et XP encore moins, faudra verifer si est la 350, la 360 doit s'y trouver pour compatibilite vieux progs.
Utiliser ADO pour du Access en non les vieilles classes mfc.
BruNews, ciao...
0
cs_Kaid Messages postés 949 Date d'inscription mardi 2 octobre 2001 Statut Membre Dernière intervention 8 juillet 2006 1
6 juin 2003 à 11:41
Et quel est le message d'erreur affiché lors du plantage ?

Kaid - kaid.fr.st
0
skyvenger Messages postés 7 Date d'inscription mardi 1 avril 2003 Statut Membre Dernière intervention 10 juin 2003
10 juin 2003 à 09:54
Le message d'erreur est une erreur d'adressage mémoire : "la memoire ne peut étre read" ...
0
cs_Kaid Messages postés 949 Date d'inscription mardi 2 octobre 2001 Statut Membre Dernière intervention 8 juillet 2006 1
10 juin 2003 à 09:59
Trois solutions:

- Reparcourir le code pour trouver où se situe l'erreur (un peu long).

- Faire tourner le programme sous le debugger de Visual C++ (tu serras exactement sur quelque ligne se produit l'erreur).

- Utiliser le soft Purify de chez Rational pour 'analyser' ton programme et qui pourras te dire où se trouve l'erreur. Une version démo est téléchargeable sur le site kaid.fr.st
0
skyvenger Messages postés 7 Date d'inscription mardi 1 avril 2003 Statut Membre Dernière intervention 10 juin 2003
10 juin 2003 à 15:18
Merci je vais essayer ... Et encore désoler de vous déranger
0
Rejoignez-nous