![]() |
Processo/EXE ativo
Olá
Como saber en Powercobol se um processo esta ativo? Gracias Jose |
Hola @Joseg , si estas buscando saber si una appxxx.exe esta ejecutandose dos formas :
una con el control ocx ScriptControl Código COBOL:
Otra forma es buscando la ventana del appxxx.exe con api de windows : GetTopWindow , GetWindow , GetWindowTextA Código COBOL:
Saludos ... |
@Joseg,
Código COBOL:
|
Muchas gracias a todos por vuestra ayuda. :amigo:
Eu pretendia fazer isto: https://www.tek-tips.com/threads/set...g-pid.1820890/ Apenas consegui fazer em "C" e Windev. Em anexo o código em "C". Pero la idea era la siguiente: Con el número PID y no el título de la ventana (el título es dinámico), maximizar un programa de terceros y hacerse visible. Código CPP:
|
@Joseg, desde que descubrí cómo hacer funcionar el CALL BY VALUE en PowerCOBOL, absolutamente todo lo que se puede hacer en C, también se puede hacer en PowerCOBOL!
Así que, este código C también se puede convertir en PowerCOBOL! ;) |
Cita:
Por ejemplo, esta función "&& IsWindowVisible(hwnd))" no devolvió el resultado correcto. Debo estar haciendo algo mal. Código COBOL:
|
@Joseg, acabo de probarlo y funciona:
Lo primero, creas un fichero nuevo en el directrio del proyecto y lo llamas EnumWindowsProc. Luego lo añades en el proyecto (import) y le pegas el siguiente contenido: Código COBOL:
No olvides de añadirle la directiva ALPHAL(WORD) en las propiedades. Luego desde donde quieras haces algo así (yo lo hago en el evento Click de un botón, recogiendo un PID desde CmText): Código COBOL:
Ya nos cuentas qué tal ;) |
Perfecto :amigo:. Kuk entiendes mucho de esto !!
Gracias. José |
@Joseg, de nada, para eso estamos :beber:
El problema era que oficialmente Fujitsu COBOL no trabaja con BY VALUE, pero de esta manera "hackeamos" el compilador quitándole este handicap y hacemos funcionar los CALL BY VALUE. Y con esta solución podemos reescribir el Windows por completo si queremos :rofl: |
@Joseg, he encontrado otra manera de hacerlo funcionar sin pasar por PROCEDURE-POINTER, lo cual me hace suponer que funcionaría incluso en PowerCOBOL v3 (que no tiene PROCEDURE-POINTER):
Código COBOL:
Funciona perfectamente, lo que pasa es que aquí uso WinAPI para obtener la dirección de la función. A ver si un día lo pruebo en PowerCOBOL v3, debería funcionar, salvo que haya algún imprevisto. |
| La franja horaria es GMT +2. Ahora son las 03:22. |
Powered by: vBulletin, Versión 3.8.7
Derechos de Autor ©2000 - 2026, Jelsoft Enterprises Ltd.