powered by simpleCommunicator - 2.0.61     © 2026 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / Visual Basic [игнор отключен] [закрыт для гостей] / Выгрузка Dll
4 сообщений из 4, страница 1 из 1
Выгрузка Dll
    #33655414
kinolog
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Когда я вызываю диалог открытия файла из dll (comdlg.dll) забивается 5мб оперативки. Как ее выгрузить. Зарание благодарен.
...
Рейтинг: 0 / 0
Выгрузка Dll
    #33655647
Ashton
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Код: plaintext
1.
Declare Function FreeLibrary Lib "kernel32" ( _
  ByVal hLibModule As Long) As Long
...
Рейтинг: 0 / 0
Выгрузка Dll
    #33669700
kinolog
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
У меня есть хэндл диалога:
Код: plaintext
lngRet = FreeLibrary(UserControl.ContainerHwnd)
Но память от этого не убавляется((((
...
Рейтинг: 0 / 0
Выгрузка Dll
    #33670281
Melkiades
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Сам долго матерился по этому поводу. Как только в приложении появляется коннекшн, оно отжирает 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
4 сообщений из 4, страница 1 из 1
Форумы / Visual Basic [игнор отключен] [закрыт для гостей] / Выгрузка Dll
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


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