Освобождение Dll
При старте оно загружает системные DLL файлы,а также
свои(которые определил кодер).Каким образом можно освободить
все загрузившиеся DLL из адресного пространства приложения,не
зная при этом хэндлы загрузившихся dll файлов?
Цитата:
Originally posted by Fevzi
Имеется приложение.
При старте оно загружает системные DLL файлы,а также
свои(которые определил кодер).Каким образом можно освободить
все загрузившиеся DLL из адресного пространства приложения,не
зная при этом хэндлы загрузившихся dll файлов?
Имеется приложение.
При старте оно загружает системные DLL файлы,а также
свои(которые определил кодер).Каким образом можно освободить
все загрузившиеся DLL из адресного пространства приложения,не
зная при этом хэндлы загрузившихся dll файлов?
Вот, что я нашел в Рихтере:
Чтобы определить, спроецирована ли DLL на адресное пространство процесса, поток может вызывать функцию GеtМоdu1еНапd1е:
Код:
HINSTANCE GetModuleHandle(PCTSTR pszModuleName);
Например, следующий код загружает MyLib.dll, только если она еще не спроецирована на адресное пространство процесса:
Код:
HINSTANCE hinstDll = GetModuleHandle("MyLib");
// подразумевается расширение .dll
if (hinstDll == NULL)
{
hinstDll = LoadLibrary("MyLib");
// подразумевается расширение .dll
}
// подразумевается расширение .dll
if (hinstDll == NULL)
{
hinstDll = LoadLibrary("MyLib");
// подразумевается расширение .dll
}
Если знаешь имена загружаемых dll-ек, то, думаю, должно сработать.
Я полагаю, что после данной операции, приложение уйдет в даун немедленно =)
Цитата:
Originally posted by honeybeer
Я полагаю, что после данной операции, приложение уйдет в даун немедленно =)
Я полагаю, что после данной операции, приложение уйдет в даун немедленно =)
поясни, что-ли...(?) что-то я глюков не виже (ну, если только не в чистую код сдерать)
Цитата:
Originally posted by Rubicon
поясни, что-ли...(?) что-то я глюков не виже (ну, если только не в чистую код сдерать)
поясни, что-ли...(?) что-то я глюков не виже (ну, если только не в чистую код сдерать)
Да я собсно не тебе. Но практически все программы (за редким исключением) используют системные библиотеки, выгрузка которых приведет к слабопредсказуемым последствиям.