Bienvenido Hector,
Según nuestro colega MALIGNO es verificar algun archivo del Clipper o del linkador (BLINKER o EXOSPACE) que pueden estar corrompidos. Este error no aparece cuando hace un aplicativos TESTE, por ejemplo ?. Éste error me parece familiar en una de mis tentativas de compilacion con EXOSPACE. Y lo que hé visto en la WEB que han re-instalado el WINDOWS XP y ´ha resuelto el problema.
De todos modos tengo a sugerirte que seguramente te vá a gustar mucho, porque a mi me dió muy buen resultado. Una porque puedo poner cualquier programa externo sea aplicativos em Clipper, sea aplicativos en WINDOWS puro o hasta programas/acesorios del propio WINDOWS como CALC.EXE, NOTEPAD.EXE, etc... El único inconveniente que tengo es cuando mandas llamar un aplicativo GUI (con interface gráfica) y termina de ser ejecutado no vuelve a la misma pantalla que originó su llamada. Esto ocurre cuando el modo de exihibicion de la pantalla es en modo TEXTO puro. Pero cuando está en modo WINDOWED (es decir al estilo de ventana de WINDOWS) aí si vuelve normal, pero sinó la pantalla principal queda minimizada. Es unos de mis suplicios y que estoy intentando buscar una salida con el cranio de MALIGNO. Que supuestamente tentará hacer una biblioteca en lenguaje C. Pero vamos al grano:
1. Hacés un programa MENU, es decir que contenga todas las opciones de programas e inclusive tendria que tener una opcion para salida tambien. Puedes incrementarle con otra opcion como UTILITARIOS, CONFIGURACIONES para impresoras, tipos de letras para exibicion en pantalla, etc. Lo hacés en CLIPPER puro con RTLINK o BLINKER e inclusive. Si querés puedes ponerle MOUSE tambien. Este programa será tu programa PRINCIPAL. Para cada opcion de programa de este MENU, irá generar un CÓDIGO DE ERROR (ERROR LEVEL) que sirvirá para el MS-DOS interpretar eses "ERRORES". Ejemplo:
Código: Selecionar todos
@ 10,20 PROMPT "Logistica"
@ 11,20 PROMPT "Cierre"
@ 11,20 PROMPT "Cobranzas"
@ 11,20 PROMPT "Gerencial"
MENU TO OP
DO CASE
CASE OP=1
ERRORLEVEL(254)
CASE OP=2
ERRORLEVEL(253)
CASE OP=3
ERRORLEVEL(252)
CASE OP=4
ERRORLEVEL(251)
OTHERWISE
QUIT
ENDCASE
2. Ahora irá hacer un archivo .BAT que será responsable por llamar los aplicativos de acuerdo cada ERRORLEVEL designado. El ícone que llamará este MENU de programas, tendrá en la linea de comando el nombre de este archivo.BAT. Y lo vas hacer así:
Código: Selecionar todos
@ECHO OFF
MENU
IF ERRORLEVEL 255 GOTO FIN
IF ERRORLEVEL 254 PROGRAMA_DE_LOGISTICA.EXE
IF ERRORLEVEL 253 GOTO CERRAR
IF ERRORLEVEL 252 PROGRAMA_DE_COBRANZA.EXE
IF ERRORLEVEL 251 GERENCIAL
IF ERRORLEVEL 1 GOTO FIN
GOTO INICIO
:CERRAR
PROGRAMA_DE_CIERRE_DE_CAJA.EXE
IF EXIST RELATORIO.PRN NOTEPAD RELATORIO.PRN
rem Esta opcion arriba es para llamar en pantalla un relatorio (solo para enseñarte que se pueden incrementar muchas cosas)
GOTO INICIO
:SAI
(aqui yo acostumbrto poner un caracter codigo-ASCII 26, que es final de archivo)
Te hice un ejemplo muy básico. Irá depender tu conocimiento en MS_DOS. Pero en realidad esto te irá facilitar muchisimo porque no tendrá que preocupar en librar memoria para tu aplicativo principal para que ejecute otro programa que puede ser un gran problema por falta de memoria. Al mismo tiempo ejercitarás conocimiento del gran poderoso ARCHIVO-EN-LOTE (.BAT). Cuando se trata de computadoras en RED, yo hago otro archivo en lote (otra .BAT) para FORZAR coneccion con el comando NET USE, tambien lo uso para CAPTURAR impresoras en RED. Con el tiempo, irás viendo la necesidad de incorporar cada vez más cosas. Una de ellas (que para mi fué muy importante), Es colocar en tu archivo.BAT el famoso aplicativo recientemente creado por MALIGNO que se llama WAPI. Con él podrás hacer cosas que antes no lo hibieses pensado que es posible hacer en Clipper. Unas de ella, hago con que el sistema MENU (vamos decir) detecte que ya hay otra seccion abierta. Porque no querrás que tu usuário abra dos, tres veces el mismo programa. Para eso puedes ver los tópicos que concierne al WAPI. Que tiene una funcion llamada -GETAPPSINFO: que crea un archivo (predeterminado) los programas abiertos. Pero enfin, no quiero llenarte la cabeza que tantas cosas. Lo importante ahora, es que tu puedas reproducir lo que te estoy indicando ==> ARCHIVO_BAT => MENU_GERENCIADOR => EJECUCION_DE_PROGRAMAS
Que tal ?. De donde eres ? Bueno serias que pongas en tu perfil de inscripcion, otros datos. A todos nosotros nos alegra que participen todos los CLIPPER-MANIACOS, jejeje, y saber que tenemos contactos en el exterior.
Un CLI-ABRAZO :)Pos