Имя: Пароль:
1C
1С v8
При попытке удалить dll 5(0x00000005): Отказано в доступе.
,
0 fantomrik
 
17.02.17
11:43
Камрады, добрый день!

Создаю временный каталог, в него сохраняю из макета свою dll, подключаю как внешнюю компоненту.
Создаю com объект этой dll, отрабатывает функция, которая мне нужна в ней и пытаюсь удалить данную dll (и весь временный каталог).
вываливаюсь с ошибкой...
Пробовал Com объекту присвоить Неопределенно перед удалением, не помогло...
1 DrZombi
 
гуру
17.02.17
11:46
(0) Обычно библиотеки помещают во временный каталог и судя по тому, как вы не смогли её выгрузить из памяти. Она там остается на вечно :)
2 fantomrik
 
17.02.17
11:50
(1) при закрытии 1С удалить файл библиотеки из временного каталога получается. А как выгрузить из памяти dll ?
3 Serginio1
 
17.02.17
11:52
COM DLL не так просто выгрузить. А вот Native она автоматически выгружается при обнулении ссылок
4 Serginio1
 
17.02.17
11:53
3 + если конечно не заблокировать выгрузку программно
5 fantomrik
 
17.02.17
11:59
(3) Вы страшные вещи говорите, как и в моей предыдущей теме, ни чего не понимаю)
Мне ни чего не сделать - dll должна быть по другому написана только, тогда смогу чистить временные файлы за собой?
6 Serginio1
 
17.02.17
12:24
Ну раз ты её не регистрируешь то она нативная. Скорее всего либо ссылки не все обнуляются у тебя, либо внутри dll заблокирована от выгрузки
7 1dvd
 
17.02.17
12:28
Не красиво это. DLL-ка должна оставаться в системе. А каждый раз добавлять/удалять моветон.
Вирусню что-ли пишешь?
8 fantomrik
 
17.02.17
12:41
(6) Я ее регистрировал в винде первый раз, почему не регистрирую?
9 DrZombi
 
гуру
17.02.17
12:59
(5) Не получится выгрузить, сделай глобальную переменную и пользуй её :)
10 fantomrik
 
17.02.17
13:11
(9) это обработка для типовых конфигураций
11 Serginio1
 
17.02.17
13:13
(8) А путь какой указывал?
Зачем тогда каждый раз удалять?