Hola
Se me ocurre que para que esto se pueda acelerar se podria dividir el programa en varios ejecutables, y llamarlos a esos ejecutables desde otro ejecutable. Me explico, en mi aplicación, tengo muchos módulos, y muchas pantallas y reportes, lo que he hecho es agrupar las pantallas y los reportes en varios ejecutables. Para ejecutarlos, en una tabla tengo guardado los nombres de todas las pantallas en un campo, el nombre del modulo al que pertenecen en otro, y el nombre del ejecutable donde estan compiladas en otro. Tengo una ventana que es el main menu de mi aplicación, que tiene un activeX treview donde los nodos son llenados con la tabla que contiene el nombre del modulo, el nombre de la pantalla, y el nombre del ejecutable que la contiene, de manera que cuando presiono sobre el nodo correspondiente se ejecuta la pantalla, desde el ejecutable que la contiene, otra de las ventajas de esto es que puedo asociar esta tabla de pantallas y menus a la tabla del perfil del usuario, de manera que cuando ingreso en la pantalla principal, al ingresar la clave, el treview control muestra solo las pantallas a las que ese usuario tiene acceso.
Esto es algo que se podria implementar facilmente solo tendrias que cambiar la forma de llamar a tus pantallas, crear la tabla de pantallas, perfiles de usuario y accesos, y recompilar las pantallas en ejecutables separados.
Espero que esta idea te pueda ayudar
Saludos
Carlos Miranda
MVP Visual Fox Pro
Carlos A. Miranda
E.I.S.lnc
President