Вниз
Скачать: CL | DM;

Имя модуля, загрузившего DLL   Найти похожие ветки 

← →
Molchanov   (2005-01-06 12:47) [0]

Может ли DLL, загруженная LoadLibrary, узнать имя либо hinstance модуля (exe либо dll), ее загрузившего, и, если да, то как?


← →
Игорь Шевченко ©   (2005-01-06 14:10) [1]

GetModuleFileName(0, ...)


← →
Molchanov   (2005-01-06 14:53) [2]

> GetModuleFileName(0, ...)
Этим способом можно узнать имя exe-файла.
Если моя DLL была загружена другой DLL, можно ли узнать имя загрузившей?


← →
Игорь Шевченко ©   (2005-01-06 15:28) [3]

Molchanov   (06.01.05 14:53) [2]


> Если моя DLL была загружена другой DLL, можно ли узнать
> имя загрузившей?


Просто - нельзя. А смысл такого узнавания ?


← →
Molchanov   (2005-01-06 15:49) [4]

Особой необходимости нет.
Есть измерительное оборудование, которое взаимодействует с программной оболочкой (EXE). Управляющие оборудованием программы могут быть оформлены и как EXE, и как DLL. Связь с оболочкой в любом случае осуществляется через специальную DLL. При загрузке программы происходит handshake в процессе которого DLL связи передает оболочке среди прочей информации имя файла управляющей программы. Если программа - DLL, то оно и так известно, просто хотелось использовать единый механизм.


← →
Игорь Шевченко ©   (2005-01-06 16:05) [5]

Molchanov   (06.01.05 15:49) [4]

Я бы передавал имя EXEшника.


← →
Molchanov   (2005-01-06 16:38) [6]

Игорь Шевченко (06.01.05 16:05) [5]

EXEшник для программы-DLL - оболочка


← →
Fin ©   (2005-01-06 16:55) [7]

Я думаю что Игорь Шевченко [4] имел ввиду передовать имя как параметр, и не важно что вызов произошол из другой DLL, ведь в этой первой DLL узнать имя exe-ка не проблемма, тем более из самого exe-ка,и короче последовательно передовать имя EXE-ка от одной DLL к другой в качестве параметра.


← →
Fin ©   (2005-01-06 16:57) [8]

Опечатка. Вместо (Я думаю что Игорь Шевченко [4] ), следует читать (Я думаю что Игорь Шевченко [5] )



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

Скачать: CL | DM;



Память: 0.46 MB
Время: 0.024 c
1-1107928317
Gloomer
2005-02-09 08:51
2005.02.20
Ошибка при использовании DLL


14-1107272287
PIF
2005-02-01 18:38
2005.02.20
помогите разобраться с NetBios


3-1106587137
Alexander Panov
2005-01-24 20:18
2005.02.20
BLOBField - FireBird Embedded 1.5


3-1106379757
makey22
2005-01-22 10:42
2005.02.20
Слишком много открытых файлов


6-1101214635
R.O.O.T
2004-11-23 15:57
2005.02.20
Ресурсы типа С$,D$,ADMIN$




   Наверх