Главная страница
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.019 c
15-1191667488
Denis_
2007-10-06 14:44
2007.11.11
Можно ли узнать, чем откомпилина прграмма?


3-1183525134
dimaL
2007-07-04 08:58
2007.11.11
SQL запрос


15-1192012446
NiGGa
2007-10-10 14:34
2007.11.11
Delphi7 и .dfm


15-1191414639
Elen
2007-10-03 16:30
2007.11.11
Несовместимость нового железа и старого софта.


11-1176983639
restar82
2007-04-19 15:53
2007.11.11
ошибка при компиляции