Compatibilité windows 7 [Résolu]

Messages postés
28
Date d'inscription
mardi 19 octobre 2004
Dernière intervention
8 juin 2011
- - Dernière réponse : cs_casy
Messages postés
7745
Date d'inscription
mercredi 1 septembre 2004
Dernière intervention
24 septembre 2014
- 26 janv. 2011 à 13:46
Bonjour à tous,
Voilà mon problème, j'ai une application développée sous VB 2008 qui fonctionne très bien sur XP pack3, mais impossible de démarrer l' exe sous windows 7 ...
J'utilise une base de données Access 2000.

Je viens d'essayer tous les modes de compatiblité ... rien

Win 7 me dit que l'appli a cessée de fonctionner sans autres explication ???

Merci d'avance pour votre aide et un GRAND merci pour ce site.

Fiber88
Afficher la suite 

Votre réponse

9 réponses

Meilleure réponse
Messages postés
7745
Date d'inscription
mercredi 1 septembre 2004
Dernière intervention
24 septembre 2014
3
Merci
Il me semble effectivement que les versions Express n'ont pas cette option. Il faut, je crois, éditer directement le fichier projet (.vbproj) avec un éditeur de texte classique (notepad par exemple). Pense à faire une copie de sauvegarde avec tout modification.

C'est un fichier XML. Tu va avoir plusieurs groupe .
Le premier se présente ainsi :
  
    ......
  


De mémoire, il me semble qu'il n'y a rien à changer dans celui-ci

Les autres se présentent ainsi :
  
    ......
  


Dans chacun de ceux-là, tu rajoute la ligne suivante :
    x86


ou tu la modifie si elle y est déjà présente



Pour MS Jet, à ma connaissance, la dernière version connue est la 4.0. Je ne sais pas d'ou sort cette version 12.0
A partir de Access 2007, c'est un nouveau moteur qui est utilisé : MS ACE 12.0, qui lui est normalement compatible 32 et 64 bits.


[i][b]---- Sevyc64 (alias Casy) ----
[hr]# LE PARTAGE EST NOTRE FORCE #/b/i

Dire « Merci » 3

Quelques mots de remerciements seront grandement appréciés. Ajouter un commentaire

Codes Sources 95 internautes nous ont dit merci ce mois-ci

Commenter la réponse de cs_casy
Messages postés
1212
Date d'inscription
dimanche 20 avril 2003
Dernière intervention
4 juin 2016
0
Merci
Bonjour,

Je suis toujours sous XP, mais tu peux peut-être vérifié les points suivants:

- Compatibilité d'Access 2000 avec Win7.
- Ta base n'est-elle pas vérolée.
- Ouvre là avec Access 2000 (dont sans ton appli) sur le poste fautif. En fait assure-toi que ta base fonctionne nickel avec Access 2000 sous Win7 (et sur CE poste) pour complètement dédouaner Access.

Après...


Calade
Commenter la réponse de Calade
Messages postés
7745
Date d'inscription
mercredi 1 septembre 2004
Dernière intervention
24 septembre 2014
0
Merci
[Mode Mme Soleil]
Ton application est compilée avec comme CPU cible "Any CPU", et ton W7 est une version 64 bits.
Mme Soleil

Ton application fait appel au moteur Microsoft Jet 4.0 pour acceder à la base Access.
Si ton application est compilée en Any CPU, elle va fonctionner en 32 bits sur un OS 32 bits et en 64 bits sur un OS 64 bits. Mais lorsqu'elle en 64 bits, elle va tenter de faire appel au moteur Jet en 64 bits qui n'existe pas.

Il faut recompiler ton application en 32 bits (CPU cible = x86) pour qu'elle fonctionne en 32 bits même sur un OS 64 bits



[i][b]---- Sevyc64 (alias Casy) ----
[hr]# LE PARTAGE EST NOTRE FORCE #/b/i
Commenter la réponse de cs_casy
Messages postés
28
Date d'inscription
mardi 19 octobre 2004
Dernière intervention
8 juin 2011
0
Merci
Merci pour ta réponce rapide Calade,
Je viens de tester la base de données ... elle fonctionne nikel.

Si t'as une autre idée je prend

Merci

Fiber88
Commenter la réponse de fiber88
Messages postés
28
Date d'inscription
mardi 19 octobre 2004
Dernière intervention
8 juin 2011
0
Merci
Bonjour casy,
tu dit,
Il faut recompiler ton application en 32 bits (CPU cible = x86) pour qu'elle fonctionne en 32 bits même sur un OS 64 bits

Ok je veux bien mais où je trouve les paramètres de la compilation...
Je viens de regarder dans les propriétés du projet et je n'ais pas trouvé... ou alors je n'ai pas vu...

Merci pour votre aide

Fiber88
Commenter la réponse de fiber88
Messages postés
1212
Date d'inscription
dimanche 20 avril 2003
Dernière intervention
4 juin 2016
0
Merci
Sous 2010, Menu Générer/Gestionnaire de Configurations.


Calade
Commenter la réponse de Calade
Messages postés
28
Date d'inscription
mardi 19 octobre 2004
Dernière intervention
8 juin 2011
0
Merci
Merci Calade,

J'ai oublié de preciser que je suis sous VB 2008 express et je crois que je n'ai pas cette option !!!

Si je change Microsoft Jet 4.0 par Microsoft Jet 12.0 pour Access 2007 en enregistrant la base au format 2007, cela va-t-il suffir ???

Merci

Fiber88
Commenter la réponse de fiber88
Messages postés
1212
Date d'inscription
dimanche 20 avril 2003
Dernière intervention
4 juin 2016
0
Merci
t je crois que je n'ai pas cette option !!!


Vérifie car ce me semble bizarre qu'il compile systématiquement en AnyCPU pour la version Express. SInon, désolé je ne peux pas te répondre par rapport à la version Express.

Si je change Microsoft Jet 4.0 par Microsoft Jet 12.0 pour Access 2007 en enregistrant la base au format 2007, cela va-t-il suffir


Là aussi fait un essai, mais je suis sceptique car c'est le moteur Jet lui-même qui n'existe qu'en 32 Bits.

Calade
Commenter la réponse de Calade
Messages postés
28
Date d'inscription
mardi 19 octobre 2004
Dernière intervention
8 juin 2011
0
Merci
Pour ceux que cela intéresse
Dans les versions Express vous devez :

- Dans les options de Visual Studio, allez dans le menu "Outils" > "Options".
- Cochez la case "Afficher tous les paramètres".
- Dans l'arborescence, choisir : "Projets et solutions" -> "Général"
- Activer l'option "Afficher les configurations de génération avancées".
- Cliquez sur OK
- Dans la barre d'outils, vous devez voir apparaitre une liste déroulante : "Any CPU", choisissez alors "Gestionnaire de configurations"
- Dans la colonne "Plateforme" au niveau de la ligne de votre projet, déroulez la liste et choisir "Nouveau..."
- Dans nouvelle plateforme, choisir x86 et cliquez sur OK. Puis sur "Fermer".

Lorsque vous compilez votre executable, celui-ci fonctionne exclusivement en 32-bit. Si vous souhaitez compiler en "Any CPU", vous devez sélectionner de nouveau dans la liste déroulante dans la barre d'outils : "Any CPU".

MERCI le Forum MSDN
A+

Fiber88
Commenter la réponse de fiber88

Vous n'êtes pas encore membre ?

inscrivez-vous, c'est gratuit et ça prend moins d'une minute !

Les membres obtiennent plus de réponses que les utilisateurs anonymes.

Le fait d'être membre vous permet d'avoir un suivi détaillé de vos demandes et codes sources.

Le fait d'être membre vous permet d'avoir des options supplémentaires.