Главная страница
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.016 c
2-1192273873
lod
2007-10-13 15:11
2007.11.11
Вывод на печать ?


2-1192439470
Lamer666
2007-10-15 13:11
2007.11.11
Как обработать событие ONCLICK программно созданной кнопки?


2-1192790942
Shakesbeer
2007-10-19 14:49
2007.11.11
Работа с com-портом.


4-1178388982
buben
2007-05-05 22:16
2007.11.11
Application.Handle


2-1192771946
dumka
2007-10-19 09:32
2007.11.11
Подстановочное поле.