Rev 5598 | Rev 6708 | Go to most recent revision | Details | Compare with Previous | Last modification | View Log | RSS feed
Rev | Author | Line No. | Line |
---|---|---|---|
5598 | pavelyakov | 1 | #ifndef INCLUDE_RESTART_PROCESS_H |
2 | #define INCLUDE_RESTART_PROCESS_H |
||
3 | |||
4 | #ifndef INCLUDE_KOLIBRI_H |
||
5 | #include "../lib/kolibri.h" |
||
6 | #endif |
||
7 | |||
5548 | leency | 8 | enum { |
9 | MULTIPLE, |
||
10 | SINGLE |
||
11 | }; |
||
12 | |||
5622 | leency | 13 | :int CheckProcessExists(dword proc_name) { |
5548 | leency | 14 | int i; |
15 | proc_info Process; |
||
16 | for (i=0; i<1000; i++;) |
||
17 | { |
||
18 | GetProcessInfo(#Process, i); |
||
5622 | leency | 19 | if (strcmpi(#Process.name, proc_name)==0) return 1; |
20 | } |
||
21 | return 0; |
||
22 | } |
||
23 | |||
24 | :void KillProcessByName(dword proc_name, byte multiple) { |
||
25 | int i; |
||
26 | proc_info Process; |
||
27 | for (i=0; i<1000; i++;) |
||
28 | { |
||
29 | GetProcessInfo(#Process, i); |
||
5548 | leency | 30 | if (strcmpi(#Process.name, proc_name)==0) |
31 | { |
||
32 | KillProcess(Process.ID); |
||
33 | if (multiple==SINGLE) break; |
||
34 | } |
||
35 | } |
||
5622 | leency | 36 | } |
37 | |||
38 | :void RestartProcessByName(dword proc_name, byte multiple) { |
||
39 | KillProcessByName(proc_name, multiple); |
||
5548 | leency | 40 | RunProgram(proc_name, ""); |
5598 | pavelyakov | 41 | } |
42 | |||
5622 | leency | 43 | |
5598 | pavelyakov | 44 | #endif1000;>1000;> |