lumalma, yo nunca he usado la rutina CBL para cambio de directorio actual. En general, no cambio nunca el directorio porque puede llevar a consecuencias graves. Siempre trabajo con directorios absolutos, es decir, indicando explícitamente la ruta exacta de cada fichero.
Si miras el PowerCOBOLReference.pdf, verás lo que se dice de la rutina de dialogo de ficheros "GetFileName" (página 294) :
Cita:
|
❞
Folder Group
Whether the current folder is changed when the user changes folders.
POW-CDCHANGEDIR: (The default) Changes the current folder.
POW-CDNOCHANGEDIR: Does not change the current folder.
|
O sea que para que NO cambia de directorio, hay que indicarlo expresamente con POW-CD
NOCHANGEDIR. En caso contrario, el directorio cambia (opción por defecto: POW-CDCHANGEDIR)
Si se trata de un proyecto externo, por narices debe ser una DLL por lo tanto con Form(s) hijo. Si es un ejecutable, peor aún, se trata de otro Thread (flujo) de ejecución.
La filosofía del asunto es, que yo sepa, la que he descrito en mi post anterior. Yo creo que es por eso que no te funciona.
Haz pruebas con ello en el MainForm y fíjate si el Form hijo sigue en el mismo directorio o no. Y haz lo contrario, cambiando el directorio en el Form hijo y comprueba dónde apunta el MainForm.