Désolé de répondre à ce message aussi tard, mais cela aiderai sûrement d'autres maintenant.
J'ai été confronté au même problèmes que vous il y a quelques temps et àpres des nuits blanches de tests j'avais trouver la solution à ce problème.
Voici mon analyse qui à permis de trouver la solution.
1- La lenteur intervient que lorsque plusieurs PC en réseau local accède à une base de donnée partagée
2- La lenteur intervient que lorsque la base de donnée ne se trouve pas dans le PC local, le PC qui heberge la base de donnée ne ralenti pas
3-La lenteur intervient que lorsque les tables sont gérées par BDE (Paradox, dbase), pas de lenteur avec sql
4- Au démarrage de l'application il n'y à pas de lenteur, par la suite la lenteur augmente à l'exploittation de l'application.
J'avais une application partagant des tres grosses tables (100.000 enregistrements) écrite en Delphi 3 ou je n'avais pas ce problème, lorsque je l'avais réécrite en delphi5, j'ai été confronté aux même problème que vous.
Ces informations m'ont permis de restreindre mes recherches et de trouver finalement l'explication du problème.
C EST UN BUG DU BDE
----------------------------
C'est un bug de l'intruction LOCATE du BDE, en local l'instruction LOCATE et LOOKUP permettant une recherche sur une table fonctionne correctement.
Dès que votre application utilise cette fonction sur une table distante, tous les accès ultérieur à cette table sont ralenti, comme une application utilise plusieurs fois cette fonction, à chaque fois l'application devient de plus en plus lente, jusqu'à devenir inexploitable.
Le BUG de cette fonction provient du fait que la mémoire tampon et le handle de fichier ne sont pas libérés...
L'instruction LOCATE et LOOKUP ont été introduit à partir de la version 5 de delphi en remplacement aux instructions de recherche GOTOKEY et GOTONEAR...
Lors de vos recherches sur un champs : Remplacé toute vos instruction LOCATE par l'instruction GOTOKEY et vos problèmes dispatraitrons
Lors de vos recherches sur plusieurs champs utiliser un filtre ou une instruction sql
Le code est plus long à écrire mais c'est le prix à payer pour contourner ce bug.
A part ce bug non répertorié, je vous assure que le BDE est toujours la meilleure manière d'accéder aux base de données DBase et Paradox.
Data-Concept
www.data-concept.eu

bobo