Subversion Repositories Kolibri OS

Rev

Rev 1665 | Rev 1673 | Go to most recent revision | Only display areas with differences | Regard whitespace | Details | Blame | Last modification | View Log | RSS feed

Rev 1665 Rev 1668
1
/// ===========================================================
1
/// ===========================================================
2
 
2
 
3
int executable_run(char cmd[], char args[])
3
int executable_run(char cmd[], char args[])
4
{
4
{
5
 
5
 
6
char		exec[256];
6
char		exec[256];
7
char		error_starting[]={"  No such command '%s'.\n\r"};
7
#if LANG_ENG
-
 
8
	char		error_starting[]={"  No such command '%s'.\n\r"};
8
int		result;
9
#elif LANG_RUS
-
 
10
	char		error_starting[]={"  ¥ â ª®© ª®¬ ­¤ë - '%s'.\n\r"};
-
 
11
#endif
-
 
12
int		result;
9
 
13
 
10
if ( '/' == cmd[0]) // åñëè ïóòü àáñîëáòíûé
14
if ( '/' == cmd[0]) // ¥á«¨ ¯ãâì  ¡á®«¡â­ë©
11
	{
15
	{
12
	strcpy(exec, cmd);
16
	strcpy(exec, cmd);
13
 
17
 
14
	if (  !file_check(exec) ) // ïðîâåðÿåì ñóùåñòâîâàíèå ôàéëà
18
	if (  !file_check(exec) ) // ¯à®¢¥à塞 áãé¥á⢮¢ ­¨¥ ä ©« 
15
		{
19
		{
16
		printf(error_starting, cmd);
20
		printf(error_starting, cmd);
17
		return FALSE;
21
		return FALSE;
18
		}
22
		}
19
	}
23
	}
20
 
24
 
21
else 
25
else 
22
	{
26
	{
23
	strcpy(exec, cur_dir); // ïðîâåðÿåì ôàéë â òåêóùåì êàòàëîãå
27
	strcpy(exec, cur_dir); // ¯à®¢¥à塞 ä ©« ¢ ⥪ã饬 ª â «®£¥
24
	strcat(exec, cmd);
28
	strcat(exec, cmd);
25
	
29
	
26
	if ( !file_check(exec) ) // ïðîâåðÿåì ñóùåñòâîâàíèå ôàéëà
30
	if ( !file_check(exec) ) // ¯à®¢¥à塞 áãé¥á⢮¢ ­¨¥ ä ©« 
27
		{
31
		{
28
		strcpy(exec, "/rd/1/"); // ïðîâåðÿåì ôàéë íà âèðòóàëüíîì äèñêå
32
		strcpy(exec, "/rd/1/"); // ¯à®¢¥à塞 ä ©« ­  ¢¨àâã «ì­®¬ ¤¨áª¥
29
		strcat(exec, cmd);
33
		strcat(exec, cmd);
30
			if ( !file_check(exec) ) // ïðîâåðÿåì ñóùåñòâîâàíèå ôàéëà
34
			if ( !file_check(exec) ) // ¯à®¢¥à塞 áãé¥á⢮¢ ­¨¥ ä ©« 
31
				{
35
				{
32
				printf(error_starting, cmd);
36
				printf(error_starting, cmd);
33
				return FALSE;
37
				return FALSE;
34
				}
38
				}
35
		}
39
		}
36
	}
40
	}
37
 
41
 
38
 
42
 
39
if ( script_check(exec) )
43
if ( script_check(exec) )
40
	{
44
	{
41
	return script_run(exec, args);
45
	return script_run(exec, args);
42
	}
46
	}
43
 
47
 
44
/* çàïóñê ïðîãðàììû */
48
/* § ¯ã᪠¯à®£à ¬¬ë */
45
result = program_run(exec, args);
49
result = program_run(exec, args);
46
if (result > 0)
50
if (result > 0)
47
	{
51
	{
48
	printf ("  '%s' started. PID = %d\n\r", cmd, result);
52
	#if LANG_ENG
-
 
53
		printf ("  '%s' started. PID = %d\n\r", cmd, result);
49
	return TRUE;
54
	#elif LANG_RUS
-
 
55
		printf ("  '%s' § ¯ã饭. PID = %d\n\r", cmd, result);
-
 
56
	#endif
-
 
57
	return TRUE;
50
	}
58
	}
51
else	
59
else	
52
	{
60
	{
53
	printf(error_starting, cmd);
61
	printf(error_starting, cmd);
54
	return FALSE;
62
	return FALSE;
55
	}
63
	}
56
 
64
 
57
}
65
}
58
 
66
 
59
/// ===========================================================
67
/// ===========================================================