[Вопрос] Небольшая проблема с трояном на Delphi через idTCP
Пользователи, просматривающие топик: none
|
Зашли как: Guest
|
Имя |
Сообщение |
<< Старые топики Новые топики >> |
|
|
[Вопрос] Небольшая проблема с трояном на Delphi через idTCP - 2011-07-05 10:20:50.663333
|
|
|
Vasek69
Сообщений: 154
Оценки: 0
Присоединился: 2011-02-12 05:33:39.426666
|
Ну, в общем очередной вопрос про троян на Delphi через компонент idTCP. Вот фрагмент кода из серверной части трояна: quote:
procedure TForm1.IdTCPServer1Execute(AThread: TIdPeerThread); begin if AThread.Connection.ReadLn=('hack') then ShowMessage('Ваш компьютер взломан'); // если придет "hack", то дать сообщение "ваш комп взломан" if AThread.Connection.ReadLn=('onm') then SendMessage(Handle, WM_SYSCOMMAND, SC_MONITORPOWER, -1); // если придет "onm", то врубить монитор if AThread.Connection.ReadLn=('offm') then SendMessage(Handle, WM_SYSCOMMAND, SC_MONITORPOWER, 2); если придет "offm", то вырубить монитор end; — Ну да-к вот. В клиентской части есть 5 кнопок: 1. Подключение 2. Отключение 3. Запросить команду "hack" 4. Запросить команду "onm" 5. Запросить команду "offm" - Всё работает. Не единой ошибки сокетов и т.д. Но вот допустим: Нужно запросить команду "hack". Я нажимаю на кнопку "Запросить команду "hack"" 1 раз и команда посылается на сервер прекрасно. Но если мне нужно отдать команду "offm", то на кнопку нужно нажимать 3 раза, чтобы сервер принял команду. Вопрос: Как сделать, чтобы любая команда посылалась на сервера при 1ом нажатии кнопки? Всем заранее спасибо!
|
|
|
RE: [Вопрос] Небольшая проблема с трояном на Delphi через idTCP - 2011-07-05 13:32:04.190000
|
|
|
Lauri
Сообщений: 1096
Оценки: 73
Присоединился: 2010-01-04 14:03:18.723333
|
0_о почему нужно нажимать 3 раза? Мож не на тот обработчик событий код поместил?) Или просто долго обрабатывается запрос (что очень мало вероятно)
|
|
|
RE: [Вопрос] Небольшая проблема с трояном на Delphi через idTCP - 2011-07-05 14:32:05.203333
|
|
|
Vasek69
Сообщений: 154
Оценки: 0
Присоединился: 2011-02-12 05:33:39.426666
|
обрабатывается он моментально! (просто 127.0.0.1 использую. т.е. на одной машине тестирую) а на какой ещё обработчик событий возможно поместить?
|
|
|
RE: [Вопрос] Небольшая проблема с трояном на Delphi через idTCP - 2011-07-05 14:46:10.673333
|
|
|
MotoKiller
Сообщений: 1732
Оценки: 56
Присоединился: 2008-03-02 20:08:53.810000
|
А теперь покажи код в самих кнопках.
|
|
|
RE: [Вопрос] Небольшая проблема с трояном на Delphi через idTCP - 2011-07-05 15:11:09.276666
|
|
|
Vasek69
Сообщений: 154
Оценки: 0
Присоединился: 2011-02-12 05:33:39.426666
|
"Подключение" quote:
procedure TForm1.Button1Click(Sender: TObject); begin idTCPClient1.Host:=Edit1.Text; idTCPClient1.Port:=8090; Memo1.Lines.Add('Подключение к серверу '+Edit1.Text+'…'); idTCPClient1.Connect(); end; "Отключение" quote:
procedure TForm1.Button2Click(Sender: TObject); begin Memo1.Lines.Add('Отключение от сервера…'); idTCPClient1.Disconnect; end; "Ваш компьютер взломан" quote:
procedure TForm1.Button3Click(Sender: TObject); begin idTCPClient1.WriteLn('hack'); Memo1.Lines.Add('Сообщение: "Ваш компьютер взломан" отправлено'); end; "Включить монитор" quote:
procedure TForm1.Button4Click(Sender: TObject); begin idTCPClient1.WriteLn('onm'); Memo1.Lines.Add('Монитор включен'); end; "Выключить монитор" quote:
procedure TForm1.Button5Click(Sender: TObject); begin idTCPClient1.WriteLn('offm'); Memo1.Lines.Add('Монитор выключен'); end; — Да, и ещё: Как послать сообщение из Edit2.Text из клиента на сервер?
|
|
|
RE: [Вопрос] Небольшая проблема с трояном на Delphi через idTCP - 2011-07-05 15:57:10.183333
|
|
|
Lauri
Сообщений: 1096
Оценки: 73
Присоединился: 2010-01-04 14:03:18.723333
|
quote:
ORIGINAL: Vasek69 — Да, и ещё: Как послать сообщение из Edit2.Text из клиента на сервер? idTCPClient1.WriteLn(edit2.text); не?
|
|
|
RE: [Вопрос] Небольшая проблема с трояном на Delphi через idTCP - 2011-07-05 17:18:45.133333
|
|
|
Vasek69
Сообщений: 154
Оценки: 0
Присоединился: 2011-02-12 05:33:39.426666
|
quote:
idTCPClient1.WriteLn(edit2.text); не? не, не то. я знаю что в клиентской код должен быть таким: idTCPClient1.WriteLn('msg'+edit2.text); а в серверной знаю только принцип работы: если придет команда 'msg'+edit2.text, то убрать первые 3 символа
|
|
|
RE: [Вопрос] Небольшая проблема с трояном на Delphi через idTCP - 2011-07-05 21:03:23.570000
|
|
|
MotoKiller
Сообщений: 1732
Оценки: 56
Присоединился: 2008-03-02 20:08:53.810000
|
Требует 3 нажатия на кнопку? Так напиши в этой кнопке код в цикле сколько надо раз.
|
|
|
RE: [Вопрос] Небольшая проблема с трояном на Delphi через idTCP - 2011-07-06 09:59:20.216666
|
|
|
Vasek69
Сообщений: 154
Оценки: 0
Присоединился: 2011-02-12 05:33:39.426666
|
quote:
Требует 3 нажатия на кнопку? Так напиши в этой кнопке код в цикле сколько надо раз. у меня была такая мысль, но я думал есть другой обход. но в таком случае напиши этот код пожалуйста [sm=ah.gif]
|
|
|
RE: [Вопрос] Небольшая проблема с трояном на Delphi через idTCP - 2011-07-06 10:12:25.823333
|
|
|
ZiMMy
Сообщений: 439
Оценки: 0
Присоединился: 2010-06-19 17:04:39.420000
|
quote:
ORIGINAL: Vasek69 у меня была такая мысль, но я думал есть другой обход. но в таком случае напиши этот код пожалуйста [sm=ah.gif] var i:Integer; begin for i:=1 to 3 do begin // код сюда end;
|
|
|
RE: [Вопрос] Небольшая проблема с трояном на Delphi через idTCP - 2011-07-06 11:08:01.883333
|
|
|
Vasek69
Сообщений: 154
Оценки: 0
Присоединился: 2011-02-12 05:33:39.426666
|
quote:
var i:Integer; begin for i:=1 to 3 do begin // код сюда end; всё работает, но у тебя 2 begin правильнее будет так: var i:Integer; begin for i:=1 to 3 do // код сюда end;
|
|
|
RE: [Вопрос] Небольшая проблема с трояном на Delphi через idTCP - 2011-07-06 11:09:27.063333
|
|
|
Vasek69
Сообщений: 154
Оценки: 0
Присоединился: 2011-02-12 05:33:39.426666
|
и ещё скажите, как посылать сообщения с клиентской части из edit2.text на сервер
|
|
|
RE: [Вопрос] Небольшая проблема с трояном на Delphi через idTCP - 2011-07-06 11:12:21.786666
|
|
|
Alianna
Сообщений: 1922
Оценки: 356
Присоединился: 2010-03-02 11:27:12.343333
|
quote:
правильнее будет так: var i:Integer; begin for i:=1 to 3 do // код сюда end; Если код цикла состоит не из одной строки, то его надо заключить в begin .. end.
|
|
|
RE: [Вопрос] Небольшая проблема с трояном на Delphi через idTCP - 2011-07-06 11:29:51.766666
|
|
|
MotoKiller
Сообщений: 1732
Оценки: 56
Присоединился: 2008-03-02 20:08:53.810000
|
Так более правильней:
procedure TForm1.Button5Click(Sender: TObject);
Var
i: Integer;
begin
for i:=1 to 3 do
begin
idTCPClient1.WriteLn('offm');
Memo1.Lines.Add('Монитор выключен');
end;
end;
|
|
|
RE: [Вопрос] Небольшая проблема с трояном на Delphi через idTCP - 2011-07-06 11:48:36.156666
|
|
|
Vasek69
Сообщений: 154
Оценки: 0
Присоединился: 2011-02-12 05:33:39.426666
|
понятно. переделаю. но никто не знает всё таки как посылать сообщения с клиентской части из edit2.text на сервер?
|
|
|
RE: [Вопрос] Небольшая проблема с трояном на Delphi через idTCP - 2011-07-06 13:19:05.883333
|
|
|
Lauri
Сообщений: 1096
Оценки: 73
Присоединился: 2010-01-04 14:03:18.723333
|
quote:
ORIGINAL: Vasek69 понятно. переделаю. но никто не знает всё таки как посылать сообщения с клиентской части из edit2.text на сервер? омг idTCPClient1.WriteLn('offm'); - тут ты передаёшь сообщение "offm", верно? Если вместо 'offm' подставить edit2.text то будет передаватся текст из едит2. Я же писал выше.
|
|
|
RE: [Вопрос] Небольшая проблема с трояном на Delphi через idTCP - 2011-07-06 15:20:28.023333
|
|
|
MotoKiller
Сообщений: 1732
Оценки: 56
Присоединился: 2008-03-02 20:08:53.810000
|
quote:
ORIGINAL: Vasek69 понятно. переделаю. но никто не знает всё таки как посылать сообщения с клиентской части из edit2.text на сервер?
procedure TForm1.Button5Click(Sender: TObject);
Var
i: Integer;
begin
for i:=1 to 3 do
begin
idTCPClient1.WriteLn(Edit2.Text);
Memo1.Lines.Add('Монитор выключен');
end;
end;
|
|
|
RE: [Вопрос] Небольшая проблема с трояном на Delphi через idTCP - 2011-07-06 19:06:37.306666
|
|
|
Vasek69
Сообщений: 154
Оценки: 0
Присоединился: 2011-02-12 05:33:39.426666
|
ну а что же тогда писать в серверной части? if AThread.Connection.ReadLn=(Edit2.Text) then ShowMessage(Edit2.Text); ?
|
|
|
RE: [Вопрос] Небольшая проблема с трояном на Delphi через idTCP - 2011-07-07 10:11:25.683333
|
|
|
MotoKiller
Сообщений: 1732
Оценки: 56
Присоединился: 2008-03-02 20:08:53.810000
|
quote:
ORIGINAL: Vasek69 ну а что же тогда писать в серверной части? if AThread.Connection.ReadLn=(Edit2.Text) then ShowMessage(Edit2.Text); ? Передать отдельным WriteLn, пометив что к чему относится. Приписав перед Edit2.Text идентификатор.
|
|
|
RE: [Вопрос] Небольшая проблема с трояном на Delphi через idTCP - 2011-07-07 11:11:23.750000
|
|
|
Vasek69
Сообщений: 154
Оценки: 0
Присоединился: 2011-02-12 05:33:39.426666
|
эээ… чё?
|
|
|
|
|