Hola,
A ver. Tenemos que distinguir entre el directorio de trabajo y el directorio de la aplicación. Se me olvidó antes comentar, además, que el directorio de trabajo puede ser cambiado no ya por algún componente de tu aplicación, pero, por cualquier otra aplicación. Entonces, la forma de obtener el directorio de trabajo es "GetCurrentDir()". Si hablamos de obtener el directorio de la aplicación... esta función no es la indicada. ¿No estamos de acuerdo en esto?