выгрузить dll из памяти #124754


#0 by net
в этом и весь вопрос, ось windows xp, была загружена динамически, но приложение завершило работу некорректно, поэтому не выгрузилась как планировалось
#1 by romix
DLL принадлежит адресному пространству процесса, и выгружается вместе с ним.
#2 by romix
Если не выгружается из памяти внешняя компонента 1С, то в коде допущен косяк наподобие: 1.2.4. Для использования интерфейса AppDispatсh необходимо у него вызвать метод AddRef, который увеличивает счетчик ссылок на объект интерфейса. В противном случае происходит зависание 1с при закрытии программы.  (с) Соарон.
#3 by net
да при чем здесь 1с? длл моя собственная, работает с ОС а не с 1с ну и как ее выгрузить если адресное пространство уже утеряно, то есть я уже не могу определить его?
#4 by 427
а ты не выгружай ДЛЛ из памяти, а пересылай ее на диск.. вот система в памяти ее автоматичесик и уничтожит... P.S. только диск чисти регулярно....
#5 by net
е мое, читать умеете? она уже в памяти, как я ее могу переслать куда-то? и вообще если б я могла ее переслать, то и выгрузить бы смогла Проблема такая: при выполнении длл генерирует ошибку, аварийно закрывается приложение (которое ее использует, дельфийское, если что), в результате длл остается висеть в памяти. И выгрузить тогда я ее могу только перезагрузкой. Вопросы в связи с этим: можно выгрузить ее из ком строки или как-нибудь так?
#6 by smaharbA
Какое такое адресное пространство? taskkill /FI "MODULES eq dll.dll"
#7 by net
адресное пространство? :) это ячейка памяти, в которой размещается динамическая библиотка неправильный параметр /F1
#8 by net
упс, кажется я тоже читать разучилась, спасибо
#9 by net
smaharbA, я вас обожаю, 4 часа мучилась с этой проблемой
#10 by zenik
Может попробовать какой нить Clean RAM. В нете поищи проги, которые освобождают память выгружая недееспособные приложения и длл. Вот первое что попалось: /
Тэги:
Ответить:
Комментарии доступны только авторизированным пользователям

В этой группе 1С