Показать сообщение отдельно
Старый 28.04.2003, 01:56     # 4
Madness
KpTeaM
 
Регистрация: 31.10.2002
Адрес: Russia
Пол: Male
Сообщения: 3 261

Madness СуперБогMadness СуперБогMadness СуперБог
Madness СуперБогMadness СуперБогMadness СуперБогMadness СуперБогMadness СуперБогMadness СуперБогMadness СуперБогMadness СуперБогMadness СуперБогMadness СуперБогMadness СуперБогMadness СуперБогMadness СуперБогMadness СуперБогMadness СуперБог
Conn3xt
Код:
procedure Module32List(S:TStrings);
var Module32: TprocessEntry32;
    SS: THandle;
    Next: Bool;
begin
  //инициировать структуру TModuleEntry32
  Module32.dwSize:=SizeOf(TprocessEntry32);
  //сделать "снимок" состояния системы
  SS:=CreateToolHelp32Snapshot(TH32CS_SNAPprocess,0);
  //найти первый модуль
  if process32First(SS,Module32) then
    begin
    //добавить строку в список
    S.Add(Module32.szExeFile);
    Repeat
      //найти все последующие модули
      Next:=process32Next(SS,Module32);
      //добавить строку в список
      if Next Then S.Add(Module32.szExeFile);
    until Not Next;
    end;
  CloseHandle(SS);
end;

procedure TForm1.FormCreate(Sender: TObject);
begin
Module32List(ListBox1.Items);
end;

procedure TForm1.Button1Click(Sender: TObject);
begin
ListBox1.Items.Clear;
Module32List(ListBox1.Items);
end;
Это на делфи, на vb так же. Этот кусок показывает список процессов. Почти то же самое, но другой функцией на асме из моей проги hider:
Код:
FillListBox	PROC	NEAR
	call	SendMessageA,dword ptr [LBhandle],LB_RESETCONTENT,0,0
	call EnumWindows,offset EnumWindowsProc,dword ptr [LBhandle]
	call	SendMessageA,dword ptr [LBhandle],LB_FINDSTRING,0,offset hidertitle
	call	SendMessageA,dword ptr [LBhandle],LB_DELETESTRING,eax,0

	RET
FillListBox	ENDP

EnumWindowsProc	PROC	STRCALL, ha:hwnd, LP:lParam
	call	GetWindowTextA,dword ptr [ebp+08h], offset wndtitle,255
	test	eax,eax
	je	ewp1
	mov	eax,[ischecked]
	test	eax,eax
	jne	ewp3
	call IsWindowVisible,dword ptr [ebp+08h]
	test	eax,eax
	je	ewp2
ewp3:	call	SendMessageA,dword ptr [LBhandle],LB_ADDSTRING,0,offset wndtitle
ewp2:	xor	eax,eax		;---mov eax,1
ewp1:	inc	eax			;_/
	RET
EnumWindowsProc		ENDP
Остальное на msdn.com (что то типа Memory Management Functions)
__________________
Над струнами вен моих
Лезвия осени,
Их сталь леденящая
В просинь рук просится...
©Темнозорь
Madness вне форума