Subversion Repositories Kolibri OS

Rev

Rev 5622 | Rev 7433 | 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
 
6708 leency 13
#define MAX_PROCESS_COUNT 256
14
 
5622 leency 15
:int CheckProcessExists(dword proc_name) {
5548 leency 16
	int i;
17
	proc_info Process;
6708 leency 18
	for (i=0; i
5548 leency 19
	{
20
		GetProcessInfo(#Process, i);
5622 leency 21
		if (strcmpi(#Process.name, proc_name)==0) return 1;
22
	}
23
	return 0;
24
}
25
 
26
:void KillProcessByName(dword proc_name, byte multiple) {
27
	int i;
28
	proc_info Process;
6708 leency 29
	for (i=0; i
5622 leency 30
	{
31
		GetProcessInfo(#Process, i);
5548 leency 32
		if (strcmpi(#Process.name, proc_name)==0)
33
		{
34
			KillProcess(Process.ID);
35
			if (multiple==SINGLE) break;
36
		}
37
	}
5622 leency 38
}
39
 
40
:void RestartProcessByName(dword proc_name, byte multiple) {
41
	KillProcessByName(proc_name, multiple);
5548 leency 42
	RunProgram(proc_name, "");
5598 pavelyakov 43
}
44
 
5622 leency 45
 
5598 pavelyakov 46
#endif