Gracias Rui Pinto (Rapinto)
COBOL Foro
Foro dedicado a COBOL, a la Programación y a la Informática.
  COBOL Foro > IDE-s y compiladores COBOL > Fujitsu COBOL > NetCOBOL for Windows
NetCOBOL for Windows El IDE basado en Eclipse.
Comunicados
Otros temas que te pueden interesar
Tema Autor Foro Respuestas Último post
[Sintaxis] Saber si un EXE se esta ejecutando ?? Hrmcobol PowerCOBOL y WinAPI 1 24 de noviembre de 2020 12:11
[Sintaxis] Llamar DLL de Fujitsu Cobol desde Windev Joseg WinDev 0 12 de octubre de 2016 09:19
[Compilador] Compilar un Ejecutable (.exe) Yonaider RM/COBOL 5 26 de mayo de 2016 08:19
[Sintaxis] Llamar programa externo desde Powercobol Ciro PowerCOBOL (ActiveX, v4 - v11) 2 6 de septiembre de 2015 20:08
[Sintaxis] Llamar a un Subform Josber PowerCOBOL (ActiveX, v4 - v11) 4 19 de febrero de 2015 07:00
Respuesta
 
Herramientas

  #1
Antiguo 28 de mayo de 2021, 16:45
IDENTIFICATION DIVISION
hbetancur
 Acabo de llegar...
ENVIRONMENT DIVISION
Avatar de hbetancur
DATA DIVISION
julio 2017
19.06.2021 16:33
PROCEDURE DIVISION
Posts: 6
Enviado: 0
Recibido: 0
Soluiones: 0
Reputación: 0
hbetancur is an unknown quantity at this point
Predeterminado llamar a aplication externa .EXE

Como llamar a una aplicacion externa .EXE y corra en un proceso independiente. Ejemplo llamar Notepad, Excel, etc. directamente desde windows netcobol sin usar powercobol. Hay alguna libreria externa o api pueda usar?. Algun ejemplo o guia en manual. He hecho toda clase de busqueda sin exito.
hbetancur no ha iniciado sesión   Responder Con Cita
  #2
Antiguo 28 de mayo de 2021, 22:50
IDENTIFICATION DIVISION
Kuk
 Administrador
ENVIRONMENT DIVISION
Avatar de Kuk
DATA DIVISION
diciembre 2014
Madrid
36 años
16.09.2021 12:01
PROCEDURE DIVISION
Posts: 1.806
Enviado: 583
Recibido: 753
Soluiones: 95
Reputación: 10
Kuk is on a distinguished road Kuk is on a distinguished road Kuk is on a distinguished road Kuk is on a distinguished road Kuk is on a distinguished road Kuk is on a distinguished road Kuk is on a distinguished road Kuk is on a distinguished road Kuk is on a distinguished road Kuk is on a distinguished road Kuk is on a distinguished road
Predeterminado

@hbetancur, estás trabajando en NetCOBOL o en PowerCOBOL?



NORMAS DEL FORO - para garantizar el buen funcionamiento del Foro.
¿Te han ayudado? NO TE OLVIDES de darle a
¿Quieres dirigirte a alguien en tu post? Notifícale haciendo clic en su Nick
Kuk no ha iniciado sesión   Responder Con Cita
  #3
Antiguo 28 de mayo de 2021, 23:27
IDENTIFICATION DIVISION
hbetancur
 Acabo de llegar...
ENVIRONMENT DIVISION
Avatar de hbetancur
DATA DIVISION
julio 2017
19.06.2021 16:33
PROCEDURE DIVISION
Posts: 6
Enviado: 0
Recibido: 0
Soluiones: 0
Reputación: 0
hbetancur is an unknown quantity at this point
Predeterminado

Estoy usando Netcobol v11. Quiero llamar un .exe sin usar powercobol.

---------- Post añadido : 22:27 ---------- Post anterior : 22:25 ----------

Perdon aclaro un poco mas. Con Netcobol quiero lanzar una aplicacion externa (.EXE) con proceso independiente del programa o aplicacion que la llama. Algo asi como lazar notepad o exc o word independientes.
hbetancur no ha iniciado sesión   Responder Con Cita
  #4
Antiguo 29 de mayo de 2021, 10:58
IDENTIFICATION DIVISION
Kuk
 Administrador
ENVIRONMENT DIVISION
Avatar de Kuk
DATA DIVISION
diciembre 2014
Madrid
36 años
16.09.2021 12:01
PROCEDURE DIVISION
Posts: 1.806
Enviado: 583
Recibido: 753
Soluiones: 95
Reputación: 10
Kuk is on a distinguished road Kuk is on a distinguished road Kuk is on a distinguished road Kuk is on a distinguished road Kuk is on a distinguished road Kuk is on a distinguished road Kuk is on a distinguished road Kuk is on a distinguished road Kuk is on a distinguished road Kuk is on a distinguished road Kuk is on a distinguished road
Predeterminado

@hbetancur, échale un ojo a este post: [Sintaxis] CALL a programas externos en Windows 8 - COBOL Foro

---------- Post añadido : 11:58 ---------- Post anterior : 10:54 ----------

@hbetancur, NetCOBOL trae ejemplos (samples), de los cuales el SAMPLE32 muestra como hacerlo:

Código COBOL:
  1. 000010 @OPTIONS ALPHAL(WORD)
  2. 000020*=================================================================
  3. 000030* This sample program demonstrates how to execute other programs
  4. 000040*   and batch files.
  5. 000050*
  6. 000060*
  7. 000070*                Copyright 2000-2010 FUJITSU LIMITED
  8. 000080*=================================================================
  9. 000090 IDENTIFICATION DIVISION.
  10. 000100 PROGRAM-ID.    SAMPLE32.
  11. 000110 DATA           DIVISION.
  12. 000120 WORKING-STORAGE SECTION.
  13. 000130 01 ProcessInfo.
  14. 000140   02 prcinf01   PIC 9(9) COMP-5.
  15. 000150   02 prcinf02   PIC 9(9) COMP-5.
  16. 000160   02 prcinf03   PIC 9(9) COMP-5.
  17. 000170   02 prcinf04   PIC 9(9) COMP-5.
  18. 000180 01 StartupInfo.
  19. 000190   02 stainf01   PIC 9(9) COMP-5.
  20. 000200*
  21. 000210   02 stainf02   PIC 9(9) COMP-5.
  22. 000220   02 stainf03   PIC 9(9) COMP-5.
  23. 000230   02 stainf04   PIC 9(9) COMP-5.
  24. 000240*
  25. 000250   02 stainf05   PIC 9(9) COMP-5.
  26. 000260   02 stainf06   PIC 9(9) COMP-5.
  27. 000270   02 stainf07   PIC 9(9) COMP-5.
  28. 000280   02 stainf08   PIC 9(9) COMP-5.
  29. 000290   02 stainf09   PIC 9(9) COMP-5.
  30. 000300   02 stainf10   PIC 9(9) COMP-5.
  31. 000310   02 stainf11   PIC 9(9) COMP-5.
  32. 000320   02 stainf12   PIC 9(9) COMP-5.
  33. 000330   02 stainf13   PIC 9(4) COMP-5.
  34. 000340   02 stainf14   PIC 9(4) COMP-5.
  35. 000350   02 stainf15   PIC 9(9) COMP-5.
  36. 000360*
  37. 000370   02 stainf16   PIC 9(9) COMP-5.
  38. 000380   02 stainf17   PIC 9(9) COMP-5.
  39. 000390   02 stainf18   PIC 9(9) COMP-5.
  40. 000400 01 appPath      PIC X(256) VALUE SPACE.
  41. 000410 01 pathLeng     PIC S9(9) COMP-5.
  42. 000420 01 cmdline      PIC X(256) VALUE SPACE.
  43. 000430 01 cmdlinLeng   PIC S9(9) COMP-5.
  44. 000440 01 rtncd        PIC 9(9)  COMP-5.
  45. 000450 CONSTANT        SECTION.
  46. 000460 01 ZDEFAULT    PIC X(22) VALUE "..\SAMPLE31\MSGBOX.EXE".
  47. 000470 PROCEDURE      DIVISION.
  48. 000480*=================================================================
  49. 000490*  Get the path name of the program or batch file to execute.
  50. 000500*=================================================================
  51. 000510     DISPLAY " Input the path name that execution program.".
  52. 000520     DISPLAY " (If input no character, then execute the MsgBox.EXE of SAMPLE31)".
  53. 000530     DISPLAY " => " WITH NO ADVANCING.
  54. 000540     ACCEPT  appPath FROM CONSOLE.
  55. 000550     COMPUTE pathLeng = FUNCTION STORED-CHAR-LENGTH(appPath)
  56. 000560*=================================================================
  57. 000570*  If nothing is input,
  58. 000580*  then use the default path name ("..\SAMPLE31\MSGBOX.EXE").
  59. 000590*=================================================================
  60. 000600     IF pathLeng = 0 THEN
  61. 000610       COMPUTE pathLeng = FUNCTION LENGTH (ZDEFAULT)
  62. 000620       MOVE ZDEFAULT TO appPath
  63. 000630       MOVE 0        TO cmdlinLeng
  64. 000640     ELSE
  65. 000650*=================================================================
  66. 000660*  If the path name is input,
  67. 000670*  then get the command line arguments.
  68. 000680*=================================================================
  69. 000690       DISPLAY " Input the command line arguments."
  70. 000700       DISPLAY " => " WITH NO ADVANCING
  71. 000710       ACCEPT  cmdline FROM CONSOLE
  72. 000720       COMPUTE cmdlinLeng = FUNCTION STORED-CHAR-LENGTH(cmdline)
  73. 000730       MOVE LOW-VALUE TO cmdline(cmdlinLeng + 1:1)
  74. 000740     END-IF
  75. 000750     MOVE LOW-VALUE TO appPath(pathLeng + 1:1)
  76. 000760*=================================================================
  77. 000770*  Execute the program using the CreateProcessA function.
  78. 000780*=================================================================
  79. 000790     DISPLAY "Execute the program " appPath(1:pathLeng)
  80. 000800     IF cmdlinLeng =  0 THEN
  81. 000810       *> If do not need command line arguments.
  82. 000820       CALL "CreateProcessA" WITH STDCALL LINKAGE
  83. 000830                             USING BY REFERENCE appPath
  84. 000840                                   BY VALUE 0
  85. 000850                                   BY VALUE 0
  86. 000860                                   BY VALUE 0
  87. 000870                                   BY VALUE 0
  88. 000880                                   BY VALUE 0
  89. 000890                                   BY VALUE 0
  90. 000900                                   BY VALUE 0
  91. 000910                                   BY REFERENCE StartupInfo
  92. 000920                                   BY REFERENCE ProcessInfo
  93. 000930                             RETURNING rtncd
  94. 000940     ELSE
  95. 000950       *> If need command line arguments.
  96. 000960       CALL "CreateProcessA" WITH STDCALL LINKAGE
  97. 000970                             USING BY REFERENCE appPath
  98. 000980                                   BY REFERENCE cmdline
  99. 000990                                   BY VALUE 0
  100. 001000                                   BY VALUE 0
  101. 001010                                   BY VALUE 0
  102. 001020                                   BY VALUE 0
  103. 001030                                   BY VALUE 0
  104. 001040                                   BY VALUE 0
  105. 001050                                   BY REFERENCE StartupInfo
  106. 001060                                   BY REFERENCE ProcessInfo
  107. 001070                             RETURNING rtncd
  108. 001080     END-IF
  109. 001090*
  110. 001100*=================================================================
  111. 001110*  CreateProcessA succeed.
  112. 001120*=================================================================
  113. 001130     IF rtncd = 1 THEN
  114. 001140       DISPLAY "Succeeded in executing program " appPath(1:pathLeng)
  115. 001150       CALL "WaitForSingleObject" WITH STDCALL LINKAGE
  116. 001160                                  USING BY VALUE prcinf01 -1
  117. 001170       CALL "GetExitCodeProcess" WITH STDCALL LINKAGE
  118. 001180                    USING BY VALUE prcinf01
  119. 001190                          BY REFERENCE rtncd
  120. 001200*=================================================================
  121. 001210*  Free all resources.
  122. 001220*=================================================================
  123. 001230       CALL "CloseHandle" WITH STDCALL LINKAGE
  124. 001240                          USING BY VALUE prcinf01
  125. 001250       CALL "CloseHandle" WITH STDCALL LINKAGE
  126. 001260                          USING BY VALUE prcinf02
  127. 001270       DISPLAY "Return code from " appPath(1:pathLeng) " is '" RTNCD "'."
  128. 001280*
  129. 001290*=================================================================
  130. 001300*  CreateProcessA failed.
  131. 001310*=================================================================
  132. 001320     ELSE
  133. 001330       CALL "GetLastError" WITH STDCALL LINKAGE
  134. 001340                           RETURNING rtncd
  135. 001350       DISPLAY "Failed in execution " appPath(1:pathLeng)
  136. 001360       DISPLAY "Return code is '" RTNCD "'."
  137. 001370     END-IF.
  138. 001380     STOP RUN.



NORMAS DEL FORO - para garantizar el buen funcionamiento del Foro.
¿Te han ayudado? NO TE OLVIDES de darle a
¿Quieres dirigirte a alguien en tu post? Notifícale haciendo clic en su Nick
Kuk no ha iniciado sesión   Responder Con Cita
Respuesta


Usuarios activos actualmente viendo este tema: 1 (0 miembros y 1 visitantes)
 
Herramientas

Derechos de Publicación
No puedes publicar nuevos temas
No puedes publicar posts/responder
No puedes adjuntar archivos
No puedes editar tus posts

BB code is habilitado
Las caritas están habilitado
Código [IMG] está habilitado
Código HTML está deshabilitado



La franja horaria es GMT +1. Ahora son las 17:16.
Powered by: vBulletin, Versión 3.8.7
Derechos de Autor ©2000 - 2021, Jelsoft Enterprises Ltd.