Главная страница
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.018 c
15-1190524333
vrem
2007-09-23 09:12
2007.11.11
Подскажите программу сделать vob!


2-1192947528
Lebedev
2007-10-21 10:18
2007.11.11
Как из Label сделать таймер?


15-1191996238
shlst
2007-10-10 10:03
2007.11.11
Откуда Вы узнали о катастрофе? :)


2-1192895025
StanislavLZ
2007-10-20 19:43
2007.11.11
Два вопроса по TMemo


15-1190709358
vajo
2007-09-25 12:35
2007.11.11
В Германии официально запретили копировать диски