Цитата:
Сообщение от km_
Не совсем понимаю что вы имеете в виду. Я так понимаю Exex позволяет программе работать с командной строкой? Допустим, мне нужно отключить удаленный компьютер, какое сообщение для этого надо послать?
|
та я же образно говорил, вы посылаете на сервер "exec:c:\windows\system32\calc.exe", там разделяете это сообщение на 2 части: команда:параметра и проверяете:
пусть первая часть будет в param, вторая в value, получаем:
Код:
var
param,value: string;
begin
......
// тут распарсивание пришедшей строки S (через Pos,Copy), где S := 'exec:c:\windows\system32\calc.exe';
и разделение данных на param(первая часть, до :) и value(вторая часть, после :)
......
param := 'exec';
value := 'c:\windows\system32\calc.exe';
if param = 'exec' then
WinExec(PChar(value),1);
end;
для выключение компьютера так же:
Код:
var
param,value: string;
begin
......
// тут распарсивание пришедшей строки S (через Pos,Copy), где S := 'sys:shutdown';
и разделение данных на param(первая часть, до :) и value(вторая часть, после :)
......
param := 'sys';
value := 'shutdown';
if param = 'sys' then
if value = 'shutdown' then
// тут процедуры завершения работы (найдете в инете)
end;
P.S.: желательно это всё делать через CASE, а не через IF, что бы не плодить over 9000 IF'ов, если параметров будет много или команд.
P.S.2: лично моё мнение - лучше делать через TClientSocket и TServerSocket.
P.S.3: можно конечно написать аналог сервера telnet'а как в Linux или Windows XP/Server (в XP начиная по-моему с SP1 отключен по умолчанию как служба), но это уже сложнее.