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

Вниз

Module32First всегда возвращает первой информацию о...   Найти похожие ветки 

 
tmp   (2007-10-18 22:25) [0]

...главном .exe модуле? Ну, например:

procedure TForm1.Button1Click(Sender: TObject);
var
 hModuleSnap: THandle;
 me32: MODULEENTRY32;
begin
 me32.dwSize := SizeOf(MODULEENTRY32);
 hModuleSnap := CreateToolHelp32Snapshot(TH32CS_SNAPMODULE, GetCurrentProcessID);
 if hModuleSnap <> INVALID_HANDLE_VALUE then
 begin
   if Module32First(hModuleSnap, me32) then
     MessageBox(0, me32.szExePath, "My module path", 0);
   CloseHandle(hModuleSnap);
 end;
end;

Возвратит полный путь текущего .exe. Не может случиться так, что первым будет какая-нибудь .dll, загруженная
в адр. прост. тек. процесса?
В MSDN ничего про это не нашел.
P.S Заранее благодарен за ответ.


 
Skyle ©   (2007-10-19 07:10) [1]

CreateToolhelp32Snapshot
Takes a snapshot of the specified processes, as well as the heaps, modules, and threads used by these processes.


A snapshot that includes the module list for a specified process contains information about each module, executable file, or dynamic-link library (DLL), used by the specified process. You can retrieve information for the first module in the list by using the Module32First function.

Могу сделать вывод, что первым будет модуль - владелец первого потока процесса.



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

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

Наверх




Память: 0.46 MB
Время: 0.023 c
2-1192457940
foreverDelphi
2007-10-15 18:19
2007.11.11
как вывести текст


4-1177781077
delete_file
2007-04-28 21:24
2007.11.11
Удаление файла занятого другим процессом


15-1192033342
oxffff
2007-10-10 20:22
2007.11.11
Очередной баг. Утечка памяти


8-1168752381
9903
2007-01-14 08:26
2007.11.11
Компоненты для работы c wma mp3


9-1162945673
cxvxc
2006-11-08 03:27
2007.11.11
Спрайт OpenGL