Subversion Repositories Kolibri OS

Rev

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
#endif