2011-02-15 2 views
1

J'utilise une base de données Access 2007 qui est remplie par les utilisateurs qui n'ont que Access 2007 Runtime. L'application a été initialement développée sur WinXP et Acess 2007, maintenant je suis sur Win7 et Access 2007.Access Runtime 2007 Echec de la fonction Ucase, solution ou aide au suivi des erreurs

Depuis que j'ai réenregistré l'application, chaque client utilisant XP rencontre une erreur chaque fois que la fonction Ucase est appelée.

Pour le débogage, j'ai changé la charge-Sub du formulaire principal à la seule instruction

bla = Ucase("foo") 

Ce qui amène les clients au message d'erreur qu'il y avait une erreur d'exécution et l'application a été interrompue.

J'inclus la gestion des erreurs dans la sous le faire ressembler à ceci:

On Error GoTo handle 
    bla = UCase("foo") 
handle: 
    MsgBox Err.Number & ":" & Err.Description 

assez étrange, la poignée est ignorée par le moteur d'exécution.

Le problème n'apparaît sur aucun client avec une installation complète d'Access 2007 ou Windows 7.

Je suis un peu confus comment la version de Windows a quelque chose à voir avec cela.

Toute aide pour résoudre le problème ou Tipps pour obtenir un code d'erreur spécifique serait grandement appréciée.

Cordialement,

tannerli

Répondre

2

D'une manière générale, lorsque les fonctions standard commencer à lancer des erreurs, il est parce qu'il ya une référence à quelque chose brisée. Lorsqu'une référence est rompue, les références échouent, même pour les bibliothèques standard. Les chances sont, vous avez réussi à faire référence à une version plus récente de l'une des bibliothèques qui n'est pas disponible sur Windows XP.

+0

Vous aviez raison, avec mon nouveau PC, il y avait aussi une installation d'Office 2010. J'ai référencé l'Excel Library pour générer des rapports. Donc, tout client sans Excel 2010 aurait le problème. J'ai installé Excel 2003 et changé la référence à l'Excel Library 11.0 qui fournit également les fonctions nécessaires. Qu'est-ce qu'un comportement d'erreur étrange si ... Merci beaucoup – tannerli

+1

@tannerli C'est la raison principale que la liaison tardive aux bibliothèques externes est recommandée. Si vous aviez utilisé une liaison tardive pour Excel, il aurait heureusement utilisé la version trouvée et tout aurait bien été. – Fionnuala

+0

@Remou Merci, je n'étais pas au courant de la différence et des implications des différentes méthodes de reliure, je vais le garder à l'esprit pour une utilisation future – tannerli