Du hast das schon richtig erkannt. Es sind die Queries. Denen ist völlig wurschst, wieviel MHz dein Rechner hat. Die müssen ihre Daten von der Platte holen.
Folgendes kannst du machen(Ob das bei ADOs geht, weiß ich nicht!):
- Query.DisableControls aufrufen, bevor du die Queries aktivierst. Wenn alle geöffnet sind: Query.EnableControls. Dadurch vermeidest du, dass die verbundenen Komponenten sich ständig aktualisieren.
- Zeig dem Anwender eine Sanduhr.
Wenn du die Queries schon beim Programmstart öffnest, dann ist es da langsam. Das Problem ist dann nur verschoben.