La primera opción para lo que planteas es lanzar el programa principal desde el entorno de desarrollo, pero si tu programa va a ser utillizado en varias PCs no es una opción práctica ya que requerirías una licencia de VFP por cada equipo y a la vez estarías exponiendo al usuario final la estructura del proyecto con todos sus fuentes al aire, cosa que no es muy saludable.
Entonces lo mejor es hacer una compilación (EXE o APP) y ejecutarlo con los runtimes de VFP.
Para ejecutar componentes desvinculados en un proyecto dichos componentes deben estar "excluidos", en el administrador de proyectos pulsas botón derecho de mouse sobre el componente y en el menú popup indicas "Excluir"
Así puedes compilar como ejectutable sólo el programa principal y los demás elementos pueden residir "sueltos" en en el mismo directorio o en carpetas que estén definidas con el comando SET PATH
De hecho los programas PRGs se convierten en FXP que son una versión precompilada de P-CODE que son interpetados con el runtime.
Tener todos los componentes incluidos en un solo ejecutable o tener componentes "sueltos"?
Cada cosa tiene sus ventajas y desventajas.
El ejecutable único nos facilita la instalación y portabilidad de la aplicación y a su vez los componentes "sueltos" nos dan más "modularidad" cosa que si cambia algo solo debemos reinstalar solo eso.
Por lo general los componentes sueltos pueden llegar a ser librerías de clases visuales (VCX), reportes (FRX), archivos de imágenes (BMP, JPG, etc), archivos INI de configuración y por supuesto bases de datos o tablas VFP.
Es raro ver sueltos PRG o formularios (SCX)
Mi última observación sobre sistemas con fuentes o componentes "abiertos" es ver como otras plataformas como Python, Ruby, PHP, JavaScript etc. mantienen sus fuentes "al aire" con algunas pocas opciones de compilación y ocultamiento (u ofuscación) del de código original.
saludos