|
Bugs: Erreur de compilation dans un module caché |
Author(s) Dev Ashish |
|
Cet étrange problème semble avoir diverses origines, et
diverses solutions. Quelques cas que j'ai vu (pas personnellement):
- sur une machine, mais pas sur toutes, après un "Compile and
Save All Modules"
- en ouvrant un formulaire donné, alors que la recompilation est en
cours, sur une machine, mais pas sur toutes.
- alors qu'on génère un fichier MDE depuis l'interface(cas commun)
- seulement avec l'environnement runtime (non sur la machine de développement) ou lors de l'utilisation de l'option /runtime option (second cas le plus commun)
- dans la macro Autoexec sur une base de données convertie de Access 2 à Access 97
- sur des bases de données en replication, utilisant l'option /runtime
Le message d'erreur est:
A protected module can't be displayed. This error has the
following cause and solution:
There is a compilation error in the code of the specified module,
but it can't be displayed because the project is protected. Unprotect the
project, and then run the code again to view the error.
Quelques solutions furent suggérées, toutes ont fonctionnées dans au moins une des situations. Je ne peux que vous suggérer des essayer une à une
Renommer toute procédure qui a le même nom d'un module.
-
Decompile la base de données. Importer les objets dans une nouvelle base de données.
- Si la base de données est convertie depuis Access 2, désélectionner
DAO 2.5/3.5 Compatibility Library pour sélectionner plutôt
DAO 3.5x Library. Recompiler.
- Quelques cas sont causés "simplement" par une référence manquante
Missing References.
- Si vous utilisez des méthode DAO tel que CreateWorkspace,
OpenDatabase, CommitTrans etc., par exemple, les référer depuis DBEngine: DBEngine.CreateWorkspace,
DBEngine.OpenDatabase, Workspaces(0).CommitTrans.
|