BruNews
Messages postés21040Date d'inscriptionjeudi 23 janvier 2003StatutModérateurDernière intervention21 août 2019
-
25 juil. 2004 à 23:02
Martial -
3 mars 2015 à 16:31
Cette discussion concerne un article du site. Pour la consulter dans son contexte d'origine, cliquez sur le lien ci-dessous.
BruNews
Messages postés21040Date d'inscriptionjeudi 23 janvier 2003StatutModérateurDernière intervention21 août 2019 22 janv. 2008 à 09:42
NON, en C/C++ différent de 0 n'est pas considéré comme True ni comme rien du tout, c'est 0 OU NON 0 mais rien de plus.
cs_Patrice99
Messages postés1221Date d'inscriptionjeudi 23 août 2001StatutMembreDernière intervention 9 septembre 2018 22 janv. 2008 à 08:27
Oui mais dans Access, le problème est que la variable était bien un booléen, alors que si tu fais un test avec un int, ce n'est pas la même chose.
NeerLess
Messages postés1Date d'inscriptiondimanche 30 septembre 2007StatutMembreDernière intervention22 janvier 2008 22 janv. 2008 à 01:02
Salut à tous !
Du point je code aussi en C/C++, je porte à ta connaissance que ce genre d'interprétation existe !!!
En effet, en C/C++, toute valeur différente de 0 (en binaire) est consdérée comme un True, ceci est du à un test des drapeaux de ALU au coeur du CPU (le drapeau Z [Zero] précisement). Le code source qui suit marche avec Dev-C++ :
#include<stdio.h>
int main()
{
clrscr();
int r=1;
if (r) printf("R est vrai. R=%d",r);
r=(!r); // l'exclamation est pour le Not
if (r) printf("R est vrai. R=%d",r);
getch();
}
J'éspère avoir été utile, et à la prochaine.
BruNews
Messages postés21040Date d'inscriptionjeudi 23 janvier 2003StatutModérateurDernière intervention21 août 2019 26 juil. 2004 à 17:11
Le vba.net est en bonne phase d'avancement. Il y aura un peu de travail de migration mais au moins ça harmonisera avec le vb actuel qui est entierement devenu .net, en avant avec le framework.
cs_Patrice99
Messages postés1221Date d'inscriptionjeudi 23 août 2001StatutMembreDernière intervention 9 septembre 2018 26 juil. 2004 à 16:57
C'est bien pour cela que j'ai lancé mon appel à témoin, pour avoir ce genre de retour (et éventuellement au cas où quelqu'un connaîtrait la raison exacte du bug) mais de là à abandonner Access, tout de même...
En fait, pour la migration, j'ai déjà migré 50% de mon application constituée de 2 mdb en VB .Net (encore du Microsoft), mais c'est vrai que je me pose la question pour le reste, car ce genre de bug me fait pas mal douter d'Access. Cela étant dit, Access est quand même un des meilleurs outils qui existe en pure conception de base de données. En attendant un hypothétique VBA .Net ...
Didchr81
Messages postés10Date d'inscriptionmercredi 1 mai 2002StatutMembreDernière intervention23 juillet 2007 26 juil. 2004 à 13:28
Salut !
Comme les problèmes Access reviennent de plus en plus, et que moi même j'y suis confronté, je vous confirme que la compatibilité Access2000 et 2003 est quasiment pas fiable, que la réecriture du code est indispensable, et nécessaire sur des machines de type 2003.
Lorsque que l'on bidouille avec Access ce n'est pas trop grave, mais si c'est une application compléte qui en dépend, je ne saurais que vous conseillé de prévoir une migration vers un autre Langage.
A savoir que même Windev a des soucis de migration de ses applications d'un poste 2000 ne 2003.
?
Salutations.
cs_Patrice99
Messages postés1221Date d'inscriptionjeudi 23 août 2001StatutMembreDernière intervention 9 septembre 2018 26 juil. 2004 à 11:49
J'ai la dernière version d'Access avec les derniers correctifs, et le problème se produit aussi avec Access XP sur le projet mdb 2000 modifié avec Access 2003.
sarl_adc
Messages postés141Date d'inscriptionlundi 3 novembre 2003StatutMembreDernière intervention20 octobre 2005 26 juil. 2004 à 11:05
Il n'y a pas de rapports de bugs ou de correctifs sur le site de Microsoft ?
Peut-être est-ce juste un bug des 1ères version d'Access...
cs_Patrice99
Messages postés1221Date d'inscriptionjeudi 23 août 2001StatutMembreDernière intervention 9 septembre 2018 26 juil. 2004 à 08:40
C'est parce que vous n'avez pas ouvert de base Access avec du code dans des versions antérieures d'Access, une application Access 2000 par exemple. Moi non plus je ne comprend pas comment VBA peut en arriver à interpreter ca différemment, et pourtant c'est bien le cas. Il faudrait trouver le moyen de reproduire le bug à coup sûr, mais comment ? Ce qui est sûr, c'est que j'ai enlevé tous les Not dans mes codes sources Access 2000, car il ne marchait plus depuis debut Juillet, et ce même sur une machine restée en Access XP. C'est peut être le fait d'avoir modifié l'appli sous Access 2003.
JoePatent
Messages postés171Date d'inscriptionjeudi 30 janvier 2003StatutMembreDernière intervention20 juillet 2008 26 juil. 2004 à 01:12
Tout va bien aussi de mon coté avec 2003, 2000 et 97 ...
Je ne comprend pas trop comment vba pourrait interpreter ca différement.
BruNews
Messages postés21040Date d'inscriptionjeudi 23 janvier 2003StatutModérateurDernière intervention21 août 2019 25 juil. 2004 à 23:02
J'ai mis ta Sub de test dans Access 2003.
Il me dit bien "Ok, Not True vaut bien False."
Y a un prob ?
3 mars 2015 à 16:31
22 janv. 2008 à 09:42
22 janv. 2008 à 08:27
22 janv. 2008 à 01:02
Du point je code aussi en C/C++, je porte à ta connaissance que ce genre d'interprétation existe !!!
En effet, en C/C++, toute valeur différente de 0 (en binaire) est consdérée comme un True, ceci est du à un test des drapeaux de ALU au coeur du CPU (le drapeau Z [Zero] précisement). Le code source qui suit marche avec Dev-C++ :
#include<stdio.h>
int main()
{
clrscr();
int r=1;
if (r) printf("R est vrai. R=%d",r);
r=(!r); // l'exclamation est pour le Not
if (r) printf("R est vrai. R=%d",r);
getch();
}
J'éspère avoir été utile, et à la prochaine.
26 juil. 2004 à 17:11
26 juil. 2004 à 16:57
En fait, pour la migration, j'ai déjà migré 50% de mon application constituée de 2 mdb en VB .Net (encore du Microsoft), mais c'est vrai que je me pose la question pour le reste, car ce genre de bug me fait pas mal douter d'Access. Cela étant dit, Access est quand même un des meilleurs outils qui existe en pure conception de base de données. En attendant un hypothétique VBA .Net ...
26 juil. 2004 à 13:28
Comme les problèmes Access reviennent de plus en plus, et que moi même j'y suis confronté, je vous confirme que la compatibilité Access2000 et 2003 est quasiment pas fiable, que la réecriture du code est indispensable, et nécessaire sur des machines de type 2003.
Lorsque que l'on bidouille avec Access ce n'est pas trop grave, mais si c'est une application compléte qui en dépend, je ne saurais que vous conseillé de prévoir une migration vers un autre Langage.
A savoir que même Windev a des soucis de migration de ses applications d'un poste 2000 ne 2003.
?
Salutations.
26 juil. 2004 à 11:49
26 juil. 2004 à 11:05
Peut-être est-ce juste un bug des 1ères version d'Access...
26 juil. 2004 à 08:40
26 juil. 2004 à 01:12
Je ne comprend pas trop comment vba pourrait interpreter ca différement.
25 juil. 2004 à 23:02
Il me dit bien "Ok, Not True vaut bien False."
Y a un prob ?