COBOL Foro

COBOL Foro (https://www.cobolforo.es/index.php)
-   RM/COBOL (https://www.cobolforo.es/forumdisplay.php?f=16)
-   -   [Sintaxis] Ejecutar un archivo *.exe sin CALL "SYSTEM" (https://www.cobolforo.es/showthread.php?t=1328)

mhnico 10 de junio de 2021 23:42

Ejecutar un archivo *.exe sin CALL "SYSTEM"
 
Buenas tardes, alguien sabe cual es la sentencia, para que un programa cobol ejecute un archivo .exe, sin tener que hacer CALL SYSTEM?
Desde ya muchas gracias.

JCantero 11 de junio de 2021 09:58

Cualquier programa, de cualquier lenguaje que llame a un .EXE tiene que hacer obligatoriamente una llamada al sistema.

Cualquier programa, de cualquier lenguaje, puede llamar a funciones de objetos, libreria, DLL, etc, si están bien implementadas, si no solo para lo que este diseñado ese objeto, libreria, DLL, etc.

Kuk 11 de junio de 2021 10:33

@mhnico, yo creo que lo mejor será que nos digas cuál es el propósito de tu pregunta? Qué intentas hacer y por qué CALL "SYSTEM" no te convence?

mhnico 11 de junio de 2021 14:10

El problema que estoy teniendo desde que se actualizo la ultima version de windows 10, es que cuando la terminal de trabajo ejecuta el sistema que esta alojado en el disco mapeado (z:\...) y el programa hace el CALL SYSTEM, el windows me tira el error que no puede hacer el cmd al disco, y vuelve a la carpeta c:\windows, por ende en esa carpeta no encuentra los .bat que necesita el sistema donde ejecuta los .exe. Un programador me comento que hay unas sentencias de cobol que no es necesario hacer el call system para llamar a un exe.

Kuk 11 de junio de 2021 16:08

@mhnico, me da que es un problema de derechos. Y aunque consigas otra manera de llamar a un CALL (que yo no la conozco y me extraña, seguramente el programador de hablaba de unos *.exe COBOL que son gestionados por un Run-Time) supongo que tendrás el mismo problema.

JCantero 12 de junio de 2021 11:09

Para hacer eso, debes de llamar al .BAT con la ruta completa.

En el caso de que el .BAT llame a otros .BAT debes de posicionarte en esa carpeta y ejecutar.

Ejemplo:

Si quieres llamar a programa.bat que está en la carpeta z:\programa debes de hacer un .bat (ejecuta.bat) que se posicione y ejecute

ejecuta.bat
Código Bash:
  1. z:
  2. cd \programa
  3. programa.bat

Tu programa cobol, en vez de llamar a z:\programa\programa.bat debe de llamar a ejecuta.bat


La franja horaria es GMT +1. Ahora son las 04:52.

Powered by: vBulletin, Versión 3.8.7
Derechos de Autor ©2000 - 2021, Jelsoft Enterprises Ltd.