!=====================================================================================
! Класс для управляемого запуска внешней программы.
! Вячеслав Черников, г.Рязань, 2016 г.
!=====================================================================================

!=====================================================================================
! Класс: управляемый запуск внешней программы.
! Пример вызова.
!
! FsProcL   FsProcess
!
! FsProcL.StartProcess('name','title',10,1) !запустить процесс
!
!===================================================================================
! Структуры для управления процессами
!
StartUpInfoType        GROUP,TYPE
cb                     ULONG
lpReserved             LONG    !*PSTR
lpDesktop              LONG    !*PSTR
lpTitle                LONG    !*PSTR
dwX                    ULONG
dwY                    ULONG
dwXSize                ULONG
dwYSize                ULONG
dwXCountChars          ULONG
dwYCountChars          ULONG
dwFillAttribute        ULONG
dwFlags                ULONG
wShowWindow            SIGNED
cbReserved2            SIGNED
lpReserved2            LONG    !*BYTE
hStdInput              UNSIGNED
hStdOutput             UNSIGNED
hStdError              UNSIGNED
dwHotKey               ULONG
dwShellData            ULONG
                     END

Process_InformationType GROUP,TYPE
hProcess               UNSIGNED
hThread                UNSIGNED
dwProcessId            ULONG
dwThreadId             ULONG
                     END

!=====================================================================================

FsProcess      CLASS,TYPE,MODULE('FsProcess.CLW'),LINK('FsProcess.CLW')
FlagNoWite     BYTE  !признак не ждать окончания процесса

StartUpInfo          like(StartUpInfoType)
Process_Information  like(Process_InformationType)

StartProcess   FUNCTION (STRING pName, STRING pTitle, LONG pTime, BYTE pEnd), BYTE !запустить процесс
KillProcess    FUNCTION (), BYTE                !убить процесс
TestProcess    FUNCTION (UNSIGNED pProcess), BYTE   !Проверить процесс

             END

