
10.12.2009, 00:43
|
|
Новичок
Регистрация: 26.11.2009
Сообщений: 20
С нами:
8662587
Репутация:
60
|
|
Сообщение от transserg
Pr0mo не мне список драйверов ненужен мне надо именно списко загруженных длл в системе =)
Извиняюсь, не заметил сначала. Тогда есть вариант обратиться к каждому объекту, вызывающющему dll через его PID и на основе этого построить список загруженных библиотек в системе:
Код:
procedure GetAllDLL(var DLLList:TStringList);
var
i:integer;
tList:TStringList;
ArrInfo:TLpModuleInfoArray;
begin
tList:=TStringList.Create;
ArrInfo:=GetAllProcessesInfo(false);
for i:=0 to Length(ArrInfo)-1 do
begin
GetLoadedDLLList(tList,ArrInfo[i].ModulePID,[moIncludeHandle]);
DLLList.AddStrings(tList);
end;
tList.Free;
end;
// пример использования:
procedure TForm1.Button1Click(Sender: TObject);
var
ntDLLList:TStringList;
begin
ntDLLList:=TStringList.Create;
GetAllDLL(ntDLLList);
ListBox1.Items:=ntDLLList;
ntDLLList.Free;
end;
Однако для компиляции тебе понадобиться отдельный модуль : ProcUtilz (скачать)
Последний раз редактировалось Pr0mo; 10.12.2009 в 00:45..
|
|
|