Гость
Целевая тема:
Создать новую тему:
Автор:
Форумы / Visual Basic [игнор отключен] [закрыт для гостей] / Выгрузка Dll / 4 сообщений из 4, страница 1 из 1
10.04.2006, 12:01
    #33655414
kinolog
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Выгрузка Dll
Когда я вызываю диалог открытия файла из dll (comdlg.dll) забивается 5мб оперативки. Как ее выгрузить. Зарание благодарен.
...
Рейтинг: 0 / 0
10.04.2006, 12:57
    #33655647
Ashton
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Выгрузка Dll
Код: plaintext
1.
Declare Function FreeLibrary Lib "kernel32" ( _
  ByVal hLibModule As Long) As Long
...
Рейтинг: 0 / 0
16.04.2006, 19:44
    #33669700
kinolog
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Выгрузка Dll
У меня есть хэндл диалога:
Код: plaintext
lngRet = FreeLibrary(UserControl.ContainerHwnd)
Но память от этого не убавляется((((
...
Рейтинг: 0 / 0
17.04.2006, 10:15
    #33670281
Melkiades
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Выгрузка Dll
Сам долго матерился по этому поводу. Как только в приложении появляется коннекшн, оно отжирает 6 метров ОЗУ и не освобождает его).
А если посмотреть список загруженных приложением библиотек, то вообще глаза на лоб лезут - я такие сроду не использовал, и даже по смыслу они здесь присутствовать не должны были.
И вот на днях нашел решение (под NT). Думаю, пригодится всем.
Благодаря нижеприведенному коду приложение кушает в 10-15 раз меньше памяти (в режиме простоя).

Код: plaintext
1.
2.
3.
4.
5.
6.
7.
Private Declare Sub CoFreeUnusedLibraries Lib "ole32" ()
Private Declare Function SetProcessWorkingSetSize Lib "Kernel32.dll" (ByVal hProcess As Long, ByVal dwMinimumWorkingSetSize As Long, ByVal dwMaximumWorkingSetSize As Long) As Boolean
Private Declare Function GetCurrentProcess Lib "kernel32" () As Long

Call CoFreeUnusedLibraries
Call SetProcessWorkingSetSize(GetCurrentProcess(), - 1 &, - 1 &)

...
Рейтинг: 0 / 0
Форумы / Visual Basic [игнор отключен] [закрыт для гостей] / Выгрузка Dll / 4 сообщений из 4, страница 1 из 1
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]