Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2007.03.04;
Скачать: CL | DM;

Вниз

Диспетчер задач, список процессов   Найти похожие ветки 

 
wander   (2007-02-14 12:02) [0]

Уважаемые!
Суть проблемы такова:
Выполняется консольное приложение в скрытом режиме - весь вывод этой консоли идет мне на форму в МЕМО.
каким образом по нажатию кнопочки можно завершить приложение, если я знаю лишь название проги в списке процессов диспетчера.????
Кто может подсказать работающий код???


 
Elen ©   (2007-02-14 12:08) [1]


> wander   (14.02.07 12:02)

Имхо так через CreateSnapshot получаеш PID далее OpenProcess по этому PID и TerminateProcess его.


 
wander   (2007-02-14 12:10) [2]

Позвольте конкретный пример , если не сложно :-)


 
Elen ©   (2007-02-14 12:16) [3]


> Позвольте конкретный пример , если не сложно :-)

Не сложно : (Это просто пример, не пинать)

unit Unit1;

interface

uses        tlhelp32,     psapi,   crtfox,
 Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
 Dialogs, StdCtrls;

type
 TForm1 = class(TForm)
   ListBox1: TListBox;
   ListBox2: TListBox;
   ListBox3: TListBox;
   procedure FormCreate(Sender: TObject);
   procedure ListBox1Click(Sender: TObject);
 private
   { Private declarations }
 public
   { Public declarations }
 end;

var
 Form1: TForm1;

implementation

{$R *.dfm}
procedure TForm1.FormCreate(Sender: TObject);
var p:PROCESSENTRY32;ct:cardinal;th:Cardinal; mp:array[0..255] of char;
mm:pchar;ts:TSearchRec; sst:STARTUPINFO;
begin
ct:=CreateToolhelp32Snapshot(TH32CS_SNAPALL,0);
Process32First(ct,p);
 // RunningProcessesList(ListBox1.Items);

// ListBox1.Items.Append(string(p.szExeFile));
while Process32Next(ct,p) do begin
 begin
  th:=OpenProcess(PROCESS_ALL_ACCESS,false,p.th32ProcessID);
  ListBox1.Items.Append(string(p.szExeFile));
  ListBox2.Items.Append(inttostr(p.th32ProcessID));
  ListBox3.Items.Append(inttostr(th));
 end;
end;  {}
end;

procedure TForm1.ListBox1Click(Sender: TObject);
begin
TerminateProcess(strtoint(ListBox3.Items[ListBox1.ItemIndex]),0);
end;

end.


 
wander   (2007-02-14 12:36) [4]

Клас !!!
За столько времени единственный работающий пример. Благодарю.
Токо не пойму - зачем остальные Листбоксы? если мне лишь процес конкретный нужен


 
Elen ©   (2007-02-14 12:44) [5]


> Токо не пойму - зачем остальные Листбоксы? если мне лишь
> процес конкретный нужен

Для наглядности. Есче расс повторяю - данный пример является ПРИМЕРОМ и требует пинков и переделок. Смысл в связке CreateToolhelp32Snapshot...while Process32Next...OpenProcess...TerminateProcess.
Яснышко?



Страницы: 1 вся ветка

Текущий архив: 2007.03.04;
Скачать: CL | DM;

Наверх




Память: 0.48 MB
Время: 0.074 c
2-1171099188
Riply
2007-02-10 12:19
2007.03.04
Извините, немного оффтопа


15-1171050265
@!!ex
2007-02-09 22:44
2007.03.04
Модем отказываеться подключать к инету.


3-1165645262
Ulugbek
2006-12-09 09:21
2007.03.04
Mysql 5 Ошибка в запросе unkown column g.kod_ms in on clause


2-1171358625
misere
2007-02-13 12:23
2007.03.04
Конвертация массива из byte-ов в integer


2-1171529046
wander
2007-02-15 11:44
2007.03.04
атрибутика файлов